I'm trying to push a new local branch product-0.2 to remote where there is already a tag with the same name (but the branch itself does not exist)
git push -v --tags --set-upstream origin product-0.2:product-0.2 Pushing to https://****@github.com/mycompany/product.git error: src refspec product-0.2 matches more than one. error: failed to push some refs to 'https://****@github.com/mycompany/product.git' Same with:
git push origin product-0.2:/refs/heads/product-0.2 Although the other way around it works, e.g. create a branch product-0.1, commit on it then apply a tag product-0.1.
Some people work around this by removing the conflicting tag locally, then push the branch, then retrieve the remote tag, but it seems cumbersome and error prone.
How can I create my branch with minimal fuss?
refs/heads/product-0.2:refs/heads/product-0.2, i.e. without the leading slash, and also giving the full refspec on the local side.