通常,在Git存储库中,我有一组我不想进入主仓库的更改,应该只适用于我的机器。例如,我可能有一些文档或脚本只有我认为有用,并且不希望任何其他人维护。
解决 问题很简单:把它们放在.git/info/exclude
中,然后忽略它们但不告诉其他人我忽略了它们。对于仍需要维护做的文件,请使用--skip-worktree
标志。一切都好。
问题在于:我有几台机器 - 我的工作机器,我的家用机器,也许还有我正在迁移到的VM - 虽然这些更改不应该进入主存储库,但我希望在我的机器之间共享它们。 如何才能最好地在仅我的计算机之间共享这些个人更改,而不会冒险将其推入master
分支?
答案 0 :(得分:0)
作为git的DVCS的美妙之处在于,任何工作副本也可用作存储库。您可以仅在本地提交更改,也可以在分支中提交,然后在所有其他环境中将您的repo作为远程提升。这样你就不会把任何东西推到中央存储库。
如果您可以在主存储库中创建分支,那就更容易了。
但是,在这两种情况下,您必须确保如果您从master分支出来,那么如果您想要保持最新,则不断将更改合并到自定义分支中。
答案 1 :(得分:0)
我找到了一个解决方案,在我这种情况下适合我:
~/src/app
)。~
)也是一个Git存储库,用于备份目的。我正在做的是
git update-index --skip-worktree
忽略其中的更改。(我已基本上对上面提到的一些文档或脚本执行此操作,其中忽略整个文件。)
当我做想要在这些文件中对app repo进行一些更改时,这将导致一个复杂的工作流程,但我想我可以使用它。至少我不必记住每台机器的个人更改。