2010-10-19 84 views
1

我想使用git作为它没有做的东西 - 数据库。请随时告诉我,这是一个愚蠢的想法。Git,机器人和发散分支

设置

一个分支(姑且称之为robot)被自动脚本每天都在更新。数据来自其他一些公开可用的数据库。

最初的master分支与robot分支相同。

公开数据库中的一些数据是错误的,所以我会提交master分支并更正错误。

当脚本在将来检测到公共数据库发生任何更改时,它会将这些更改作为新提交(每个文件有一个提交)添加到robot分支中。

保持的差异

轨道现在,我已经失去了明显的做了快进,如果我已经修改了同一个文件合并的能力。但我仍然可以选择robot分支的良好变化,并将它们导入master分支。问题在于,一段时间后,这几乎所有文件都会发生分歧,这可能会变得相当混乱。

如何以系统的方式跟踪不同分支之间的差异?

回答

2

这听起来像你正在寻找git rebase命令。该命令允许您更新您对master分支上的robot分支的新头顶变化:

git checkout master 
git rebase robot 

可能会有冲突,如果数据库已经有变化的东西你更新已更改为master。您必须手动解决这些冲突。

+0

我认为你是对的;-) * playingaroundwithit * – hanno 2010-10-20 00:42:33

+0

唯一的问题是,当我在远程分支上这样做时,人们不喜欢它。 – hanno 2010-10-21 15:17:39