git 如何同步本地tag与远程tag
問題場景:
同事A在本地創(chuàng)建tagA并push同步到了遠程->同事B在本地拉取了遠程tagA(git fetch)->同事A工作需要將遠程標簽tagA刪除->同事B用git fetch同步遠端信息,git tag后發(fā)現本地仍然記錄有tagA
分析:對于遠程repository中已經刪除了的tag,即使使用git fetch --prune,甚至"git fetch --tags"確保下載所有tags,也不會讓其在本地也將其刪除的。而且,似乎git目前也沒有提供一個直接的命令和參數選項可以刪除本地的在遠程已經不存在的tag(我目前是沒找到有關這類tag問題的git命令~~,有知道的同學可以告知我下,互相進步)。
解決方法:
git tag -l | xargs git tag -d #刪除所有本地分支
git fetch origin --prune #從遠程拉取所有信息
#查詢遠程tags的命令如下:
git ls-remote --tags origin
tag常用git命令:
git tag #列出所有tag
git tag -l v1.* #列出符合條件的tag(篩選作用)
git tag [tag名] #創(chuàng)建輕量tag(無-m標注信息)
git tag -a [tag名] #創(chuàng)建含注解的tag
git push origin --tags #推送所有本地tag到遠程
git push origin [本地tag名] #推送指定本地tag到遠程
git tag -d [本地tag名] #刪除本地指定tag
git push origin :refs/tags/[遠程tag名] #刪除遠程指定tag
git fetch origin?[遠程tag名] #拉取遠程指定tag
git show [tag名] #顯示指定tag詳細信息
轉載于:https://www.cnblogs.com/xiaouisme/p/10857149.html
總結
以上是生活随笔為你收集整理的git 如何同步本地tag与远程tag的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 股票是有价证券吗
- 下一篇: mogodb 设置用户名密码认证