亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

邪惡合并在git中?

邪惡合并在git中?

Git
長風秋雁 2019-10-11 15:13:54
“ man gitglossary ”包含以下邪惡合并的定義:邪惡合并是一種合并,它引入了未出現在任何父項中的更改。我不確定我是否理解作者試圖達到的觀點。為什么是邪惡的?
查看完整描述

3 回答

?
UYOU

TA貢獻1878條經驗 獲得超4個贊

因為它把事情放到了代碼中,所以沒人問過要在那里。好像您有此代碼:


$foo = bar;

$baz = qxx;

而這個變化:


$foo = bar;

$foo++;

$baz = qxx;

與此更改合并:


$foo = bar;

$foo--;

$baz = qxx;

以某種方式產生的方式:


$foo = bar;

$foo++;

$foo--;

--$baz;

$baz = qxx;

顯然,這是邪惡的。


我想應該引起足夠的關注,man gitglossary因為您的合并算法越介入,它們產生這種事情的可能性就越大。


查看完整回答
反對 回復 2019-10-11
?
慕仙森

TA貢獻1827條經驗 獲得超8個贊

用Linus Torvalds本人的話(摘自git郵件列表):


“邪惡的合并”是指做出來自雙方的更改并且實際上沒有解決沖突的更改


查看完整回答
反對 回復 2019-10-11
?
qq_花開花謝_0

TA貢獻1835條經驗 獲得超7個贊

我認為它可能被稱為“邪惡合并”,因為注釋文件(生成逐行歷史注釋)時,“ git blame”很難解決。


在主分支上開發功能“ A”,在側分支上開發功能“ B”時,可能需要進行邪惡合并,并且這些功能以語義(非文本)方式發生沖突。一個示例是對全局變量使用相同的名稱,但含義不同-這需要為其中一個功能重命名變量。


對于邪惡合并“ git show --cc”具有非空緊湊組合差異(但我不確定是否是等價關系;含義可能只在一個方向上,即“邪惡合并”然后是非空“ git diff-tree -p --cc”)。


查看完整回答
反對 回復 2019-10-11
  • 3 回答
  • 0 關注
  • 513 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號