發表文章

目前顯示的是有「git」標籤的文章

Git Merge Strategies- The first sight

執行merge會把兩個分支上的改動合而為一,git 會用不同的方法去找到commit 改動的源頭,這方法為merge strategies。git merge, git pull 在沒特定用-s去指定合併策略,會自動選擇最適合的方式。 Recursive, pull or merge 預設的merge strategy, 處理兩個分支之間的合併。若在發現欲合併的兩個分支有衝突,則會出現conflict的版本差異,修正後再進行commit。 resolve, 用3-way merge algorithm 去做,遇到差異直接自動合併。會造成合併成功但程式 ,但程式邏輯是被污染。 ours,  不衝突的狀況下就用預設的合併模式,但有衝突則會將用自己的修改為主。 theirs, 與ours相反,在有衝突的狀況下,會是以來自其他branch修改內容為主 octopus, 與許多個branches一次合併。 subtree, 修正版本的3-way merge algorithm,會將其合併的兩個分支,其中一個分支為另一個的sub tree https://www.atlassian.com/git/tutorials/using-branches/merge-strategy