1. 程式人生 > >Gerrit上分支操作記錄(建立分支、刪除分支)

Gerrit上分支操作記錄(建立分支、刪除分支)

Git分支對於一個專案的程式碼管理而言,是十分重要的!許多久用git的朋友可能已經掌握的很牢固了,但對於一些初涉git的童鞋來說,可能還不是很熟悉。
在此,我將自己的一些操作經歷做一梳理,希望能幫助到有用到的朋友們。

1)首先,利用gitlab進行建立分支
登陸gitlab,建立組test,在這個組上建立工程apptest,然後讓這個工程裡新增內容
注意:在新增內容的使用,我們可以自定義分支名,這個分支就是我們想要建立的分支
如下截圖:

 

這樣,就建立了三個分支:master(預設),test,dev

特別注意:

後面建立的分支都是以前面當前分支為源建立的

所以新建立分支的檔案都會包括前面的分支的檔案,應該將和前面分支重複的檔案刪除!

如:

master分支下是testfile檔案

test分支下是testfile檔案、123檔案,應該將testfile檔案刪除

dev分支下是testfile檔案、123檔案、zhonghon檔案,應該將testfile檔案和zhonghon檔案刪除

如下:

在linux客戶機上操作分支,修改分支下的程式碼並上傳到遠端的git分支上

[[email protected]~]$  git clone [email protected]:test/apptest.git

[[email protected]~]$ git branch -av         #檢視當前分支情況,發現了上面在gitlab裡面建立的三個分組master,dev,test

* master 1c2ecde 12                       #發現當前在master分支下(*指向master)
remotes/origin/HEAD -> origin/master
remotes/origin/dev 6eae416 234
remotes/origin/master 1c2ecde 12
remotes/origin/test d5b51b9 Delete zhonghogn

[[email protected]~]$ vim .gitrevirw

[[email protected]~]$ vim .testr.conf

[[email protected]

~]$ git add .

[[email protected]~]$ git commit -m “add on master"

[[email protected]~]$ git push -u origin master          #提交到master分支下,檢視gitlab上apptest工程下的master分支,已經有這兩個檔案

接著選擇一個非master的分支,如dev分支,修改裡面的程式碼

[[email protected]~]$ git branch dev remotes/origin/dev      #先將遠端gitlab上建立的分支在本地別名化

[[email protected]~]$ git checkout dev         #使用git checkout命令切換到dev分支下
Switched to branch 'dev'
[[email protected]~]$ git branch -av        #檢視當前分支,發現本地有了dev分支了(上面設定過的分支別名)
dev 6eae416 234
master 1c2ecde 12
remotes/origin/HEAD -> origin/master
remotes/origin/dev 6eae416 234
remotes/origin/master 1c2ecde 12
remotes/origin/test d5b51b9 Delete zhonghogn

[[email protected]~]$ vim .gitrevirw            #修改dev分支下的程式碼  

[[email protected]~]$ vim .testr.conf

[[email protected]~]$ git add .

[[email protected]~]$ git commit -m “add on dev"

[[email protected]~]$ git push -u origin dev             #注意,這裡提交到dev分支下
Counting objects: 5, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (4/4), 535 bytes, done.
Total 4 (delta 0), reused 0 (delta 0)
To [email protected]:test/apptest.git
7a4b6e6..6eae416 dev -> dev
Branch dev set up to track remote branch dev from origin.

git push -u origin dev
Counting objects: 5, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (4/4), 535 bytes, done.
Total 4 (delta 0), reused 0 (delta 0)
To [email protected]:test/apptest.git
7a4b6e6..6eae416 dev -> dev
Branch dev set up to track remote branch dev from origin.

這樣就能push到遠端的remotes/origin/dev 上了,去gitlab上看看dev分支下已經有了這兩個檔案.gitreview和.testr.conf

如下:

其他的分支如上面gitlab裡的test分支,要想弄到本地,操作和上面的dev分支操作一樣

*******************************************************

線上部署了gerrit+gitlab環境(程式碼同步),將git程式碼放到上面進行維護管理了!

應開發同事要求,要在他們的專案下建立除master預設分支之外的其他分支

在gerrit上建立分支,這裡我總結了下面兩種情況的操作,在此做一詳細記錄:

 (1)

