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 文件夹下,切换到某个分支就可以。
版权声明:本文博客原创文章。博客,未经同意,不得转载。
Git--Submodule使用的更多相关文章
- git submodule初用
git submodule主要是用于针对git项目中还存在git子模块的情况.在一般情况下,我们通过git clone 获取项目的时候会把项目中的所有信息都拿到.但是,如果相关中存在git子模块那么, ...
- git submodule 使用
这个是备忘录,原网页: https://medium.com/@porteneuve/mastering-git-submodules-34c65e940407 http://cncc.bingj.c ...
- git submodule(转载)
From:http://www.worldhello.net/2010/01/26/425.html 删除 git submodule (git 库子模组) 有两种情况会创建 git submodul ...
- Git submodule 特性
当你习惯了代码的 VCS 后,基本上是离不开的. 作为一个依赖多个子项目组成的项目,要实现直观的代码逻辑结构,可以考虑使用 Git submodule 特性. 当然,如果只是单独的依赖的话,用依赖管理 ...
- Git subtree和Git submodule
git submodule允许其他的仓库指定以一个commit嵌入仓库的子目录. git subtree替代git submodule命令,合并子仓库到项目中的子目录.不用像submodule那样每次 ...
- 使用git submodule管理一个需要多个分立开发或者第三方repo的项目
在项目开发中,特别是web前端开发中,有非常多的开源第三方library,我们希望引用他们,同时也希望能够方便地保持这些第三方 开源repo的更新.另外一方面如果我们自己在开发一个网站的项目,这个项目 ...
- Git submodule实战
http://blog.jqian.net/post/git-submodule.html 使用git管理的项目开发中,如果碰到公共库和基础工具,可以用submodule来管理. 常用操作 例如, 公 ...
- git submodule的操作
对于有submodule的库,检出的方法是: git clone https://github.com/BelledonneCommunications/linphone-android.git -- ...
- git submodule相关操作
$ cd 项目目录 // 初始化 $ git init $ git submodule add https://github.com/XXXX // 普通更新 $ git submodule upda ...
- git submodule 使用过程中遇到的问题
git submodule 使用过程中遇到的问题 资源文件 原.gitmodules文件的内容如下: [submodule "Submodules/FFmpegWrapper"] ...
随机推荐
- 2014百度之星第三题Xor Sum(字典树+异或运算)
Xor Sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 132768/132768 K (Java/Others) Total ...
- Linux应用环境实战10:Bash脚本编程语言中的美学与哲学(转)
阅读目录 一.一切皆是字符串 二.引用和元字符 三.字符串从哪里来.到哪里去 四.再加上一点点的定义,就可以推导出整个Bash脚本语言的语法了 五.输入输出重定向 六.Bash脚本语言的美学:大道至简 ...
- javascript UniqueID属性
在Web页中的每一个HTML元素都一个ID属性,ID作为其标示,在我们的普通理解中它应该是unique的.但是HTML元素的ID属性是可写的,这就造成了我们非常可能人为的使ID的反复.按么假设 ...
- OSChina底层数据库操作的类(QueryHelper)源代码
OSChina 使用的是 dbutils 这个JDBC的封装类库来进行数据库操作. 而 QueryHelper 则是在 dbutils 的基础上进行一级简单的封装,提供一些经常使用的数据库操作方法和对 ...
- Naive Bayes Classification
Maching Learning QQ群:2 请说明来自csdn 微信:soledede
- php按照奖品百分比随机抽奖代码分析
这个忘记从哪里copy过来了 /** * 概率算法 * @param array $probability * @return integer|string */ function get_rand( ...
- Ext JS4百强应用: 做可编辑的,可checked的treegrid--第11强
做一个可编辑的,可checked的treegrid,代码相当简洁: 请看代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN&quo ...
- 将本地文件上传到指定的服务器(HttpWebRequest方法)
将本地文件上传到指定的服务器(HttpWebRequest方法),通过文件流,带文件名,同文件一同上传的表单文本域及值. ///<summary> /// 将本地文件上传到指定的服务器(H ...
- java中途强制跳出递归
有些时候我们需要在中途强制跳出递归,而且还是需要一步跳出,而不一层一层的跳出,这时,我们可以采用抛异常的方法来实现. class Test { static class StopMsgExceptio ...
- J2SE基础:7.系统经常使用类一
1.Object对象 Object对象是全部对象的根类. 每一个对象都默认继承自Object类. equals():对象与对象之间是否相等. 逻辑上面的相等.equals 物理上面的相等(地址相等) ...