Git分支與合併

2021-10-17 11:49:43 字數 3018 閱讀 8355

首先,**庫應該有乙個、且僅有乙個主分支。所有提供給使用者使用的正式版本,都在這個主分支上發布。

git主分支的名字,預設叫做master。它是自動建立的,版本庫初始化以後,預設就是在主分支在進行開發。

主分支只用來分布重大版本,日常開發應該在另一條分支上完成。我們把開發用的分支,叫做develop。

這個分支可以用來生成**的最新隔夜版本(nightly)。如果想正式對外發布,就在master分支上,對develop分支進行"合併"(merge)。

git建立develop分支的命令:

git checkout -b develop master

等同於下面兩條:

git branch develop

git checkout develop

將develop分支發布到master分支的命令:

# 切換到master分支

git checkout master

# 對develop分支進行合併

git merge --no-ff develop

–no-ff引數是什麼意思。預設情況下,git執行"快進式合併"(fast-farward merge),會直接將master分支指向develop分支

前面講到版本庫的兩條主要分支:master和develop。前者用於正式發布,後者用於日常開發。其實,常設分支只需要這兩條就夠了,不需要其他了。

但是,除了常設分支以外,還有一些臨時性分支,用於應對一些特定目的的版本開發。臨時性分支主要有三種:

這三種分支都屬於臨時性需要,使用完以後,應該刪除,使得**庫的常設分支始終只有master和develop。

功能分支的名字,可以採用feature-*的形式命名。

建立乙個功能分支:

git checkout -b feature-x develop
開發完成後,將功能分支合併到develop分支:

git checkout develop

git merge --no-ff feature-x

刪除feature分支:

git branch -d feature-x
它是指發布正式版本之前(即合併到master分支之前),我們可能需要有乙個預發布的版本進行測試。

預發布分支是從develop分支上面分出來的,預發布結束以後,必須合併進develop和master分支。它的命名,可以採用release-*的形式。

建立乙個預發布分支:

git checkout -b release-1.2 develop
確認沒有問題後,合併到master分支:

git checkout master

git merge --no-ff release-1.2

# 對合併生成的新節點,做乙個標籤

git tag -a 1.2

再合併到develop分支:

git checkout develop

git merge --no-ff release-1.2

最後,刪除預發布分支:

git branch -d release-1.2
git branch 分支名 // 新建分支

git branch // 檢視當前所有分支

git checkout 分支名 // 檢出分支

git checkout -b 分支名 // 建立並切換分支

git checkout commitid 檔名(檔案路徑下的檔名) 還原這個檔案到對應的commitid的版本

(例如src/page/attendance/attendancesum.vue我想把它還原到2個版本之前 首先git log src/page/attendance/attendancesum.vue找到對應想要還原的版本

複製版本提交的commitid 然後執行git checkout commitid src/page/attendance/attendancesum.vue

這樣就把attendancesum.vue這個單個檔案 還原到了對應版本)

git branch -v // 檢視分支以及提交hash值和commit資訊

git branch -d 分支名 // 刪除分支

git branch -d 分支名 // 強制刪除 若沒有其他分支合併就刪除 d會提示 d不會

git branch -m 舊分支名 新分支名 // 修改分支名

git branch -m 舊分支名 新分支名 // 修改分支名 m強制修改 若與其他分支有衝突也會建立(慎用)

git branch -r // 列出遠端分支(遠端所有分支名)

git branch -r -d origin/branch-name //刪除遠端分支

git branch -a // 檢視遠端分支(列出遠端分支以及本地分支名)

git fetch // 更新remote索引

git push -u origin 分支名 // 將本地分支推送到origin主機,同時指定origin為預設主機,後面就可以不加任何引數使用git push 也可解決 git建立遠端分支//關聯時出現fatal ... upstram的問題

Git建立分支與合併分支

首先,我們建立dev分支,然後切換到dev分支 git checkout b dev 建立dev分支並同時切換到dev分支 switched to a new branch dev git checkout命令加上 b引數表示建立並切換,相當於以下兩條命令 git branch dev git ch...

git建立分支與合併分支

第一步 建立分支 git branch my branch 建立分支my branch 第二步 在自己的分支上進行操作,git status 檢視當前哪些檔案進行了修改,將本地修改的 推送到暫存區 git checkout my branch 切換到自己分支 git status 檢視當前修改了哪些...

三 git分支與合併

1.檢視分支 檢視該git專案有哪些分支使用git branch命令,加 星號 的分支為當前工作的分支,例如 git branch master 2.建立乙個新分支 建立分支仍然使用git branch命令,後面跟上分支的名,例如 git branch experiment 使用git branch...