I've created a new local git repository mirrored from another remote repository:
git init
git remote add original {url}
git pull original master
git remote add origin {url}
git push -u origin master
This would create a mirror of original
s master branch.
Now I would like to create a new branch of a tag from original
.
How the commands should look like?
I tried git checkout -b newbranch original/tagname
but I got:
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?
The best way to work with git tags is to create a new branch from the existing tag. It can be done using git checkout command.
If you have a single remote repository, then you can omit all arguments. just need to run git fetch , which will retrieve all branches and updates, and after that, run git checkout <branch> which will create a local copy of the branch because all branches are already loaded in your system.
In order to checkout a Git tag, use the “git checkout” command and specify the tagname as well as the branch to be checked out. Note that you will have to make sure that you have the latest tag list from your remote repository.
You need to wrap this in two instructions
git checkout tagname && git checkout -b newbranch
Alternatively
git checkout tagname -b newbranch
This worked for me
$git fetch --tags
$git tag
$git checkout -b <new_branch_name> <tagname>
There is no concept of “remote tracking tags” like there are “remote tracking branches”. You either get the tags from the repo or you don’t. At least in the standard settings. You can change that, but I would not recommend that. Does this not work?
git checkout -b newbranch tagname
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With