如何使用git跟踪整个项目,但只将选定的文件推送到Github?

时间:2012-05-06 03:51:54

标签: git github

我想在本地对整个项目进行版本控制,但只将某些文件(例如测试)推送到Github。有没有办法做到这一点?谢谢!

2 个答案:

答案 0 :(得分:6)

Git通常通过克隆位置之间的存储库副本来工作 - 例如,在您的计算机和github之间。您在计算机上拥有的存储库副本与github上的存储库基本相同(以及与其他人可能拥有的副本相同)。

因此,如果一个人进行提交,那么该提交将与存储库的所有其他副本一起转移。

主要的例外是git 分支。 (这是一个简化的视图,但它适用于此讨论。)如果有人专门采取行动推动它们,则只在存储库之间推送存储库中的分支。

因此,如果您只想将特定文件推送到github或从github推送,我可以看到实现此目的的最佳方法是创建一个仅包含要推送到github的文件的分支,然后只推送该分支。只是不要推动其他分支。

您仍然可以将这些文件合并到开发分支中 - 以及将其他分支中的文件合并到您推送的分支中。

所以我相信这会实现你想要的。

所有这一切,我强烈建议你按照预期使用git并推送所有代码的完整副本,而不是仅推送某些文件。

答案 1 :(得分:0)

我同意Kevin并建议将整个存储库推送到GitHub。

但是,如果只有一些非常奇怪的情况需要将您的单元测试放在GitHub中,那么您可以将其设置为单独的存储库,并在主存储库中使用submodule。 / p>