原因:当项目中有大量文件时,在GitHub Windows桌面版本中检查更改的文件需要相当长的时间。
例如,Zend库可能有大量的文件集,但我永远不会改变其中的任何内容。但是,我仍然希望它被提交。那么有没有办法我只能提交一次,然后 GitHub 永远不会再次检查更改?
任何答案,GUI,命令行式的赞赏。
====
====================================================解决后编辑
多亏了迪伦·鲍尔斯,问题现在解决了。但我想为那些第一次听到 git 子模块的人解释更多,并详细说明我如何让它工作的步骤。
假设你的 Zend 库应该在项目的 'library/Zend' 文件夹中。在执行此操作之前,Zend文件夹不应该存在,因为您要将其下载为子模块。
我的命令:
> git submodule add https://github.com/opensolutions/zf1.git library/Zend
通过运行上述命令,您的控制台将开始将子模块从 https://github.com/opensolutions/zf1.git 下载到本地文件夹"library/Zend"中。然后,可以使用以下命令提交代码:
git commit -a -m "添加了 ZF1 子模块"
是时候推动了,你会注意到你的 Zend 库根本没有被上传。因为它是 GitHub 上的仓库,所以无需再次上传!
git push
好的,现在转到项目的网页,在库文件夹中,您将看到指向 ZF1 存储库 (https://github.com/opensolutions/zf1.git) 的链接。做!
Git 子模块就像作曲家,但它无法为您解决依赖关系。所以作曲家也是一个非常有价值的观点,下面由ceejayoz回答,谢谢。
这篇文章对我很有帮助:http://joncairns.com/2011/10/how-to-use-git-submodules/
如果它是一个库,我建议通过 git 子模块访问它。例如,Zend Framework 已经在 Github 上了。如果需要 zf2,可以使用以下命令将其添加到存储库中:
git submodule add https://github.com/zendframework/zf2.git path/to/library/dir
git commit -m "Added Zend Framework submodule"
这应该使 GitHub for Windows 忽略带有 Zend Framework 的该目录,因为它不再是 git 存储库的直接部分。
对于您可能正在使用的任何其他不受 git 版本控制的库,您可以自己将其初始化为 git 存储库,并将其推送到 GitHub 或任何其他易于访问的地方,并做同样的事情。