2010-10-19 34 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