使用单个GitHub源更新多个本地工作副本?

时间:2012-02-02 11:23:29

标签: macos version-control github

切换到GitHub,似乎无法找到有关如何做我以前使用SVN的事情的信息:

首先,我是测试人员所以我从不提交更改,但我确实需要保留项目的一些本地副本,每个副本与主干的差别很小 - 分段,生产,减少计时器值等

我以前在Mac上使用CornerStone(只是fwiw /不再拥有它),SVN的单个更新会更新我所有的各种本地“依赖项目”(除了一个或者之外,它们都是相同的)两行,通常在配置文件中)。我会检查不可避免的冲突,并且几乎总是拒绝它们,前提是冲突文件的唯一区别是我的测试用户定制,或者如果有新的东西我将其合并并留下我的暂存环境URL或其他任何内容是

我可以使用GitHub高效地完成这类工作吗? (最好使用GitHub的/ Xcode或其他一些Mac GUI客户端?)

我确实查看了文档,但似乎无法在此找到任何内容,因此任何帮助都非常感激/或许对于许多几乎相同的本地项目进行更改并始终拒绝某些冲突是不寻常的。 。:)

1 个答案:

答案 0 :(得分:1)

当然,理想的解决方案是不在存储库中跟踪配置数据,或者至少可以通过一些未跟踪的文件覆盖。

然而,你想在git中做什么没有问题。您只需在本地制作GitHub存储库的多个克隆。在每个中,您可以使更改特定于该本地副本,然后提交它们。然后,当您想要从最新版本的GitHub更新时,请确保使用以下内容进行更新:

git pull --rebase

...将从服务器获取最新版本,然后尝试使用本地更改重新应用您的提交。除非您提交的文件的相同部分也在GitHub上的新提交中被修改,否则您甚至不应该有冲突来解决。

如果您总是这样拉,那么项目的提交图(历史记录)将始终与远程相同,但您可以将任何本地更改作为远程历史记录之上的最新提交。

(我希望您使用的GUI客户端可以选择在提取新更改时进行重新设置。否则,您可以使用配置选项branch.<name>.rebase自动设置此选项,其中<name>为您当地分行的名称。)