在 Git 中從 master 更新分支

Abdul Jabbar 2023年1月30日 2022年4月22日
  1. 在 Git 中使用 merge 命令更新主分支
  2. 使用 rebase 命令更新主分支
在 Git 中從 master 更新分支

當在 Git 中與許多開發人員和分析師同時在各個分支上工作時,我們可能會遇到許多問題。一個常見的問題是當一名團隊成員在他的本地分支中進行更改,而其他人在該遠端分支上工作,然後將他們的更改合併到遠端主分支。

此外,如果我們推送正在工作的本地分支而不拉取遠端主分支,那麼我們必須在遠端主分支中重寫其他開發人員的更改。

這篇文章是關於 git update master branch 命令的,我們將討論完整的 Git 更新分支模型。分支功能可以在大多數現代和獨特的版本控制系統中找到。

在 Git 中,最重要和最有用的特性是分支,它是我們日常開發過程的一部分。本文將指導我們使用下面提到的方法更新 Git 分支。

如果我們希望我們的 git 功能分支使用來自 master 分支的新更改進行更新,我們需要遵循以下任一技術:

  • 合併
  • 變基

合併建立更多的提交,而 rebase 會重寫倉庫中的歷史記錄。

假設我們在我們建立的倉庫中的任何功能分支上,以便在我們的開發過程中新增子功能。

分支的當前狀態如下。

git branch
* feature branch

並且在倉庫的 origin/master 分支上有新的提交可用:

git fetch

From git repository
   xyz88874..def74125  master -> origin/master

那麼我們如何將上面的提交從本地分支合併到主分支呢?我們現在有兩個解決方案,第一個是使用 merge 命令,另一個是 Git 中的 rebase 命令。

在 Git 中使用 merge 命令更新主分支

由於我們想要將本地分支的最新提交合併到主分支,我們可以使用以下命令來合併提交。

git merge origin/master

當我們要將本地分支的更改提交到遠端分支時,如果我們在其中發現一些衝突,我們將首先將衝突合併到一個檔案中併為其建立一個新的合併提交。如果我們在工作目錄中沒有發現衝突,則會將新的提交直接推送到遠端分支。

使用 rebase 命令更新主分支

由於我們想要將最新的提交從本地分支變基到主分支,那麼我們可以使用下面的命令來變基提交。

git rebase origin/master

Rebase 將特性分支的所有不同提交向上移動。這表明分歧的提交現在將由 \new commit hashes\ 組成,因為它的歷史將再次寫入主分支。

此外,如果我們的功能分支已經推送到遠端主分支,那麼我們需要強制推送以使其更新:

git push origin feature --force

但是,如果其他開發人員已經檢查了該功能分支,則不建議使用此方法,最好在這種情況下堅持使用合併命令。

Author: Abdul Jabbar
Abdul Jabbar avatar Abdul Jabbar avatar

Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.

LinkedIn

相關文章 - Git Branch