簡體   English   中英

將git merge與遞歸策略一起使用時,更改可以被無沖突地覆蓋嗎?

[英]Can changes be conflictless overwritten when using git merge with recursive strategy?

確切地說,我正在使用Git(GitLab)管理我公司中項目的源代碼。 兩名開發人員在項目上工作,為每個任務創建一個分支,然后創建一個合並請求。 我主要是通過UI直接合並這些,這應該與在命令行中進行的操作相同:

git checkout master
git merge --no-ff 1224-cool-feature-branch

我不時看到小的功能或部分頁面消失了。

考慮以下情況

  • 開發人員A從主節點在AB12分支->新分支名稱FeatureA
  • 開發人員B從主節點在AB12分支->新分支FeatureB
  • 開發人員A更改foobar.txt並提交到FeatureA
  • 使用默認遞歸策略,通過merge --no-ff FeatureA合並到master中
  • 開發人員B更改foobar.txt並提交到功能B
  • 使用默認的遞歸策略,使用merge --no-ff FeatureB合並到masterB中,而不會發生沖突

FeatureAfoobar.txt更改是否有可能被覆蓋而不會產生沖突?

我相信答案是“否”。 使用常規的3種方式合並文件 ,如果它們之間的距離足夠遠或報告沖突,則應應用更改,沒有其他選擇。

這種方法可能存在一些問題,請參見例如http://r6.ca/blog/20110416T204742Z.html ,但是我無法想象任何極端情況如何導致無聲編輯反轉。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM