一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Git查看、刪除、重命名遠(yuǎn)程分支和tag | zrong's blog

 Penjoyer 2015-07-25
  • 本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或者翻譯。
  • 本站文章歡迎各種形式的轉(zhuǎn)載,但請(qǐng)18歲以上的轉(zhuǎn)載者注明文章出處,尊重我的勞動(dòng),也尊重你的智商;
  • 本站部分原創(chuàng)和翻譯文章提供markdown格式源碼,歡迎使用文章源碼進(jìn)行轉(zhuǎn)載;
  • 本文標(biāo)題:Git查看、刪除、重命名遠(yuǎn)程分支和tag
  • 本文鏈接:http:///post/1746.htm

Git查看、刪除、重命名遠(yuǎn)程分支和tag

  • 2015-06-15:加入姊妹篇;
  • 2013-11-06:加入重命名遠(yuǎn)程分支的內(nèi)容;
  • 2013-01-09:加入刪除遠(yuǎn)程tag的內(nèi)容。

姊妹篇:使用Git、Git GUI和TortoiseGit


這篇文章記錄我在使用git的過(guò)程中碰到遠(yuǎn)程分支和tag的相關(guān)內(nèi)容,提綱:

  1. 查看遠(yuǎn)程分支
  2. 刪除遠(yuǎn)程分支和tag
  3. 刪除不存在對(duì)應(yīng)遠(yuǎn)程分支的本地分支
  4. 重命名遠(yuǎn)程分支
  5. 把本地tag推送到遠(yuǎn)程
  6. 獲取遠(yuǎn)程tag

查看遠(yuǎn)程分支

加上-a參數(shù)可以查看遠(yuǎn)程分支,遠(yuǎn)程分支會(huì)用紅色表示出來(lái)(如果你開了顏色支持的話):

$ git branch -a
  master
  remote
  tungway
  v1.52
* zrong
  remotes/origin/master
  remotes/origin/tungway
  remotes/origin/v1.52
  remotes/origin/zrong

刪除遠(yuǎn)程分支和tag

在Git v1.7.0 之后,可以使用這種語(yǔ)法刪除遠(yuǎn)程分支:

$ git push origin --delete <branchName>

刪除tag這么用:

git push origin --delete tag <tagname>

否則,可以使用這種語(yǔ)法,推送一個(gè)空分支到遠(yuǎn)程分支,其實(shí)就相當(dāng)于刪除遠(yuǎn)程分支:

git push origin :<branchName>

這是刪除tag的方法,推送一個(gè)空tag到遠(yuǎn)程tag:

git tag -d <tagname>
git push origin :refs/tags/<tagname>

兩種語(yǔ)法作用完全相同。

刪除不存在對(duì)應(yīng)遠(yuǎn)程分支的本地分支

假設(shè)這樣一種情況:

  1. 我創(chuàng)建了本地分支b1并pull到遠(yuǎn)程分支 origin/b1
  2. 其他人在本地使用fetch或pull創(chuàng)建了本地的b1分支;
  3. 我刪除了 origin/b1 遠(yuǎn)程分支;
  4. 其他人再次執(zhí)行fetch或者pull并不會(huì)刪除這個(gè)他們本地的 b1 分支,運(yùn)行 git branch -a 也不能看出這個(gè)branch被刪除了,如何處理?

使用下面的代碼查看b1的狀態(tài):

$ git remote show origin
* remote origin
  Fetch URL: git@github.com:xxx/xxx.git
  Push  URL: git@github.com:xxx/xxx.git
  HEAD branch: master
  Remote branches:
    master                 tracked
    refs/remotes/origin/b1 stale (use 'git remote prune' to remove)
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git push':
    master pushes to master (up to date)

這時(shí)候能夠看到b1是stale的,使用 git remote prune origin 可以將其從本地版本庫(kù)中去除。

更簡(jiǎn)單的方法是使用這個(gè)命令,它在fetch之后刪除掉沒(méi)有與遠(yuǎn)程分支對(duì)應(yīng)的本地分支:

git fetch -p

重命名遠(yuǎn)程分支

