Git--Submodule使用

项目模板中通常由前端保持,所以每次更新模板。我也要跟着变化项目。

随着时间的推移,这不是一个方法来找到,老这么维护。大型项目,更多的模板,真的很容易管理和维护。

然后头让我用submodule前端资源的导入,在学习之后,我们发现,这东西实在是太容易了。说,这就是文艺型程序猿和普通程序猿的差别。

废话不多说,上代码。

在你的项目的文件夹下,输入例如以下命令:

git submodule add "git地址" views/projname

views是当前文件夹中的views文件夹,projname 是把引入的项目放在 projname  的文件夹下。

这时候会在当前文件夹建一个 .gitmodules 的文件,文件内容例如以下:

[submodule "views/projname"]
	path = views/projname 
	url = git@git.xxyy-inc.com:aaaa/bbbb.git

path:引入的项目所在的路径

url:git仓库的地址

然后会自己主动运行 git clone,去git上克隆项目到 views/projname 文件夹下。

注意,在这个地方有事会遇到一个问题。

当 .gitmodules 文件里已经注冊过某个项目了,而你又想引入此项目。这时候会报一个错:“XXXXXX” already in the index。XXXXXX是一大堆环境变量。

此时的解决方式是。查看  .gitmodules 。看引入的项目是否已在此文件里注冊过。即有

[submodule "views/projname"]
	path = views/projname 
	url = git@git.xxyy-inc.com:aaaa/bbbb.git

要有,就把这段删了,然后将改动提交到分支上。然后再运行

git submodule add "git地址" views/projname
要是没有。则查看 views中是否存在projname文件夹,要是存在。则删除,然后再运行 git submodule add 。。。。

这样。能解决这当中遇到的大部分问题。

要切换引入项目的分支时,仅仅须要cd到 views/projname 这个文件夹下。直接git checkout 分支号 就可以。

引入项目后。将改动提交到分支上了,要是在另外一个地方要用时,此处有点差别。

先切到相应的分支,然后运行

git submodule init

这时,会提醒你注冊成功,然后运行

git submodule update

这时。会自己主动运行 git clone。将须要引入的项目克隆下来。

然后 cd 到 views/projname 文件夹下,切换到某个分支就可以。



版权声明:本文博客原创文章。博客,未经同意,不得转载。

posted @ 2015-08-07 10:19  yxwkaifa  阅读(381)  评论(0编辑  收藏  举报