how should i remove push commit from sourcetree ?

Bhushan Biniwale April 1, 2013

I am using source tree. By mistakenly, i select 'reverse commit…' from my last commit. I don't want that commit to be pushed on server. How should i do that?

3 answers

1 accepted

15 votes
Answer accepted
KieranA
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 2, 2013

Hi Bhushan,

If you select the log entry to which you want to revert to then you can click on "Reset <branch> to this commit". Only use this option if you didn't push the reverse commit changes. If you're worried about losing the changes then you can use the soft mode which will leave a set of uncommitted changes (what you just changed). Using the mixed resets the working copy but keeps those changes, and a hard will just get rid of the changes entirely. Here's some screenshots:

Hope that helps, if not, feel free to ask more questions.

(EDIT: Just to add to that, there's a really good, understandable explanation of soft/mixed/hard modes here: http://stackoverflow.com/questions/3528245/whats-the-difference-between-git-reset-mixed-soft-and-hard)

Daniel Yanes Arroyo June 3, 2014

Thanks! This helped me a lot with another issue

Md. Kauser Ahmmed October 27, 2015

hi @Kieran Senior [Atlassian] , If I pushed the commit to remote server, Then what should I do in case, I want to revert the commit or soft reset the commit. as you say *Only use this option if you didn't push the reverse commit changes*. Thanks in advance.

James January 4, 2016

I don't have this option on my right click menu. Is is Mac only? Does it only appear if the branch is called "master"? Something else?

Kevin Williams March 28, 2016

Same question as @Md. Kauser Ahmmed - What if I already committed and pushed once or twice and I want to disregard both of those pushed commits and revert to a earlier point? What steps should be take in Atlassaian Sourcetree?

Scott Kallen July 28, 2016

Good question, Kevin.  Seems you've been left hanging.  I, too, have done this "reset to to this commit" and what happens is my local repo resets but then I am now X number of commits behind the remote branch.  And sourcetree won't let me overwrite them.  I want to remove the commits after the commit I reset to.  Period.  Remote and all.  Why is this hard?

Like # people like this
Mike_Robinson July 24, 2019

Hello I know they're old comments, but in response to @Md. Kauser Ahmm @Kevin Williams @Scott Kallen . I just had this issue, saw this and noticed there's no answer here... I just found out to do this, you reset your local branch to the commit you want, as mentioned in article above. Then you push and check the "Force" check box. The force checkbox is greyed out by default in SourceTree because it's dangerous. You need to enable it in the Source tree options - git - Enable force push. Source tree could really do with a tooltip when hovering over the greyed out "force" checkbox to tell you this.

For me the force push went through fine and the branch was in the same place local and remote. Obviously only do this if the remote branch past the commit you want to keep only contains the commits you want to delete and not if other people have been working in it since.

Cheers,

Mike

Like # people like this
Sanjay Verma September 4, 2019

Exactly what I was looking for. Thanks

BertjeBertje May 14, 2020

I think I have already used Mike's solution sometimes, but I can't get it to work now.

In SourceTree I can do the reset, but the forced push bumps. It effectively does nothing.

Then I am left with 2 different heads.

The only remaining option seems to pull to synchronise again, then reverse commit and push that.

This is so FRUSTRATING. I am the only user and I just want knock out a single commit.

I don't seem to be able to do that in GitHub either.

Like # people like this
0 votes
Sanjeev gour July 22, 2020

Thanks @Mike_Robinson. It worked for me

0 votes
Matt May 9, 2019

This helped me remove a commit that I needed to remove in order to move forward. Thank you!

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events