# How to restore changes to the remote master branch to its previous stage ?

2 messages from 2014-06-07 to 2014-06-07. Participants: Arup Rakshit, Johannes Sixt.
Thread: https://gitlist.dev/t/36867

## Arup Rakshit, 2014-06-07 06:07

Subject: How to restore changes to the remote master branch to its previous stage ?
Message-ID: <1409256.vCu7BMQsbW@linux-wzza.site>
URL: https://gitlist.dev/e/1409256.vCu7BMQsbW%40linux-wzza.site

```
Hi,

I am working in a project, where I am using *Git*. Today, I have been advised  
by my manager to do some change and it was an urgent request. I did the change 
and tested also, All was working fine. The big mistake I did, all the changes I 
made in the *master* branch without creating a topic a branch. So, once I done 
with the changes I did *git push origin master* and the changed got merged to 
*master* branch of the remote repository. I know this is not a good practice, 
all happened accidentally. 

Now my question is in such a case, if I see, something wrong I pushed and 
merged to the remote repo's *master* branch, how to restore it to its previous 
stage using *git* ? 

- 
================
Regards,
Arup Rakshit
================
Debugging is twice as hard as writing the code in the first place. Therefore, 
if you write the code as cleverly as possible, you are, by definition, not 
smart enough to debug it.

--Brian Kernighan

```

## Johannes Sixt, 2014-06-07 07:18

Subject: Re: How to restore changes to the remote master branch to its previous stage ?
Message-ID: <5392BCD6.9070603@kdbg.org>
URL: https://gitlist.dev/e/5392BCD6.9070603%40kdbg.org
In-Reply-To: <1409256.vCu7BMQsbW@linux-wzza.site>

```
Am 07.06.2014 08:07, schrieb Arup Rakshit:
> Hi,
> 
> I am working in a project, where I am using *Git*. Today, I have been advised  
> by my manager to do some change and it was an urgent request. I did the change 
> and tested also, All was working fine. The big mistake I did, all the changes I 
> made in the *master* branch without creating a topic a branch. So, once I done 
> with the changes I did *git push origin master* and the changed got merged to 
> *master* branch of the remote repository. I know this is not a good practice, 
> all happened accidentally. 
> 
> Now my question is in such a case, if I see, something wrong I pushed and 
> merged to the remote repo's *master* branch, how to restore it to its previous 
> stage using *git* ? 

Assuming that the remote master branch is tracked in your local
repository, the following should do it:

  git push origin origin/master@{1}:master

The plus forces a non-fast-forward push. See 'man gitrevisions' about
the foo@{1} syntax before you run the command.

-- Hannes

```
