2015-02-23 171 views
0

我們在一個項目中使用SourceTree與我的朋友,我在主分支,他有他自己的分支(我知道,玩主分支不是一個好習慣,但現在我們把它放在一邊),每天我都把他的分支合併到主分支中。昨天,他使用「硬」模式丟棄所有更改,將分支重置爲以前的提交。從那時起,我們的分支似乎在同一條「線路」上(因爲它們是同步的,具有相同的內容,無論它叫什麼)。以前,當我們有差異時,提交旁邊的圖顯示正確,並且行中有兩個不同的分支。現在,即使我們致力於和牽強的差異,我們都在SourceTree看到這個(我們已經重新啓動等,完全沒有變化):SourceTree顯示不同的brances,就像他們在同步(當他們不同步)

enter image description here

爲什麼看似是在同一個分支不同的分支圖形?我該如何解決這個問題?

+0

重置後,他的分支的遠程版本被刪除?如果沒有完成,他將無法推送更改,因此您會看到遠程版本與重置前相同。 – isherwood 2015-02-23 18:34:37

+0

@isherwood我如何測試它? – 2015-02-23 18:35:52

+0

使用控制檯:'git push origin:branch_name'(注意冒號)。這將刪除遙控器。 – isherwood 2015-02-23 18:36:48

回答

1

聽起來像是有分歧,這是防止主題分支推到遠程。如果您觀看控制檯輸出,您會看到推送失敗。

當您重置時,遠程設備也需要更新。通常這是由刪除它做簡單:

git push origin :branch_name 

然後開發可以推動主題分支的復位版本:

git push origin branch_name 

(或SourceTree推)。

注意:任何其他開發人員與分支的本地副本也需要刪除它。如果有人推回來,它需要再次被刪除。

現在,在拉動之後,你們都應該看到正確的分支結構。

+0

刪除他的分支後,他再次將分支推回到遙控器,但仍然出現在同一行上。 – 2015-02-23 18:41:55

+0

您還需要刪除分支的本地版本。 – isherwood 2015-02-23 18:42:56

+0

我從本地和遠程計算機上刪除了他的本地分支(我沒有使用它)。我已經在他的電腦上刪除了本地分支和遠端(它已經在遠端顯然已經被刪除了,但我有一個關於那個的錯誤,但無論如何),重啓了SourceTree,沒有在他和我的電腦上找到那個分支的蹤跡。然後我重新創建了分支,承諾它,推送,並且它仍然沒有正確顯示分支結構。 – 2015-02-23 18:59:28

相關問題