0
我們是2個開發人員,他們希望在我們的一些小型projetcs上進行協作,我們正在使用Git來執行此操作。同時推送時避免覆蓋,Git(SourceTree)
我們正在使用一個名爲SourceTree的客戶端,它替代了使用Git命令的需要。
問題:如果我們同時推送更改會發生什麼?如果可能的話,我們希望避免覆蓋彼此的變化。
感謝您的閱讀,並希望能夠回答我的問題。
我們是2個開發人員,他們希望在我們的一些小型projetcs上進行協作,我們正在使用Git來執行此操作。同時推送時避免覆蓋,Git(SourceTree)
我們正在使用一個名爲SourceTree的客戶端,它替代了使用Git命令的需要。
問題:如果我們同時推送更改會發生什麼?如果可能的話,我們希望避免覆蓋彼此的變化。
感謝您的閱讀,並希望能夠回答我的問題。
默認情況下,除非您使用--force
選項,否則在同時按下時不會覆蓋其他開發人員的代碼。
由於您正在使用SourceTree --force
選項默認情況下處於禁用狀態。您可以通過檢查啓用它:通用>允許力推(不推薦你)
另一件事要做避免出現這種情況,是你git push
以前總是git pull
。
在命令行git中,除非用'--force'推送,否則不能覆蓋遠程存儲庫上的更改。我不使用SourceTree,但我想它是一樣的。 – Ajedi32
Git在處理衝突方面非常好,如果你兩個人都改變了相同的代碼行,你就會有「合併衝突」,必須由你或你的第二個開發人員手動解決,沒有'--force'什麼都不會由Git自動覆蓋。 – naththedeveloper
這是另一個SO問題的深入解釋, http://stackoverflow.com/questions/4643998/how-git-works-when-two-peers-push-changes-to-same-remote-simultaneously – root545