如何使用GitHub只提交一次或几乎没有更改过的文件

时间:2014-03-31 04:04:52

标签: php git zend-framework github

原因:当项目中有大量文件时,检查GitHub Windows桌面版中的已更改文件需要相当长的时间。

例如,Zend库可能有大量文件,但我永远不会改变其中的任何内容。但是,我仍然希望它得到承诺。那么有没有一种方法我只能提交它们然后GitHub再也不会检查更改?

任何答案,GUI,命令行都是值得赞赏的。

=============================================== ==

解决后编辑

感谢dylanPowers,问题现在已经解决了。但我想为那些第一次听到git子模块的人解释更多,并详细介绍我如何使用它。

让我们说你的Zend图书馆应该在你的项目图书馆/ 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/

1 个答案:

答案 0 :(得分:0)

如果是图书馆,我建议您通过git-submodule访问它。例如,Zend Framework已经是on 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 repo,并将其推送到GitHub或任何其他易于访问的地方,并执行相同的操作。