git同步远程tag(远程tags删除了但本地一直在),sourcetree自定义操作

前言

在多人同步开发时经常遇到一个人将本地及远端的tag删掉后,另一个人即使fetch远程全部内容,远端被删掉的tag仍然还在,如果这时候再push操作,则之前远端删除的tag又被恢复了,导致tag永远不会被彻底删除

解决方法(参考资料git 如何同步本地、远程的分支和tag信息):

git tag -l | xargs git tag -d #删除所有本地分支
git fetch origin --prune #从远程拉取所有信息`

将这个命令通过SourceTree的自定义操作继承到SourceTree中,步骤如下:

一、设置自定义操作
1.png
2.png

自定义脚本syschroTags.sh的内容

#! /bin/bash
cd $REPO/.git
git tag -l | xargs git tag -d
git fetch origin --prune
git fetch origin --tags
二、执行同步远程的tags到本地
3.png

4.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Git 基础 基本原理 客户端并不是只提取最新版本的文件快照,而是把代码仓库完整的镜像下来。这样一来,任何一处协同...
    __silhouette阅读 16,006评论 5 147
  • 以下内容是我在学习和研究Git时,对Git操作的特性、重点和注意事项的提取、精练和总结,可以做为Git操作的字典,...
    科研者阅读 4,287评论 4 50
  • 以下内容是我在学习和研究Git时,对Git操作的特性、重点和注意事项的提取、精练和总结,可以做为Git操作的字典,...
    科研者阅读 3,595评论 2 19
  • 年少时遇见了一个太过惊艳的人,往后的余生都不想再将就
    能酥能砂是为好糖阅读 183评论 0 0
  • 之舍阅读 238评论 0 0