Git使用之submodule】的更多相关文章

入职第一周,就因为clone项目而产生了很大的障碍,花了差不多三四个小时才定位问题并解决,记录一下. 一.问题 当我们在使用Git克隆项目的时候,无法克隆下来一个文件夹.记该文件夹为A,A在远程仓库是有的,也能点开看到,而克隆下来后,本地A点开后是空的,什么也没有. A的特征为,其后面跟着一个 @xxxxxxx,xxxxxxx为一串数字. 二.问题演示 1.在Git Bash中克隆远程仓库,指令如下: git clone https://github.com/Aq-audio/work-reco…
在掌握了基础的 Git 使用 之后,可能会遇到一些常见的问题.以下是猫哥筛选总结的部分常见问题,分享给各位朋友,掌握了这些问题的中的要点之后,git 进阶也就完成了,它包含以下部分: 如何修改 origin 仓库信息 如何配置 git ssh keys 如何撤销修改 遇到冲突了怎么解决 git stash / alias / submodule 的使用问题等 问:如何修改 origin 仓库信息? 1.添加 origin 仓库信息 git remote add origin <git仓库地址>…
http://blog.jqian.net/post/git-submodule.html 使用git管理的项目开发中,如果碰到公共库和基础工具,可以用submodule来管理. 常用操作 例如, 公共库是 lib.git,地址:git@github.com:lib.git: 需要使用公共库的项目是 proj.git,地址:git@github.com:proj.git. 添加 为项目proj.git添加submodule,先进到相应的目录下,然后执行如下命令: git submodule ad…
基于组件的项目很多,但是如果直接用包的方式直接引用到项目中,如果出现问题很难进行调试的操作,也很难进行组件的优化和管理,所以写了一篇文章来介绍下git submodule的用法,用submodule可以一定程度上解决组件难以管理的问题.接下来我用两个测试项目来演示下submodule的基本用法. 新建Git仓储库 在本地clone我们的父项目,并查看当前repository状态 添加子模块 命令:git submodule add XXXXX 查看当前repository状态,除了刚刚添加的 公…
使用场景 当项目越来越庞大之后,不可避免的要拆分成多个子模块,我们希望各个子模块有独立的版本管理,并且由专门的人去维护,这时候我们就要用到git的submodule功能. 常用命令 git clone <repository> --recursive 递归的方式克隆整个项目 git submodule add <repository> <path> 添加子模块 git submodule init 初始化子模块 git submodule update 更新子模块 gi…
子模块 有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在一个项目中使用另一个. 我们举一个例子. 假设你正在开发一个网站然后创建了 Atom 订阅. 你决定使用一个库,而不是写自己的 Atom 生成代码. 你可能不得不通过 CPAN 安装或 Ruby gem 来包含共享库中的代码,或者将源代码直接拷贝到自己的项目中. 如果将这个库包含进来,那么无论用何种方式都很难定…
本文转自:https://blog.csdn.net/qq_37788558/article/details/78668345 实例代码: 父项目:https://github.com/jjz/pod-project 子项目:https://github.com/jjz/pod-library 使用场景 基于公司的多项目,我们提取了一个公共的类库提供给多个项目使用,但是这个library怎么和git在一起方便的管理呢? 需要解决以下的几个问题: 如何在git项目中导入library库? libr…
使用场景 当项目越来越庞大之后,不可避免的要拆分成多个子模块,我们希望各个子模块有独立的版本管理,并且由专门的人去维护,这时候我们就要用到git的submodule功能. 常用命令 git clone <repository> --recursive 递归的方式克隆整个项目 git submodule add <repository> <path> 添加子模块 git submodule init 初始化子模块 git submodule update 更新子模块 gi…
转自:https://segmentfault.com/a/1190000003076028 使用场景 基于公司的项目会越来越多,常常需要提取一个公共的类库提供给多个项目使用,但是这个library怎么和git在一起方便管理呢?我们需要解决下面几个问题: 如何在git项目中导入library库? library库在其他的项目中被修改了可以更新到远程的代码库中? 其他项目如何获取到library库最新的提交? 如何在clone的时候能够自动导入library库? 解决以上问题,可以考虑使用git的…
Git Submodule功能刚刚开始学习可能觉得有点怪异,所以本教程把每一步的操作的命令和结果都用代码的形式展现给大家,以便更好的理解. 1.对于公共资源各种程序员的处理方式 每个公司的系统都会有一套统一的系统风格,或者针对某一个大客户的多个系统风格保持统一,而且如果风格改动后要同步到多个系统中:这样的需求几乎每个开发人员都遇到,下面看看各个层次的程序员怎么处理: 假如对于系统的风格需要几个目录:css.images.js. 普通程序员,把最新版本的代码逐个复制到每个项目中,如果有N个项目,那…
添加submodule: git submodule add 子模块git地址  把这个module放置的文件夹(这个文件夹须事先不存在) git submodule add http://xxx.xxx myModule push到远程: 执行上一步会生成一个.gitmodules隐藏文件,和module放置的文件夹 git add . git commit -m 'add module' git push 更新submodule: cd 放置module的文件夹  &&  git pu…
1.在项目中使用Submodule 为当前工程添加submodule,命令如下:git submodule add 仓库地址 路径仓库地址:是指子模块仓库地址URL.路径:指将子模块放置在当前工程下的路径. 注意:路径不能以 / 结尾(会造成修改不生效).不能是现有工程已有的目录(不能順利 Clone)命令执行完成,会在当前工程根路径下生成一个名为“.gitmodules”的文件,其中记录了子模块的信息.添加完成以后,再将子模块所在的文件夹添加到工程中即可. 2.修改Submodule进入到子模…
From: https://git-scm.com/book/zh/v2/Git-%E5%B7%A5%E5%85%B7-%E5%AD%90%E6%A8%A1%E5%9D%97 子模块 有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在一个项目中使用另一个. 我们举一个例子. 假设你正在开发一个网站然后创建了 Atom 订阅. 你决定使用一个库,而不是写自己的 Atom…
问题描述: 当一个prj.git项目里引用了另外一个moduleA.git项目作为其一个子模块,由于该模块未完善后续可能将继续升级,也就是需要两套git分别管理prj.git与moduleA.git,而prj.git又使用了moduleA.git. 使用submodule进行管理 1.  新建一个项目git 2. 新建一个mouleA.git 3. 在prj.git里添加moudleA.git. 带有submodule仓库的克隆方法 1. 直接clone的话是没有submodule信息的,只有文…
道哥的第 030 篇原创 目录 一.一个真实的代码泄漏故事 二.Jenkins 的基本使用 1. Jenkins 是什么? 2. 安装 JDK8 3. 安装 Jenkins 4. 在浏览器中配置 Jenkins 5. 在 Jenkins 中配置一个小项目 6. 手动触发编译一次 三.git submodule 基本使用 1. git submodule 是什么? 2. 利用三个小项目,来测试一下 submodule 的用法 3. 在一个空目录中来编译.验证一下可行性 四.在 Jenkins 中使…
转自: https://github.com/kaiye/kaiye.github.com/issues/7 在掌握了基础的 Git 使用 之后,可能会遇到一些问题.以下是猫哥筛选总结的部分常见问题,分享给各位朋友,掌握了这些问题的中的要点之后,git 进阶也就完成了,它包含以下部分: 如何修改 origin 仓库信息 如何配置 git ssh keys 如何撤销修改 遇到冲突了怎么解决 git stash / alias / submodule 的使用问题等 问:如何修改 origin 仓库信…
From: http://www.vogella.com/tutorials/Git/article.html Git - Tutorial Lars Vogel Version 5.6 Copyright © 2009, 2010, 2011, 2012, 2013, 2014 Lars Vogel 08.02.2014 Revision History Revision 0.1 - 5.6 13.09.2009 - 08.02.2014 LarsVogel bug fixes and imp…
转自:http://www.vogella.com/tutorials/Git/article.html#git_rename_branch Lars Vogel Version 5.8 Copyright © 2009-2015 vogella GmbH 10.08.2015 Git Tutorial This tutorial explains the usage of the distributed version control system Git via the command li…
如果你的项目中有很多第三方的lib,你希望使用它,并且也希望可能对该lib做修改并且贡献到原始的项目中去,或者你的项目希望模块化,分为几个repo单独维护,那么git subtree就是一个选择.git subtree管理的子项目在父项目中作为一个完整的代码copy存在,并不包含历史信息.综合考虑git subtree和git submodule的优缺点,一个可行的管理策略是:使用git subtree对父项目(在该父项目中可以临时将子项目文件夹加入到tracking中)做split,将需要单独…
1. 将repo_a的分支提交到repo_b分支 repo_a:表示原始git库地址:repo_b:表示新增的git库地址. git remote add new_remote repo_b:new_remote 是repo_b在repo_a中的别名.为本地repo_a新建remote名称,也即另一个repo. 在.git/config中就会新增一个remote: [remote "new_remote"] url = http://.../linux.git fetch = +ref…
子模块 有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在一个项目中使用另一个. 我们举一个例子. 假设你正在开发一个网站然后创建了 Atom 订阅. 你决定使用一个库,而不是写自己的 Atom 生成代码. 你可能不得不通过 CPAN 安装或 Ruby gem 来包含共享库中的代码,或者将源代码直接拷贝到自己的项目中. 如果将这个库包含进来,那么无论用何种方式都很难定…
你系统学习Git了吗? 使用Mac编程的好处,不是因为Mac长得好看 Git内容学习准备 如果你还没有用Git,就不要写代码了. GitHub仓库的使用. 新员工入职的时候,会让他先用一周的时间去学习Git. Mac(优雅的开发环境,Terminal) 不要使用GUI入门Git.要使用命令行. 官网:http://www.git-scm.com/ 安装Git 使用Xcode自带的Git环境. 去官网自行下载安装. Terminal的增强. bash 每一个Linux和Mac自带的解释器.(但是功…
你系统学习Git了吗? 学习圣思园张龙老师的Git课程. 使用Mac编程的好处,不是因为Mac长得好看 Git内容学习准备 如果你还没有用Git,就不要写代码了. GitHub仓库的使用. 新员工入职的时候,会让他先用一周的时间去学习Git. Mac(优雅的开发环境,Terminal) 不要使用GUI入门Git.要使用命令行. 官网:http://www.git-scm.com/ 安装Git 使用Xcode自带的Git环境. 去官网自行下载安装. Terminal的增强. bash 每一个Lin…
本文章已经录制视频,地址是:http://v.youku.com/v_show/id_XODI3MjYyODI0.html 前端这两年技术飞速发展,各种优秀框架层出不穷.本文不是讨论各框架的比较,也不讨论为什么我要用angular,而不用backbone:不讨论为什么用requirejs,而不用browserify,seajs等.只是介绍平常我是怎么进行项目的前端架构. 一个成熟项目架构中应该具有哪些功能 * 快速的项目生成器——快速生成项目主体架构,单步实现controller,单步实现vie…
本文CMAKE版本为3.18 演示环境: Windows+CMake+VS2017 源码下载说明 演示代码是后来传上去的,而且做了些修改,将spdlog_demo由exe改为了lib,但是,spdlog_demo依然使用FetchContent的方式引用spdlog 这里下载源码 1. 关于 截至目前,我知道的,有两种方式引入外部项目 A. git下的Submodule 使用命令可以将克隆的项目添加到当前项目,作为子项目使用,比如,fmt库为例: git submodule add https:…
背景 年初的时候团队内落地了HttpRunner3框架,简单介绍下:HttpRunner 是一款由python开发的面向 HTTP(S) 协议的开源通用测试框架,用例脚本为 YAML/JSON 格式,3.0版本支持py格式. HttpRunner 依赖开源库requests ,pytest ,pydantic ,allure 和 locust,可实现自动化测试.性能测试.线上监控.持续集成等多种测试需求. PB指的是Protocol Buffers 又简称为 Protobuf,是 Google…
0.前言 由于需要在GitHub下载代码,而国内访问受限,可能会出现一些问题,这里建议使用github国内镜像,参看:GitHub国内镜像网站,当然下面会给出具体解决方案. 1.步骤 1.1下载源码:git clone https://github.com/PX4/PX4-Autopilot.git 注意: 若该步骤出错,使用镜像,也就是运行:git clone https://hub.fastgit.xyz/PX4/PX4-Autopilot.git 或者使用gitee镜像:git clone…
有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你 独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在 一个项目中使用另一个. Git 通过子模块来解决这个问题. 子模块允许你将一个 Git 仓库作为另一个 Git 仓库的子目录. 它能让你将另一个仓库克隆到自己的项目中,同时还保持提交的独立. 开始使用子模块 git submodule add remotePath [localPath] 克隆含有子模块的项目 gi…
git submodule主要是用于针对git项目中还存在git子模块的情况.在一般情况下,我们通过git clone 获取项目的时候会把项目中的所有信息都拿到.但是,如果相关中存在git子模块那么,我们git下来的项目中该模块是一个空的文件夹.这时git submodule就派上用场了.通git submo获取子项目的步骤如下: 1.通过git clone获取主要项目 2.删除主项目中的空文件夹:git rm -r “空文件路径” 3.在删除空文件夹之后,要git commit 进行提交.如果…
这个是备忘录,原网页: https://medium.com/@porteneuve/mastering-git-submodules-34c65e940407 http://cncc.bingj.com/cache.aspx?q=git+submodule+porteneuve&d=5051866681245979&mkt=zh-CN&setlang=en-US&w=CSPsXaV5W3T5UouIOUfyo8SEUMbF--01 , 被共党的网上长城无辜的墙掉.(希望有…