自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

git 協(xié)同工作,怎樣重命名、刪除分支和查找分支的創(chuàng)建者呢?

系統(tǒng) Linux
一旦你使用了git,那么分支將不可避免的會(huì)用到,了解如何管理分支也是非常有幫助的。本文分享使用git分支中常見的一些任務(wù)。

git 的主要優(yōu)勢之一是能夠?qū)⒐ぷ鳌胺植妗钡讲煌姆种А?

當(dāng)你與其他人協(xié)同工作的時(shí)候,分支尤其重要。git的分支機(jī)制是允許多人同時(shí)處理同一個(gè)項(xiàng)目,同一個(gè)文件。用戶可以引入不同的功能部分,然后修改,并合并到主分支中。分支的創(chuàng)建多是由于某種目的或原因,比如添加新的功能,修復(fù)某個(gè)問題等。所以有時(shí)候分支會(huì)被稱為主題分支。

一旦你使用了git,那么分支將不可避免的會(huì)用到,了解如何管理分支也是非常有幫助的。本文分享使用git分支中常見的一些任務(wù)。

重命名分支

如果你不小心將分支名稱寫錯(cuò)了,或者將分支中的內(nèi)容已經(jīng)合并到了主分支,并且該分支想繼續(xù)使用,但用作改其他的bug,或者其他的任務(wù),那么就需要對分支重新命名。

要重命名分支,可以執(zhí)行如下步驟。

1)使用如下命令重命名本地分支:

$ git branch -m <old_branch_name> <new_branch_name>

如果重命名的是當(dāng)前分支,那么當(dāng)前分支名稱(也就是old_branch_name)可以省略。當(dāng)然,上述命令只是重命名分支的副本,也就是存在于你計(jì)算機(jī)中的本地分支。如果該分支存在于遠(yuǎn)程倉庫,那么還需要將分支推送過去,需要執(zhí)行下一步;

2)將重命名后的分支,推送至遠(yuǎn)程倉庫(相當(dāng)于在遠(yuǎn)程倉庫新建了一個(gè)分支):

$ git push origin <new_branch_name>

3)刪掉遠(yuǎn)程倉庫中的舊分支

$ git push origin -d -f <old_branch_name>

刪除分支

在刪除分支之前,一定要確保分支中的內(nèi)容,已經(jīng)被合并到主分支中(或者確保內(nèi)容已經(jīng)做好了備份)。

刪除本地分支

與重命名分支一樣,刪除本地分支其實(shí)只是將分支的副本刪除掉了,如果該分支已經(jīng)被推送到遠(yuǎn)程倉庫,那么遠(yuǎn)程倉庫中的相應(yīng)分支是不會(huì)被刪掉的,其他人還是可以使用的。

1)首先第一步需要檢出主分支(因?yàn)槟悴荒軇h除還在工作中的當(dāng)前分支):

$ git checkout <master_branch_name>

2)列出所有分支(包括本地分支和遠(yuǎn)程分支):

$ git branch -a

3)刪掉本地分支:

$ git branch -d <name_of_the_branch>

如果要?jiǎng)h除主分支以外的所有其他本地分支,可以使用如下命令:

$ git branch | grep -v main | xargs git branch -d

刪除遠(yuǎn)程分支

刪除遠(yuǎn)程分支,也只是會(huì)刪除遠(yuǎn)程倉庫上存在的分支副本。如果刪除遠(yuǎn)程分支后(本地分支沒有刪),后悔了,又不想刪掉了,那么還可以將本地分支重新推送到遠(yuǎn)程倉庫。

1)與刪除本地分支一樣,首先檢出主分支:

$ git checkout <master_branch_name>

2)列出所有分支(包括本地分支和遠(yuǎn)程分支):

$ git branch -a

3)刪除遠(yuǎn)程分支:

$ git push origin -d <name_of_the_branch>

查詢遠(yuǎn)程分支的創(chuàng)建者(作者)

在協(xié)同工作的git倉庫中,可能會(huì)有一些分支,由于某些原因,創(chuàng)建后就不用了。那么作為倉庫管理員,就可能需要通知那些創(chuàng)建者,讓其刪掉不用的分支。那么怎樣才能知道分支是誰創(chuàng)建的呢?可以參照如下步驟。

1)還是檢出主分支:

$ git checkout <central_branch_name>

2)刪除不存在的遠(yuǎn)程分支的分支引用:

$ git remote prune origin

3)列出倉庫中所有遠(yuǎn)程分支的作者,使用 --format 選項(xiàng)以及其他參數(shù)來對結(jié)果進(jìn)行過濾,輸出所需要的信息。其他參數(shù)比如 %(authorname)和 %(refname) 分別表示作者和分支名稱。

$ git for-each-ref --sort=authordate --format='%(authorname) %(refname)' refs/remotes

以下是上述查詢命令輸出結(jié)果的一個(gè)例子:

tux  refs/remotes/origin/dev
agil refs/remotes/origin/main

此外,還可以添加更多的格式,以提高可讀性:

$ git for-each-ref --sort=authordate \
--format='%(color:cyan)%(authordate:format:%m/%d/%Y %I:%M %p)%(align:25,left)%(color:yellow) %(authorname)%(end)%(color:reset)%(refname:strip=3)' \
refs/remotes

結(jié)果如下所示:

01/16/2019 03:18 PM tux      dev
05/15/2022 10:35 PM agil main

還可以使用 grep 來獲取指定分支的作者:

$ git for-each-ref --sort=authordate \
--format='%(authorname) %(refname)' \
refs/remotes | grep <topic_branch_name>

以上就是本次分享全部內(nèi)容。

責(zé)任編輯:龐桂玉 來源: TIAP
相關(guān)推薦

2022-05-25 16:51:41

Git 分支重命名開發(fā)者

2022-10-26 09:22:19

git命令Linux

2022-08-11 15:45:13

Git

2014-08-08 10:20:23

Git版本管理系統(tǒng)

2020-11-21 10:53:55

RFID工業(yè)物聯(lián)網(wǎng)IIOT

2019-10-18 08:18:00

云計(jì)算物聯(lián)網(wǎng)IOT

2022-09-13 11:38:59

物聯(lián)網(wǎng)邊緣計(jì)算人工智能

2020-09-14 09:03:25

RPA分析協(xié)同自動(dòng)化工具

2021-11-24 07:56:56

Git分支命令

2018-06-08 09:27:08

GitLinux開源

2022-05-11 10:09:13

大數(shù)據(jù)區(qū)塊鏈

2022-10-12 23:58:20

物聯(lián)網(wǎng)邊緣計(jì)算數(shù)據(jù)

2023-10-09 08:39:33

Git Flow分支管理模型

2022-11-07 08:01:18

Git分支管理

2020-07-09 08:00:25

Git分支模式

2023-12-01 11:05:29

Git 分支

2021-02-20 06:11:07

Git-Flow工作流分支

2023-02-20 15:21:07

物聯(lián)網(wǎng)工業(yè)4.0

2023-03-24 14:51:05

人工智能大數(shù)據(jù)

2020-05-28 10:45:31

Git分支合并
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)