Git远程分支的删除与同步

本文详述了如何删除Git远程分支以及同步本地远程分支,包括遇到的问题和解决方法,如处理远程分支缓存及删除本地多余分支。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

详细版本见个人博客:Git远程分支的删除与同步


本文主要介绍Git同步远程已删除的分支的方法。

一、删除远程分支命令

删除远程分支命令:

git push origin :readme

或者:

git push origin --delete readme

二、同步本地的远程分支

关键问题:另一个用户使用git fetch并不能同步获取到readme分支被删除。

git fetch

此命令没有更新的显示,说明并无删除的信息。

然后执行git pull时,报错:

Your configuration specifies to merge with the ref 'refs/heads/readme'
from the remote, but no such ref was fetched.

这肯定是执行git fetch时,报错。

git fetch origin readme
fatal: Couldn't find remote ref readme

但检查分支时,发现origin/readme还存在。

git branch -a
  dev
  master
* readme
  remotes/origin/HEAD -> origin/master
  remotes/origin/add-license-1
  remotes/origin/dev
  remotes/origin/master
  remotes/origin/readme

这说明,remotes/origin/*这些远程跟踪分支,仅仅是远程分支的一个缓存,并且,不能通过git fetch命令获取到分支删除的更新。

执行命令

git remote show origin
* remote origin
  Fetch URL: git@github.com:dta0502/Data-Analysis-In-Action.git
  Push  URL: git@github.com:dta0502/Data-Analysis-In-Action.git
  HEAD branch: master
  Remote branches:
    add-license-1              tracked
    dev                        tracked
    master                     tracked
    refs/remotes/origin/readme stale (use 'git remote prune' to remove)
  Local branches configured for 'git pull':
    dev    merges with remote dev
    master merges with remote master
    readme merges with remote readme
  Local refs configured for 'git push':
    dev    pushes to dev    (up to date)
    master pushes to master (up to date)

发现refs/remotes/origin/readme状态是stale(陈旧的),并且后面有命令提示。

git remote prune origin
Pruning origin
URL: git@github.com:dta0502/Data-Analysis-In-Action.git
 * [pruned] origin/readme

或者执行

git fetch -p

在执行fetch之后,删除远程不存在的远程跟踪分支。

三、删除本地多余分支

git checkout master
git branch -d readme

详细版本见个人博客:Git远程分支的删除与同步

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值