在Git 中合併與強制覆蓋| D棧- Delft Stack
文章推薦指數: 80 %
大多數時候,當我們應用 git push 或 git merge 時,最終會發生一些衝突。
在某些情況下,合併衝突的解決方案就像丟棄本地更改或遠端或其他分支更改一樣 ...
Git貼士
GitHEAD^vsGitHEAD~vsGitHEAD{@}
GitSwitch和Checkout的區別
Git中列出子模組
IntelliJIDEA中的GitStash與Shelve
在Git中獲取程式碼的最新版本
將Meld設定為Git的Difftool和Mergetool
為Git設定SourceGearDiffMerge工具
配置代理以使用Git
reportthisad
貼士文章
Git貼士
在Git中合併與強制覆蓋
大多數時候,當我們應用gitpush或gitmerge時,最終會發生一些衝突。
在某些情況下,合併衝突的解決方案就像丟棄本地更改或遠端或其他分支更改一樣簡單。
當Git無法弄清楚如何合併兩個衝突的更改時,它會建立一個衝突請求。
衝突請求是一種描述問題的特殊補丁,它包含衝突更改的雙方(我們的和他們的)以及合併嘗試的結果。
當兩個團隊成員處理相同的檔案並在該檔案中發生衝突時,Git將衝突應用於我們的工作檔案。
然後我們可以編輯生成的檔案,Git將記錄我們的更改。
如果確實發生了衝突更改,Git會將檔案標記為處於衝突狀態。
有幾個命令可以解決該特定分支中的衝突。
當兩個或更多人在同一個倉庫中處理同一個檔案時,衝突最常見。
但是,當在檔案中發現衝突時,Git會非常聰明和聰明地以非常棒的方式解決衝突。
Git使用衝突標記來顯示檔案的哪些部分發生衝突。
衝突標記是放置在檔案衝突部分兩側的小雜湊。
拉不單獨使用。
它在從遠端伺服器獲取資料的幫助下使用,然後與本地倉庫中的更改應用合併。
如果我們願意,可以執行下面提到的這兩個操作。
gitfetch
gitmergeorigin/$CURRENT_BRANCH
上面提到的origin/$CURRENT_BRANCH的含義如下。
Git將應用合併選項並應用來自遠端倉庫的更改,即origin。
這被新增到$CURRENT_BRANCH
目前在我們本地簽出的分支機構中不存在
gitpull不僅是推薦的,它只是執行gitfetch後跟gitmerge。
我們將進行3次合併,通過這些合併,Git將執行3次fetch操作,其中一次fetch就是我們所需要的。
gitfetchorigin#itwillupdateallourorigin/*remote-trackingbranches
gitcheckoutnewbranch
gitmergeorigin/newbranch
gitcheckoutmaster
gitmergeorigin/master
gitmerge-Xtheirsnewbranch
gitpushoriginmaster
上面提到的命令將有效地忽略我們要合併的分支上的任何不同更改,並在我們要合併到的分支上開發一個新的提交,所有提交都在該分支上合併。
我們還可以在普通合併中使用--ours來合併我們要合併的分支中的所有更改,然後跳過我們要合併到的分支中存在的任何檔案,有效地在兩者之間進行三向合併分支,然後只使用要合併到的分支中的檔案。
PleaseenableJavaScript中國八字2023黑水兔
我們發現使用gitmerge--ours合併檔案然後使用gitrebase-i手動重新應用我要合併的分支中的更改要容易得多。
上述命令不適用於有衝突的檔案,但我們發現以下命令可以解決衝突。
gitcheckoutfile_with_conflict
gitmerge--ours--no-commitfile_from_branch_with_conflict
gitreset--hardgitaddfile_with_conflictgitcommit-m
相關文章-GitMerge
在Git中合併檔案而不自動提交
在Git中刪除已合併的分支
Git合併倉庫
Git撤消合併
在Git中合併本地分支在Git中將提交移動到另一個分支
xx
延伸文章資訊
- 1在Git 中合併與強制覆蓋| D棧- Delft Stack
大多數時候,當我們應用 git push 或 git merge 時,最終會發生一些衝突。在某些情況下,合併衝突的解決方案就像丟棄本地更改或遠端或其他分支更改一樣 ...
- 2合併發生衝突了,怎麼辦? - 為你自己學Git | 高見龍
git status On branch cat You have unmerged paths. (fix conflicts and run "git commit") (use "git ...
- 3Introduction to Git rebase and force-push - GitLab Docs
Introduction to Git rebase and force-push, methods to resolve merge conflicts through the command...
- 4Force merge in Git - Medium
Force merge in Git · 1. create copy (for backup). // go to feature branch git switch(or checkout)...
- 5git merge force overwrite local Code Example
Merge branch_b into branch you're in. 5. git merge <branch_name>. 6. . 7. # Force merge if the b...