标签: git-submodules

git子模块跟踪最新

我们正在将我们(巨大的)项目转移到git,我们正在考虑使用子模块.我们的计划是在超级项目中有三个不同的头:发布,稳定,最新.项目负责人将处理释放和稳定的分支机构.他们将根据需要移动子模块.

问题是"最新"头.我们希望超级项目"最新"头部跟踪所有子模块的主分支(自动).如果能够显示子模块的所有提交历史,那也很棒.

我看过gitslave,但它不是我们想要的.有什么建议?

git git-submodules git-track

130
推荐指数
1
解决办法
8万
查看次数

子模块内部的Git子模块(嵌套子模块)

git子模块是否有可能由其他几个git子模块组成,而超级git repo可以获取每个子模块的内容?

我尝试使用显而易见的/天真的方法来创建一个包含多个子模块的git repo.

然后将此git repo添加到另一个git repo作为子模块.

然后尝试从超级git仓库的根目录拉出git submodule init然后git submodule update.但这无法获取子子模块.

git git-submodules

129
推荐指数
2
解决办法
4万
查看次数

如何制作浅git子模块?

是否有可能有浅子模块?我有一个包含多个子模块的超级项目,每个子模块都有很长的历史记录,所以它拖延了所有历史记录.

我找到的只是这个没有答案的线索.

我应该破解git-submodule来实现这个吗?

git git-submodules

129
推荐指数
5
解决办法
4万
查看次数

Git:致命:Pathspec在submodule中

根据本指南,我试图让TravisCI自动部署我的Hakyll静态站点.

这是我的回购设置的方式.我有我的源代码分支,其中包含我的hakyll和markdown文件.它将html构建到_site目录中,该目录设置为子模块,链接到我的master分支.

我没有问题地构建网站,然后cd进入_site目录.但是,当我尝试git add ./*新生成的HTML文件时,我收到以下错误:

fatal: Pathspec './about.html' is in submodule '_site'
Run Code Online (Sandbox Code Playgroud)

当我尝试时git add --all,我收到此错误:

git: pathspec.c:317: prefix_pathspec: Assertion `item->nowildcard_len <= item->len && item->prefix <= item->len' failed.

/home/travis/build.sh: line 245: 1566 Aborted git add --all
Run Code Online (Sandbox Code Playgroud)

造成这种情况的原因是什么,我该如何避免这种情况?

您可以在此处查看存储库.

git version-control github git-submodules hakyll

125
推荐指数
5
解决办法
6万
查看次数

Git在哪里存储子模块的提交的SHA1?

我知道当你将一个子模块添加到git存储库时,它会跟踪由其sha1引用的该子模块的特定提交.

我试图找到存储此sha1值的位置.

.gitmodules.git/config文件只显示了子模块的路径,但不是的提交SHA1.

混帐子模块(1)参考只讲一个的gitlink条目和gitmodules(5)参考不说这事,无论是.

git sha git-submodules

122
推荐指数
1
解决办法
3万
查看次数

Git:我可以在status,diff等中禁止列出'modified content'/ dirty submodule条目吗?

有些人(我认为在1.6.x版本附近)git意识到了子模块内部的变化.那只会让我烦恼:

$ git status vendor | grep modified:
#       modified:   vendor/rails (modified content)
$ git diff vendor/
diff --git a/vendor/rails b/vendor/rails
--- a/vendor/rails
+++ b/vendor/rails
@@ -1 +1 @@
-Subproject commit 046c900df27994d454b7f906caa0e4226bb42b6f
+Subproject commit 046c900df27994d454b7f906caa0e4226bb42b6f-dirty

请停止?

编辑:

好的,我有答案.现在我有另一个问题:

我可以把它放进去~/.gitconfig吗?从我最初看起来我不能,并且我没有看到任何有希望通过略读补丁.(我想我仍然可以做别名.)

git git-config git-submodules

119
推荐指数
6
解决办法
4万
查看次数

repo克隆时清空Git子模块文件夹

我在https://github.com/aikiframework/json上有一个回购.在我的本地副本上,我使用该命令添加了一个子模块

git submodule add git@github.com:jcubic/json-rpc.git json-rpc
Run Code Online (Sandbox Code Playgroud)

然后我做了一个提交和推送,更改出现在GitHub上(我可以点击它).但是当我克隆回购时

git clone https://github.com/aikiframework/json.git
Run Code Online (Sandbox Code Playgroud)

子模块文件夹json-rpc为空.

我在这里错过了什么?我忘记了什么吗?为什么那个文件夹是空的?

git version-control git-clone git-submodules

116
推荐指数
1
解决办法
3万
查看次数

Git子模块推

如果我修改子模块,我可以将提交推回到子模块源,还是需要克隆?如果克隆,我可以将克隆存储在另一个存储库中吗?

git git-submodules

115
推荐指数
2
解决办法
9万
查看次数

添加git子模块时,"你还在分支上"

我试图几个子模块添加到我的.vim/bundles目录,当我尝试添加这种特殊的回购Git的给了我一个奇怪的错误,我以前从未见过:

$ git submodule add -f git://github.com/derekwyatt/vim-scala.git .vim/bundle/vim-scala
fatal: You are on a branch yet to be born
Unable to checkout submodule '.vim/bundle/vim-scala'
Run Code Online (Sandbox Code Playgroud)

知道是什么原因引起的吗?

如果我将相同的repo克隆到测试目录(而不是通过submodule命令),它可以正常工作,并创建预期的文件.

git git-submodules

114
推荐指数
3
解决办法
3万
查看次数

如何提取一个git子目录并从中创建一个子模块?

几个月前我开始了一个项目,并将所有内容存储在主目录中.在我的主目录"Project"中有几个包含不同内容的子目录:Project/paper包含用LaTeX Project/sourcecode/RailsApp编写的文档包含我的rails应用程序.

"Project"是GITified,"paper"和"RailsApp"目录中都有很多提交.现在,因为我想使用cruisecontrol.rb作为我的"RailsApp",我想知道是否有办法在不丢失历史的情况下从"RailsApp"中创建一个子模块.

git git-submodules

113
推荐指数
4
解决办法
3万
查看次数