我有一个GIT存储库: my_git_repo 我添加了一个子模块: my_git_repo \子模块 没关系,现在:
是否可以将文件(并更改?)添加到子模块,但是将跟踪保留在父“my_git_repo”存储库中?
我想要的只是能够更新子模块,但仍然可以自己进行一些更改和添加。
想法或建议?还有其他方法吗?
答案 0 :(得分:2)
是否可以将文件(并更改?)添加到子模块,但是将跟踪保留在父“my_git_repo”存储库中?
是的,但是对于您将在子模块中进行的每个新提交,您需要:
git add
和git commit
(因为gitlink已更改,gitlink being the special entry in the index which records the SHA1 of the submodule repo)。第二步不必为在子模块中完成的每次提交完成,但最终必须完成,以便记录子模块的下一个稳定状态。 / p>
如果子模块是公共仓库,那么您需要将其分叉(GitHub,BitBucket),并将其更改为远程“原点”:
cd /path/to/submodule
git remote rename origin upstream
git remote add origin /url/of/the/fork
然后你可以推送到子模块仓库。
要使用来自原始仓库(您已分叉)的新提交更新子模块仓库,请参阅“Pull new updates from original Github repository into forked Github repository”