我在一所学校编码,要求我们使用 git 将所有工作提交到他们的服务器。每个作业都有自己的文件夹,该文件夹有自己的 .git 目录。
我试图将父文件夹推送到我的 github,但是当我推送时,它实际上并没有上传文件夹内的代码,因为它被视为子模块。我尝试制作一个忽略所有 .git 文件夹的 .gitignore 文件,但这不起作用。
我见过的唯一解决方案是每次我想将项目内部的更改推送到我的 github 时手动执行 git Remote,或者编写一个脚本将父目录的内容与第二个目录同步,然后删除所有推送之前先将 .git 文件夹放入其中。
有没有什么方法可以干净地推送到github,而无需手动推送每个文件夹,并且不必创建一个目录,该目录本质上是我的工作副本,只是为了推送到github?
要将所有内容推送到 github,
find -name .git -execdir git push \;
会做的。
如果您确实想进入子模块,可以通过添加内容而不是子模块来绕过存储库:
git rm -rf --cached path/to/submodule # to clear out any submodule entry
git add path/to/submodule/.
并且 git 不会再将其视为该存储库中的子模块。现在您可以跟踪其内容two存储库。我以前见过这个 https://stackoverflow.com/questions/23726408/how-to-track-revision-history-of-revision-history,但似乎做了很多工作,但我看不到具体的好处。这是另一种方法 https://stackoverflow.com/questions/31099593/how-to-commit-a-git-repository-inside-another-git-repository,保持子模块边界和工作流程基本完整,但将子模块推送到主模块中的分支。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)