在 Git 中删除不再位于远程仓库中的本地分支

这篇具有很好参考价值的文章主要介绍了在 Git 中删除不再位于远程仓库中的本地分支。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

git 删除远端已经被删除然而本地还存在的分支

1. 修剪不在远程仓库上的跟踪分支

git remote prune origin
  • 如果git仓库将branch1被删除,可以用用git remote prune origin删除在本地电脑上的remotes/origin/branch1
    • git remote show origin可以看到下面所示,这样的可以通过git remote prune origin删除
      refs/remotes/origin/branch1         stale (use 'git remote prune' to remove)
      
  • 上述只针对Deletes stale references associated with <name>. 分支(stale为三个月没有提交的分支)
    branch1                    不会被删除
    branch2
    remotes/origin/branch1     删除这个
    remotes/origin/branch2
    

2. 本地分支尚未删除,要实现删除本地分支

git branch -vv | grep 'origin/.*: gone]' | awk '{print $1}' | xargs git branch -d

详解:

  • git branch -vv
    该命令显示本地所有分支关联的远程分支,本地存在但是远端不存在的分支为gone状态。
    branch1   ec2d1b1a [origin/branch1: gone] feat: ***
    branch2   cdc6092d [origin/branch2: behind 45] feat: ***
    branch3   e51edba2 [origin/branch3] Merge branch 'branch3' into dev
    
  • grep 'origin/.*: gone]'
    对于上述结果利用grep命令行语句查找gone得到:
    branch1   ec2d1b1a [origin/branch1: gone] feat: ***
    
  • awk '{print $1}'
  • 使用awk命令行语句分割上面结果
    branch1
    
  • xargs git branch -d
    上述过程得到远端已经删除本地还没删除的分支名称,在通过xargs将其作为参数传给下一个命令git branch -d
Deleted branch branch1 (was ec2d1b1a).

参考

git remote prune origin does not delete the local branch even if its upstream remote branch is deleted文章来源地址https://www.toymoban.com/news/detail-705967.html

到了这里,关于在 Git 中删除不再位于远程仓库中的本地分支的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在Git上删除本地分支名称/远程分支名称

    Git删除本地分支名称、远程分支名称 打开idea软件的Terminal控制台 origin是远程仓库的别名,test_2.0是要删除的远程分支名称

    2024年02月14日
    浏览(44)
  • git 拉取远程分支到本地仓库

    查看分支 查看本地仓库的本地分支 查看本地仓库的远程分支 拉取远程分支到本地(未创建本地分支) 拉取远程分支 创建本地分支,将远程分支的代码拉取到本地分支 拉取远程分支到本地(已创建本地分支) 拉取远程分支 切换本地分支 将远程分支的代码拉取到本地分支 如果本

    2024年01月20日
    浏览(41)
  • 如何删除本地和远程的 Git 分支

    我们利用git进行项目管理时,常常需要删除分支,分支分为本地分支和远程分支,本文主要介绍如何删除本地及远程分支。 要删除本地的Git 分支,请按照以下步骤操作: 首先,确保你不在要删除的分支上。可以使用git checkout命令切换到其他分支。例如,切换到 master 分支:

    2024年02月05日
    浏览(32)
  • git本地新建分支,并同步到远程仓库

    1、新建本地分支 2、在远程仓库中新建分支,名称保持一致 3、查看本地分支 4、转到本地分支 5、删除本地分支 6、同步本地分支至远程仓库 7、如果有错误,提示版本不同步,如回退版本后修改了内容并需要同步,这时候可以使用强制推送

    2024年02月11日
    浏览(38)
  • git命令行推送本地分支到远程仓库

    之前说过Git与IDEA强强联合(HTTPS协议连接)那么如何使用命令行来推送代码呢? 如下图所示为一个基于layui的前端代码: 目录工作区文件: 本地内容就是将这些内容推送到远程仓库 首先使用git命令初始化git本地仓库: git init 创建本地仓库 以出现 .git 命令为参考: 创建git仓

    2024年02月02日
    浏览(44)
  • 在Git中将本地分支推送到远程仓库

    这里很明显 我git云端只有一个master分支 然后 我在本地创建了一个develop分支 然后 现在我想将他放在云端 首先 我们要执行 将本地切换到 develop 分支上 因为我这里已经选择的就是了 就不需要了 然后我们执行 这样 刷新云端的页面 develop分支就上去了

    2024年02月09日
    浏览(43)
  • git拉取远程仓库到本地并建立远程分支+各类操作

    我决定自己写一篇文章,不然每次玩git都要找许多文章搞半天才会,很浪费时间!!!!!!!!! 本文包括如何用git将远程仓库拉取到本地、建立远程分支和一些问题的解决方案等,非常之详细!!! 首先在桌面新建一个文件夹,打开该文件夹,点击右键,选择“Git Bas

    2024年02月07日
    浏览(70)
  • Git:从远程仓库拉取最新代码分支合并到本地分支

    在 Git 中,你可以使用 git fetch 和 git pull 命令拉取远程仓库的更新。 git fetch 命令可以让你在合并代码之前查看更新,从而更好地管理你的代码和解决可能的合并冲突。 当然你可以选择在本地创建一个新分支来拉取远程的更新(也可以称之为\\\"临时\\\"分支),然后再将这个新分支

    2024年02月16日
    浏览(50)
  • 【git一些操作】git本地同步远程已删除的分支

    1、查看某个远程仓库的信息 可以查看本地分支的追踪情况,标记\\\"stale\\\"表示本地存在的分支但是远程分支已被删除 2、同步远程的分支到本地 执行命令后再次查看本地分支,远程已删除的分支,本地也已经被删除 3、其他

    2024年02月14日
    浏览(44)
  • 在git远程仓库中创建好分支,但是在本地查不到?

    在使用 git 在远程仓库创建分支后,我想要在本地切换为刚刚创建的分支,报以下错误: $ git checkout ‘fds’ error: pathspec \\\'fds\\\' did not match any file(s) known to git 我们翻译一下: 错误:pathspec“fds”与git已知的任何文件不匹配! 意思就是说本地查不到远程刚刚创建的分支! 远程仓库

    2024年02月13日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包