Git–Submodule使用

Git–Submodule使用

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

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

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

然后头让我用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 文件夹下,切换到某个分支就可以。



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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117357.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • uniqueidentifier转换_unique函数哪个版本有

    uniqueidentifier转换_unique函数哪个版本有uniqueidentifier中文含义“唯一的标识符”。uniqueidentifier数据类型是16个字节的二进制值,应具有唯一性,必须与NEWID()函数配合使用。uniqueidentifier数据类型与identity自增不同,不会为插入的新行自动生成新的ID,新值由NEWID()函数指定。NEWID()函数值会生成全球唯一的标识,标识由网卡号和CPU时钟组成,如:6

    2022年9月7日
    6
  • JavaScript 解构赋值

    JavaScript 解构赋值文章目录JavaScript解构数组解构分配默认值交换变量跳过项将剩余元素分配给单个变量嵌套解构赋值参考文档    在本教程中,您将借助示例了解JavaScript解构赋值。JavaScript解构    ES6中引入的解构赋值可以轻松地将数组值和对象属性分配给不同的变量。例如,    在ES6之前://assigningobjectattributestovariablesconstperson={name:’Sara’,age:25,

    2025年5月24日
    2
  • 父组件向子组件传值步骤

    父组件向子组件传值步骤父组件向子组件传值步骤:在这里先定义一下,相对本案例来说:App.vue是父组件,Second-module.vue是子组件。一、首先,值肯定是定义在父组件中的,供所有子组件共享。所以要在父组件的data中定义值:二、其次,父组件要和子组件有契合点:就是在父组件中调用、注册、引用子组件:调用:注册:引用:三、接下来,就可以在父组件和子组件链接的地方(即引用子组件的标签上),把父组件的值绑定给子组件:这里我绑定了两个值,一个是数组,一个是字符串。2018-03-3010:15:

    2022年6月1日
    89
  • 语义分割代码一步步实现_语义分割应用

    语义分割代码一步步实现_语义分割应用语义分割的整体实现代码大致思路很简单,但是具体到细节,就有很多可说的东西。之前写过一篇文章,可能有些地方现在又有了新的思路或者感受,或者说之前没有突出重点。作为一个小白,这里把自己知道的知识写一下,事无巨细,希望看到的人能有所收获。一、文件思路总的来说,语义分割代码可以分为如下几个部分:data:图像数据 data/train:训练集数据 data/train/img:…

    2022年8月21日
    9
  • 容器技术详解_容器化技术

    容器技术详解_容器化技术一、什么是容器?IT里的容器技术是英文单词LinuxContainer的直译。container这个单词有集装箱、容器的含义(主要偏集装箱意思)。不过,在中文环境下,咱们要交流要传授,如果翻译成“集装箱技术”就有点拗口,所以结合中国人的吐字习惯和文化背景,更喜欢用容器这个词。不过,如果要形象的理解LinuxContainer技术的话,还是得念成集装箱会比较好。我们知道,海边码头里的集装箱…

    2025年7月10日
    4
  • 中国博士为什么会没有尊严

    最近经常看到一些博士在网上诉苦,感叹自己寒窗苦读了半辈子的说,依然没有能够摆脱贫困,还不如早年进城打工的放牛娃,甚至出现了考研考博不如读技校的说法。中国的博士到底是怎么啦,为什么都这么没有尊严的呢?

    2022年4月12日
    67

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号