第一種情況:gerrit上還沒有建立專案

《gerrit上的專案最好是從gitlab上git clone --bare過來,並且專案不要為空》

思路:

先在gitlab上建立分支(上面截圖),然後在linux伺服器(這裡選擇gerrit本機)git clone下載gitlab裡的專案(如上面的apptest)

最後將整個專案釋出到gerrit上

《注意,上面在新分支下新增的.gitreview檔案一定要有,不然就不能使用git review命令提交程式碼稽核了,具體上面參考的另一篇部落格中有說明》

在gerrit的一個普通使用者如wangshibo下操作:

如果修改apptest專案的非master分支下的程式碼,如上面的dev分支

用 gerrit使用者在 Gerrit 上建立 test-project1 專案
要知道 review 是在 gerrit 上,而 gerrit 上現在是沒有專案的,想讓 gitlab 上的專案能在 gerrit 上 review 的話,必須在 gerrit 上建立相同的專案,並有相同的倉庫檔案.

用 gerrit使用者在 Gerrit 上建立 apptest 專案
[[email protected]]$ ssh-gerrit gerrit create-project apptest      #這時候gerrit上其實已經有apptest專案了
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
ssh-gerrit是別名
[[email protected] ~]$ cat ~/.bashrc 
# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
alias ssh-gerrit='ssh -p 29418 -i ~/.ssh/id_rsa 103.10.86.30 -l gerrit' 
# User specific aliases and functions
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

雖然上面建立了apptest專案,並且gerrit介面裡已經有這個專案,但是個空目錄
我們需要將Gitlab上的apptest專案釋出到gerrit上
在此需要用到git clone –bare 命令
[[email protected]]$ cd /home/gerrit/gerrit_site/git/        #即登陸到gerrit安裝目錄的git下
[[email protected] git]$ rm -fr apptest.git
[[email protected] git]$ git clone --bare [email protected]:test/apptest.git
[[email protected] git]$ ls
All-Projects.git All-Users.git apptest.git 
[[email protected] git]$ cd apptest.git/ 
[[email protected] git]$ ls              #即test-project1工程和gerrit裡預設的All-Projects.git工程結構是一樣的了
branches config description HEAD hooks info objects packed-refs refs


登陸gerrit介面,發現apptest工程已經建立了。

 

接著修改非master分支,比如dev分支的程式碼並提交到gerrit裡稽核

[[email protected]~]# su - wangshibo    #切換到gerrit的使用者使用者wangshibo下

[[email protected]~]$ git branch -av            #檢視本地的分支結構

* master 1c2ecde 12
remotes/origin/HEAD -> origin/master
remotes/origin/dev 6eae416 234
remotes/origin/master 1c2ecde 12
remotes/origin/test d0ef218 444

[[email protected]~]$ git branch dev remotes/origin/dev    將遠端分支本地別名化

[[email protected]~]$ git checkout dev           # 切換到dev分支下

[[email protected]~]$ vim haha

[[email protected]~]$git add haha

[[email protected]~]$git commit -m "23232323"

[[email protected]~]$git review dev             #提交程式碼稽核的時候,注意要指定提交到分支dev上稽核

然後用wangshibo使用者登入gerrit,進行稽核

稽核通過後,通過apptest的dev分支的gitweb就能檢視到提交的程式碼,如下:

 

Gerrit裡面分支程式碼稽核通過後,會自動同步到Gitlab上相應工程的分支下的

也就是說:Gerrit到Gitlab的同步策略包含所有的分支!

***************************************************************************

第二種情況:gerrit上已經建立好了專案,後續建立分支並插入到gerrit的專案裡:

【gerrit上對應專案的access的refs/heads/*的“push”許可權可以執行推送程式碼和分支到gerrit上;“Create Reference”許可權執行建立分支;】

首先在gerrit介面建立分支(這裡新建立分支ops),如下:

管理員帳號登陸gerrit,點選apptest專案的Branches->Create Branch  (預設的initial Revision是HEAD)

剛建立後,會發現新分支和mater分支的Revision一致,HEAD指標是一致的

接著在本地git clone把程式碼重新克隆下來,

比如上面在gerrit裡已經建立好了apptest專案,將這個專案clone到本地

[[email protected]~ ]$ git clone ssh://[email protected]:29418/apptest && scp -p -P 29418 [email protected]:hooks/commit-msg apptest/.git/hooks/

[[email protected]~ ]$ cd apptest

[[email protected]~ apptest]$ git branch -av         #檢視分支情況,已經可以發現gerrit介面裡建立的新分支ops
* master 486e140 Merge "123"         #當前在master分支下
remotes/origin/HEAD -> origin/master
remotes/origin/dev 27a1d5c 343434
remotes/origin/master 486e140 Merge "123"     #新分支剛建立時,跟當前所在分支的ID是一致的
remotes/origin/ops 486e140 Merge "123"
remotes/origin/test d0ef218 444

[[email protected]~ apptest]$ git checkout -b ops remotes/origin/ops     #將新建分支在本地別名化,並切換進去
Branch ops set up to track remote branch ops from origin.
Switched to a new branch 'ops'
[[email protected]~ apptest]$ git branch -av      再檢視,發現當前分支就是ops了
master 486e140 Merge "123"
* ops 486e140 Merge "123"
remotes/origin/HEAD -> origin/master
remotes/origin/dev 27a1d5c 343434
remotes/origin/master 486e140 Merge "123"
remotes/origin/ops 486e140 Merge "123"
remotes/origin/test d0ef218 444

千萬記住一點::

新分支建立後,是和建立時的當前所在分支下的內容是一致的。

切換到新建分之以後,如果不清空當前內容,直接push上去,那該分支程式碼和你切換之前的分支是一樣的。

所以要刪除新分支裡的內容,然後再push提交,提交後檢視分支情況,就會發現新建分支和之前的分支的 Revision指向就不一樣了,如下:

[[email protected]~apptest]$ rm -rf ./*
[[email protected]~ apptest]$ git add .
[[email protected]~ apptest]$ git commit -am "222"    #因為前面是直接rm刪除的,所以這裡commit要多加一個-a,如果是git rm刪除就不用加-a
[ops 3a26276] 222
2 files changed, 0 insertions(+), 2 deletions(-)
delete mode 100644 haha
delete mode 100644 zhonghogn
[[email protected] apptest]$ git push -u origin ops       #這裡是gerrit管理員下,所以可以直接push,普通使用者就git review ops了
Counting objects: 3, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 246 bytes, done.
Total 2 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1)
remote: Processing changes: refs: 1, done 
To ssh://[email protected]:29418/apptest
486e140..3a26276 ops -> ops
Branch ops set up to track remote branch ops from origin.

這時候再檢視分支情況,就會發現ops分支和master分支的ID不一樣了

[[email protected] apptest]$ git branch -av
master 486e140 Merge "123"
* ops 3a26276 222
remotes/origin/HEAD -> origin/master
remotes/origin/dev 27a1d5c 343434
remotes/origin/master 486e140 Merge "123"
remotes/origin/ops 3a26276 222
remotes/origin/test d0ef218 444

再次登入gerrit介面,就會發現Revision自然也就不一致了,ops分支下的內容和master分支下的內容也不一樣了

 ops分支下這個時候還是空的(上面已經清空了)

接著就可以往ops分支裡建立或修改程式碼了,如下:

[[email protected]~ ]# su - wangshibo                 #切換到gerrit普通使用者wangshibo賬號下操作
[[email protected]~ ]$ git clone ssh://[email protected]:29418/apptest && scp -p -P 29418 [email protected]:hooks/commit-msg apptest/.git/hooks/
[[email protected]~ ]$ cd apptest/
[[email protected]~ ]$ git branch -av              #檢視分支,當前分支是master
* master 486e140 Merge "123"
remotes/origin/HEAD -> origin/master
remotes/origin/dev 27a1d5c 343434
remotes/origin/master 486e140 Merge "123"
remotes/origin/ops 3a26276 222
remotes/origin/test d0ef218 444
[[email protected]~ ]$ git checkout -b ops remotes/origin/ops          #將遠端分支本地別名化
Branch ops set up to track remote branch ops from origin.
Switched to a new branch 'ops'
[[email protected]~ ]$ git branch -av              #發現當前分支已經是ops了
master 486e140 Merge "123"
* ops 3a26276 222
remotes/origin/HEAD -> origin/master
remotes/origin/dev 27a1d5c 343434
remotes/origin/master 486e140 Merge "123"
remotes/origin/ops 3a26276 222
remotes/origin/test d0ef218 444
[[email protected]~ ]$ ls                                 #沒有內容,上面已經提到,切換後就講內容清空了
[[email protected]~ ]$ vim testfile                   #新增內容
[[email protected]~ ]$ git add testfile 
[[email protected]~ ]$ git commit -m "branch test"
[ops ba9572e] branch test
1 files changed, 2 insertions(+), 0 deletions(-)
create mode 100644 testfile
[[email protected]~ ]$ git review ops                #提交程式碼稽核,提交是指定到分支ops裡
Creating a git remote called "gerrit" that maps to:
ssh://[email protected]:29418/apptest.git
remote: Processing changes: new: 1, refs: 1, done 
remote: 
remote: New Changes:
remote: http://103.10.86.30:80/64 branch test
remote: 
To ssh://[email protected]:29418/apptest.git
* [new branch] HEAD -> refs/publish/ops

登陸gerrit,就會發現有個review的稽核請求了

通過稽核

這個時候,review稽核已經通過了

通過apptest專案的ops分支的gitweb就能看到新增的程式碼了

最後,登陸Gitlab,就能發現相應專案的分支程式碼也都同步過來了(前提是gerrit裡面做了相應的replication同步配置)!很神奇的~~~~~

*********************************************************************** ************** ********* 

如何刪除gerrit介面上建立的分支?也可以理解在本地如何刪除遠端分支:

git 刪除遠端分支
一不小心把本地的臨時分支push誤提交到server上去了,想要刪除。
[[email protected] ~]$ git branch -av
master
remote/origin/master
remote/origin/origin/master     #這個就是誤提交的分支

這個時候,執行下面命令即可刪除遠端分支
[[email protected] ~]$git push origin :origin/master

冒號前面的空格不能少,原理是把一個空分支push到server上,相當於刪除該分支。其實也是一個push推送過程,只不過是推送的空的而已!

比如下面一例,在本地誤提交了一個分支到遠端的gerrit上了!現在需要刪除。

[[email protected] GItLearn]$ git branch -av
* master 44f4b3a Add new file
remotes/origin/HEAD -> origin/master
remotes/origin/dev 44f4b3a Add new file
remotes/origin/master 44f4b3a Add new file
remotes/origin/remotes/origin/devlop dc21d7f 123          #刪除這個多餘的分支

[[email protected] GItLearn]$ git push origin :remotes/origin/devlop
remote: Processing changes: refs: 1, done 
To ssh://[email protected]:29418/GItLearn
- [deleted] remotes/origin/devlop
[[email protected] GItLearn]$ git branch -av #再次檢視,上面多餘的分支已經刪除了!
devlop dc21d7f 123
* master 44f4b3a Add new file
remotes/origin/HEAD -> origin/master
remotes/origin/dev 44f4b3a Add new file
remotes/origin/master 44f4b3a Add new file

再次登陸gerrit檢視,上面多餘的分支就沒有了!

************************************************************************************************

如何在本地建立分支,然後上傳到gerrit上?也可以理解為在本地建立分支,然後推送到遠端新分支上:

命令格式如下:
#git push origin local_branch:remote_branch

注意:
這個操作,local_branch必須為你本地存在的分支,remote_branch為遠端分支,如果remote_branch不存在則會自動建立分支。

只不過這個上傳到遠端後,分支內容是和master分支內容是一樣的!

另外:
#git push origin :remote_branch
上面的local_branch留空(即冒號前面留有空格),則是刪除遠端remote_branch分支。(上面已經提到了!)

如下面的例子:
[[email protected] GItLearn]$ git branch -av
* master 44f4b3a Add new file
remotes/origin/HEAD -> origin/master
remotes/origin/dev 44f4b3a Add new file
remotes/origin/master 44f4b3a Add new file


本地建立分支devlop,然後上傳到gerrit上:
[[email protected] GItLearn]$ git branch devlop                #新建devlop分支
[[email protected] GItLearn]$ git branch -av
devlop 44f4b3a Add new file
* master 44f4b3a Add new file
remotes/origin/HEAD -> origin/master
remotes/origin/dev 44f4b3a Add new file
remotes/origin/master 44f4b3a Add new file
[[email protected] GItLearn]$ git push origin devlop:devlop       #上傳到遠端gerrit上,gerrit上若沒有devlop,則會自動建立
Total 0 (delta 0), reused 0 (delta 0)
remote: Processing changes: refs: 1, done 
To ssh://[email protected]:29418/GItLearn
* [new branch] devlop -> devlop
[[email protected] GItLearn]$ git branch -av         #再次檢視,發現已經上傳到遠端gerrit上了
devlop 44f4b3a Add new file
* master 44f4b3a Add new file
remotes/origin/HEAD -> origin/master
remotes/origin/dev 44f4b3a Add new file
remotes/origin/devlop 44f4b3a Add new file
remotes/origin/master 44f4b3a Add new file

登陸gerrit檢視,發現已經有了這個分支了!【這樣上傳後,分支內容和master分支內容是一樣的,因為在本地建立devlop分支的時候,當前分支是master】

************************************************************************************************

將遠端gerrit上的程式碼分支遷移到本地新的gerrit分支上
遷移流程:
1.先將遠端gerrit整個程式碼clone到本地(預設遷移過來後的當前分支是master)
2.clone到本地後,檢視分支列表
3.在本地gerrit上建立同名分支
4.切換到clone下來的程式碼的各個分支,然後將分支內容push到本地新gerrit上的同名分支上

*******
把本地倉庫提交到遠端倉庫的master分支中(其他分支操作一樣)
git push ssh://[email protected]:29418/apptest_ios.git master #或者像上面一樣,將遠端分支本地化,然後一步步提交

相關推薦

Gerrit分支操作記錄建立分支刪除分支

Git分支對於一個專案的程式碼管理而言,是十分重要的!許多久用git的朋友可能已經掌握的很牢固了,但對於一些初涉git的童鞋來說,可能還不是很熟悉。 在此,我將自己的一些操作經歷做一梳理,希望能幫助到有用到的朋友們。 1)首先,利用gitlab進行建立分支 登陸gitlab,建立組test,在這個組上

騰訊開放平臺的應用認領,問題和命令操作記錄MacOS下,Win同理

騰訊開放平臺的應用接入,可以接入應用寶、QQ物聯等平臺,為開發者提供釋出和推廣應用的渠道。近日,筆者在騰訊開放平臺上新增一個應用,出現已有相同應用存在的提示,並且平臺提示進行應用認領,筆者在應用寶市場對要提交的應用進行搜尋,不管中英文、長短詞都搜尋不到,奇怪之下,問了下官方,

操作excel讀excel修改excel

電腦 nbsp 方法 循環 value 特殊 sele ron 內容 練習 需求:只要你傳入一個表名,就能把所有的數據導入出來,字段名是excel的表頭 1、要動態獲取到表的字段 cur.description能獲取到表的字段 fileds = [ f

Linux從0到1④檔案管理建立複製移動刪除檢視

建立 1.檔案(touch) touch命令用於建立空白檔案或者設定檔案時間 格式:touch [選項] [檔案] [[email protected] ~]#touch file1.txt //無則建立,有則修改時間 [[ema

資料庫索引基本知識建立索引刪除索引修改索引

索引分類: 主鍵索引: 不能為null,唯一索引可以為null 單值索引: 單列,每個表可以有多個 唯一索引: 不能重複 複合索引: 多個列構成的索引,相當於二級目錄 name,age 兩個張

在eclipse中使用github進行代碼的操作以及如何建立分支

默認 java github 根據 最好 建立 右擊 遠程 gpo Eclipse或STS對github進行基本操作 一.Github上傳代碼 1. 首先新建一個maven或者其他java項目。 接著把本地默認的git存放項目地址改變一下。 以上git項目存放地址

第一篇隨記:學習WAMP中最基礎的JDBC連線操作記錄 StatementPreparedStatement和CallableStatement

用Statement實現資料庫連線: <%@ page contentType="text/html" pageEncoding="UTF-8" %> <%@ page import="java.sql.*" %> <html>   <

在 UIView 新增返回一級操作介面手勢

系統:手勢 ——> target ----> action 自己建立的介面新增手勢 :UIView —> 建立手勢 —> target —> action 第一種方法 獲取到系統的返回上一級介面的手勢,新增到 UIView 上

input[type=file]傳文件格式判斷文件大小傳成功後操作

type=file *** chang change 文件 == asd 使用 jpg var isUploadImg = false; //在input file內容改變的時候觸發事件******************上傳圖片

SVN建立,切換,合併,刪除分支

1.建立分支 右擊已經存在的SVN專案->branch/tag,彈出框的to path輸入新的分支名稱,建議/branch/xxx,點選OK就創建出xxx分支.(建議建立前先svn update) 2.切換分支 右擊已經存在的SVN專案->switch,彈出框的to

php使用新浪雲Storage儲存傳下載檔案,建立bucketBucket 操作Object 操作,Object 下載操作,Object 刪除操作Object 複製操作,生成一個外網能夠訪

<?php //新浪雲 Storage PHP use use sinacloud\sae\Storage as Storage; // 方法一:在新浪雲執行環境中時可以不傳認證資訊,預設會從應用的環境變數中取 $s = new Storage();

二叉樹的基本操作實現建立先序中序後序層序

[問題描述] 建立一棵二叉樹,試程式設計實現二叉樹的如下基本操作: 1. 按先序序列構造一棵二叉連結串列表示的二叉樹T; 2. 對這棵二叉樹進行遍歷:先序、中序、後序以及層次遍歷,分別輸出結點的遍歷序列;  [基本要求] 從鍵盤接受輸入(先序),以二叉連結串列作為儲存結

Git 標籤管理建立標籤操作標籤

【什麼是標籤】 通常,釋出一個版本時,會在版本庫中打一個標籤(tag),這樣,就唯一確定了打標籤時刻的版本。將來無論什麼時候,取某個標籤的版本,就是把那個打標籤的時刻的歷史版本取出來。所以,標籤也是版本庫的一個快照。 簡單理解:標籤是某個版本的別名,因為Git的版本號都是用一串字母數字組

Raspberry PI操作GPIOGPIO程式設計,遠端控制GPIO

一 Raspberry PI的GPIO 1. 什麼是GPIO 2. Raspberry上的GPIO介紹   二Raspberry PI上程式設計操作GPIO 1. Python操作 (1) 安裝環境      a.下載控制GPIO的python庫:http://pypi.

Git命令檢視建立切換刪除分支

對於有些IDE檢出程式碼很困難,所以不得已的情況下使用git命令是最高效快捷的。熟悉瞭解Git基本的命令操作是很有必要的,這篇文章主要講對程式碼分支的操作。1. 檢視遠端分支 $ git branch -a   * br-2.1.2.2

C#--第11周實驗--任務1建立Windows窗體應用程式--設計一個窗體--單擊按鈕時,在標籤顯示當前系統時間 .

/* (程式頭部註釋開始)    * 程式的版權和版本宣告部分    * Copyright (c) 2011, 煙臺大學計算機學院學生     * All rights reserved.    * 檔名稱:設計一個窗體   * 版 本 號: V1.0     * 對任務

C#--第11周實驗--任務1建立Windows窗體應用程式--設計一個窗體--單擊按鈕時,在標籤顯示當前系統時間

Form.cs /* (程式頭部註釋開始) * 程式的版權和版本宣告部分 * Copyright (c) 2011, 煙臺大學計算機學院學生 * All rights reserved. * 檔名稱:設計一個窗體 * 作 者: 雷恆鑫

定時備份windows機器的檔案到linux伺服器操作梳理rsync

開發十年,就只剩下這套架構體系了! >>>   

IOS xib在tableview的簡單應用通過xib自定義cell

make aso eat 常用 last creat path ins div UITableView是一種常用的UI控件,在實際開發中,由於原生api的局限,自定義UITableViewCell十分重要,自定義cell可以通過代碼,也可以通過xib。 這篇隨筆介紹的是通過

git 查看遠程分支本地分支創建分支分支推到遠程repository刪除本地分支

cli one cmd util ace http span toc tor git 查看遠程分支、本地分支、創建分支、把分支推到遠程repository、刪除本地分支 [plain] view plain copy $ git branch -