在git中重命名遠(yuǎn)程分支,其實(shí)就是先刪除遠(yuǎn)程分支,然后重命名本地分支,再重新提交一個(gè)遠(yuǎn)程分支。

例如下面的例子中,我需要把 devel 分支重命名為 develop 分支:

$ git branch -av
* devel                             752bb84 Merge pull request #158 from Gwill/devel
  master                            53b27b8 Merge pull request #138 from tdlrobin/master
  zrong                             2ae98d8 modify CCFileUtils, export getFileData
  remotes/origin/HEAD               -> origin/master
  remotes/origin/add_build_script   d4a8c4f Merge branch 'master' into add_build_script
  remotes/origin/devel              752bb84 Merge pull request #158 from Gwill/devel
  remotes/origin/devel_qt51         62208f1 update .gitignore
  remotes/origin/master             53b27b8 Merge pull request #138 from tdlrobin/master
  remotes/origin/zrong              2ae98d8 modify CCFileUtils, export getFileData

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

$ git push --delete origin devel
To git@github.com:zrong/quick-cocos2d-x.git
 - [deleted]         devel

重命名本地分支:

git branch -m devel develop

推送本地分支:

$ git push origin develop
Counting objects: 92, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (48/48), done.
Writing objects: 100% (58/58), 1.38 MiB, done.
Total 58 (delta 34), reused 12 (delta 5)
To git@github.com:zrong/quick-cocos2d-x.git
 * [new branch]      develop -> develop

然而,在 github 上操作的時(shí)候,我在刪除遠(yuǎn)程分支時(shí)碰到這個(gè)錯(cuò)誤:

$ git push --delete origin devel
remote: error: refusing to delete the current branch: refs/heads/devel
To git@github.com:zrong/quick-cocos2d-x.git
 ! [remote rejected] devel (deletion of the current branch prohibited)
error: failed to push some refs to 'git@github.com:zrong/quick-cocos2d-x.git'

這是由于在 github 中,devel 是項(xiàng)目的默認(rèn)分支。要解決此問(wèn)題,這樣操作:

  1. 進(jìn)入 github 中該項(xiàng)目的 Settings 頁(yè)面;
  2. 設(shè)置 Default Branch 為其他的分支(例如 master);
  3. 重新執(zhí)行刪除遠(yuǎn)程分支命令。

把本地tag推送到遠(yuǎn)程

git push --tags

獲取遠(yuǎn)程tag

git fetch origin tag <tagname>

參考文章

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    视频在线播放你懂的一区| 国产原创激情一区二区三区| 中国少妇精品偷拍视频| 欧美日韩亚洲精品内裤| 亚洲精品欧美精品日韩精品| 亚洲av日韩一区二区三区四区| 日韩三级黄色大片免费观看| 91精品蜜臀一区二区三区| 国产内射在线激情一区| 在线免费视频你懂的观看| 少妇熟女精品一区二区三区| 精品国模一区二区三区欧美| 日韩国产传媒在线精品| 91精品蜜臀一区二区三区| 98精品永久免费视频| 日本黄色录像韩国黄色录像| 丝袜av一区二区三区四区五区 | 欧美美女视频在线免费看| 九九热在线视频精品免费| 午夜福利视频日本一区| 欧美精品久久99九九| 欧美一区二区在线日韩| 爽到高潮嗷嗷叫之在现观看| 日韩在线视频精品视频| 日韩人妻免费视频一专区| 少妇成人精品一区二区| 日韩欧美黄色一级视频| 中国少妇精品偷拍视频 | 亚洲精品国产主播一区| 国产又色又爽又黄又大| 亚洲精品欧美精品日韩精品| 亚洲中文字幕一区三区| 在线观看国产成人av天堂野外| 国产亚洲午夜高清国产拍精品| 亚洲国产婷婷六月丁香| 欧美一级特黄特色大色大片| 好吊妞视频这里有精品| 日韩一级毛一欧美一级乱| 国产一级一片内射视频在线| 亚洲国产日韩欧美三级| 亚洲中文字幕在线综合视频|