Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"Updates were rejected because the tag already exists" when attempting to push in SourceTree

People also ask

How do I remove a remote tag?

Select and expand the "Tags" tab on the left. Right-Click on the tag you want deleted. Select "Delete YOUR_TAG_NAME" In the verification window, select "Remove Tag From Remotes"

How do I see git tags?

Find Latest Git Tag Available In order to find the latest Git tag available on your repository, you have to use the “git describe” command with the “–tags” option. This way, you will be presented with the tag that is associated with the latest commit of your current checked out branch.


You should also be able to solve this in git bash (click on "Terminal" button in the Source Tree UI). Type:

git pull --tags

If you have not made any local changes to the tag that you want to keep, then you can remove tag that was rejected because it already exists (example_tag in this case):

  1. Right-click the tag and choose to delete it (be sure to uncheck the Remove tag from all remotes checkbox).
  2. Choose the Fetch option (Fetch and store all tags locally does not have to be enabled).
  3. You should now have that tag that was just deleted back, and attempting to Push will no longer show that error message.

The reason this is common in SourceTree is because the Push all tags option is set to on by default. (Another way to hide this error is to uncheck that option.)


git pull --tags works really well but sometimes you can get an error even with this command. Example error message:

 ! [rejected]        example_tag      -> example_tag  (would clobber existing tag)

This can be solved with the command: git pull --tags -f

-f stands for force.

Source:

https://github.com/concourse/git-resource/issues/233


Uncheck push all tags at the bottom of the UI when you confirm your git push


Make sure you uncheck the "Push all tags" button while push.

enter image description here