git:只推特定的标签
AFAIK,git:只推特定的标签,git,tags,Git,Tags,AFAIK,git push--tag将refs/tags下的每个标记推送到远程。我想知道在git中是否有办法只推送一些与通配符或regexp匹配的标记 例如,我的回购协议有标签v1.0,v1.1,v2.0和v2.1。我只想推送v2.*。我试过了 git push <repo> refs/tags/v2.* git推送参考/tags/v2* 然后出错了 致命:refs/tags/v2中REFSEC的远程部分不是有效名称* 当然,我总能做到 cd .git && l
git push--tag
将refs/tags下的每个标记推送到远程。我想知道在git中是否有办法只推送一些与通配符或regexp匹配的标记
例如,我的回购协议有标签v1.0
,v1.1
,v2.0
和v2.1
。我只想推送v2.*
。我试过了
git push <repo> refs/tags/v2.*
git推送参考/tags/v2*
然后出错了
致命:refs/tags/v2中REFSEC的远程部分不是有效名称*
当然,我总能做到
cd .git && ls refs/tags/v2.* | xargs git push <repo>
cd.git&&ls-refs/tags/v2.*xargs-git-push
但这并没有git的味道。git标签| grep'^v2\.| xargs——如果git推送为空,则不会运行
git tag | grep '^v2\.' | xargs --no-run-if-empty git push <repo>
可能不是目录,它可能根本不存在。子模块有指向根存储库的文件。或者您可以将.git
设置为其他位置GIT\u DIR
- 如果没有符合条件的标记,则不希望执行推送
v2.0
,对于分支使用类似stable-2.x
。示例:请参见(“当不明确时,通过采用以下规则中的第一个匹配项来消除歧义”)。因此标记始终优先于分支。很高兴知道。约瑟夫,请你把这些信息添加到你的答案中,我会标记为完成。谢谢git标记| grep'^v2\.
可以简化为git标记-l“v2\.*”
git push <remote> tag <tag>
git push origin tag v2.*