原文作者:@玄冬Wong
如果一个仓库中,引用了几个其他几个仓库,想在更新本次仓库的时候同时更新将其他几个引用仓库,那么可以使用git submodule。
要使用submodule,初始化时貌似只能通过命令行初始化,之后跟新可以通过TortoiseGit客户端来更新。
另外,submodule必须引用整个仓库,无法引用某个仓库的某个子目录。
添加
具体操作如下:
1,先打开git-bash命令行,然后定位到需要引用的目录位置,然后执行命令,例如:
git submodule add ssh://admin@127.0.0.1:29418/myproject.git bbbb
这条命令意思是,将远程仓库myproject下载到当前目录的bbbb目录下(bbbb会自动新建)。命令在哪个目录下执行,则bbbb目录相对与哪个目录。
注:如果已经存在.gitmodules文件了,执行add命令时需要添加参数:-f,否则无法add成功,例如:
git submodule add -f ssh://admin@127.0.0.1:29418/myproject.git bbbb
2,以后就可以通过TortoiseGit客户端更新了:Git Sync -》 submodule update
删除
如果要删除submodule,看了stackoverflow上的问答,发现删除git submodule挺麻烦的,官方还没一个专门的命令来删除submodule(至少到当前2.x版本仍然存在这个问题),需要手动删除,手动删除分三步:
这里假设之前添加的bbbb submodule位置在xxx/yyy/目录下
1,删除.git/config中的submodule配置:
[submodule "xxx/yyy/bbbb"]
url = ssh://admin@127.0.0.1:29418/myproject.git
2,删除.gitmodules中的submodule配置:
[submodule "xxx/yyy/bbbb"]
path = xxx/yyy/bbbb
url = ssh://admin@127.0.0.1:29418/myproject.git
3,删除.git/modules/bbbb
在.git/modules/目录下,存放了所有submodule的仓库,删除对应的仓库
删除操作参考:
http://stackoverflow.com/questions/19915679/trouble-with-adding-removing-a-git-submodule
相关推荐
安装sudo ./install 卸载sudo ./install --uninstall 用法gitsubmodule [options | options[args]] ###选项选项参数? 描述-h,--help 显示帮助--version 显示版本号-d,--dir repoDir 默认情况下为 repo 提供目录...
主要介绍了详解git submodule update获取不到最新提交的代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要介绍了详解git submodule HEAD detached 的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
问题:如何使用git submodule命令部署azure web应用现象:使用git进行部署的过程中在执行git submodule add的命令时,如果UR
git代码检出、colone、切换分支,初始化所有子模块,将父模块的代码检出至本地等。
场景: 当你在一个Git 项目上工作时,...在Git 中, 可以用子模块submodule来管理这些项目,submodule允许将一个Git 仓库当作另外一个Git 仓库的子目录。这允许克隆另外一个仓库到你的项目中, 并且保持你的提交相对独立。
主要介绍了详解git submodule使用以及注意事项,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要介绍了Git Submodule使用完整教程(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要介绍了git中submodule子模块的添加、使用和删除的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
文章地址:...该python脚本主要解决的问题: 1、拉取工程代码时,子模块指向modules.json指定的branch或tag,避免拉到游离分支。 2、提交代码时取消子模块提交commit的提示。
为了进行此设置,请将此存储库克隆到某个地方,运行git submodule init ,然后运行git submodule init git submodule update命令,然后将您的克隆添加到$ PATH中。 有些命令需要python2 。 如果在Windows上使用...
项目的版本库在某些情况下需要引用其他版本库中的文件,例如有一套公用的代码库,可以被多个项目调用,这个公用代码库能直接放在某个项目的代码中,而是要独立为一个代码库,那么其他要调用公用的代码库该如何处理?...
submodule方式,引用已有项目。 项目环境 submodule的使用 参考: 增加submodule git submodule add https://SubModule.git 首次拉取 git clone https://github.com/h4x0r139/git_collect_sub.git git submodule ...
git的使用方法
主要介绍了Git Submodule管理项目子模块的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
因为我在学习Git的过程中,买过书,也在⺴⽹网上Google了⼀一堆Git 相关的⽂文章和教程,但令⼈人失望的是,这些教程不是难 得令⼈人发指,就是简单得⼀一笔带 过,或者,只⽀支离破碎地介绍Git的某⼏几个命令,...
sub git子模块加速,等同于git submodule add get 就是单纯的下载功能 示例用法 clone功能:等效于 git clone cit clone # 示例 cit clone https://github.com/solider245/cit.git 如上图所示,输入一个数字,选择一个...
将“git submodule”添加到项目中。 由“build.gradle”中的“apply from”使用。 设置 git submodule add git@github.com:jakenjarvis/AndroidBuildGradleCommonLibrary.git gradle/commonlibrary git submodule ...
参与任何一个 Git 项目的协作,必须要了解该如何管理远程仓库。远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写。...该文档很好的讲解了git的远程仓库的使用。
git视频教程.5.6.Git 命令 - git submodule.mp4 git视频教程.6-7.Git 命令 - git show、git shortlog、git describe、git bisect、git blame、git grep.mp4 git视频教程.8.1.Git 命令 - git cherry-pick.mp4 git视频...