1

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

4

2 回答 2

6

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

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

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

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

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

所以我相信这会完成你想要的。

话虽如此,我真的强烈建议您按预期使用 git 并推送所有代码的完整副本,而不仅仅是推送某些文件。

于 2012-05-06T04:04:50.457 回答
0

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

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

于 2012-05-06T04:07:30.133 回答