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"] ...
随机推荐
- hdu5384(trie树)
hdu5384 给定n个字符串Ai 给定m个字符串Bi 问所有的Bi在每个Ai中出现了多少次 很显然,对Bi建Trie图,然后每次用Ai去匹配的时候,不断查找当前匹配串的最长后缀,这样就能找到答案了 ...
- USACO comehome Dijkstra
USER: Kevin Samuel [kevin_s1] TASK: comehome LANG: C++ Compiling... Compile: OK Executing... Test 1: ...
- 行为驱动开发(BDD)
行为驱动开发(BDD) 引言 BDD是对TDD理念的扩展.BDD强调有利害关系的技术团体和非技术团队都要参与到软件开发过程中.可以把它看成一种强调团体间合作的敏捷方法.大多数采用某种敏捷方法的团队最终 ...
- Cstyle的UEFI导读:第20.0篇 IGD OpRegion interface && IGD OpRegion PROTOCOL
ACPI IGD OpRegion interface是用SCI来实现IGD driver,OS,BIOS之间沟通的桥梁,IGD OpRegion PROTOCOL是UEFI BIOS构建桥梁 ...
- virtio-blk分析
和virtio-network相同,virtio-blk驱动程序使用Virtio机制Guest它提供了一个高性能的设备I/O方法.我们期待在这里virtio-blk实现. [点击查看全文] http: ...
- JavaScript权威指南科03章 种类、值和变量(1)
种类.值和变量 数据类型分类: 基本类型(primitive type):数位 弦 布尔值 null undefined 对象类型(object type): 对象是属性的集合,每一个属性都由&quo ...
- JQuery Easy Ui (Tree树)详解(转)
第一讲:JQuery Easy Ui到底是什么呢? 首先咱们知道JQuery是对Java Script的封装,是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等.. JQuery ui是在j ...
- NET 项目结构搭建
NET 项目结构搭建 我们头开始,从简单的单项目解决方案,逐步添加业务逻辑的约束,从应用逻辑和领域逻辑两方面考虑,从简单的单个项目逐步搭建一个多项目的解决方案.主要内容:(1)搭建应用逻辑和领域逻辑都 ...
- java多线程Future和Callable类的解释与使用
一,描写叙述 在多线程下编程的时候.大家可能会遇到一种需求,就是我想在我开启的线程都结束时,同一时候获取每一个线程中返回的数据然后再做统一处理,在这种需求下,Future与Callable的组合就派 ...
- Windows下Git服务器搭建[转]
Windows下Git服务器搭建 作为对前两天Git服务器搭建的一个整理,我想分别从服务端和客户端两个角度来记录下整个搭建过程,为了达到目标,我们需要哪些操作. (一)服务端软件和账号的安装配置 ...