我通常跑步:
git push
git tag v4.7
git push --tags
第一个和第三个操作都连接到服务器,浪费时间。
我想通过只推一次来使其更快。什么命令可以实现这一点?
它位于 bash script 中,并且需要在任何分支中正常运行,而不仅仅是
master
。
阅读手册,我认为
git push all
不是解决方案:
--all:指定推送 refs/heads/ 下的所有引用,而不是命名每个要推送的引用。
--tags:除了命令行上明确列出的 refspec 之外,还会推送 refs/tags 下的所有引用。
最接近的选项可能是:
git push --follow-tags
推送所有在没有此选项的情况下推送的引用,并推送远程中缺少但指向的引用/标签中的带注释标签 提交可以从被推送的参考中到达。
根据
--tags
的文档,您可以指定要推送的其他参考规范。
所以你可以简单地使用
git push --tags origin HEAD
您可以创建别名来快速访问此命令:
git config --global alias.p '!git push && git push --tags'
或
git config --global alias.pa '!git push --all && git push --tags'
现在你可以这样做:
git tag v4.7
git p
您可以阅读有关别名的更多信息这里
从 Git 2.4 开始,您可以使用以下命令同时推送标签和提交:
git push --atomic origin <branch name> <tag>
以下命令将提交与标签引用标签名一起推送到原始主分支:v4.7。
git tag v4.7 -a -m "This the best atomic version ever"
git push --atomic origin master tag-name