繁体   English   中英

来自远程标签的Git分支

[英]Git branch from remote tag

我创建了一个从另一个远程存储库镜像的新本地git存储库:

git init
git remote add original {url}
git pull original master
git remote add origin {url}
git push -u origin master

这将创建original s master分支的镜像。 现在,我想从original创建一个新的标签分支。

命令应如何显示? 我尝试了git checkout -b newbranch original/tagname但我得到了:

fatal: Cannot update paths and switch to branch 'newbranch' at the same time.
Did you intend to checkout 'original/tagname' which can not be resolved as commit?

您需要将其包装在两个说明中

git checkout tagname && git checkout -b newbranch

或者

git checkout tagname -b newbranch

这对我有用

$git fetch --tags
$git tag
$git checkout -b <new_branch_name> <tagname>

没有像“远程跟踪分支”那样的“远程跟踪标签”的概念。 您要么从存储库中获取标签,要么没有。 至少在标准设置中。 您可以更改它,但我不建议这样做。 这行不通吗?

git checkout -b newbranch tagname

以下bash脚本可用于自动执行此过程:

#!/bin/bash

old_name="old-branch-name"
new_name="new-branch-name"

git checkout ${old_name}
git branch -m ${old_name} ${new_name}
git push origin :${old_name} ${new_name}
git push origin -u ${new_name}
echo "Branch ${old_name} renamed to ${new_name}"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM