开发者

reverting to an earlier commit and merging with the most recent commit in Git

So for example i have this history:

commit 1a7cab6c279f5528871cd0ab8dae55319ff81fc0
Author: unknown <poru@.(none)>
Date:   Thu Mar 10 20:11:39 2011 +0800

    Changes to login style, will based the admin on this. version-1

commit 22d308ba085a5d04eadf54fd06f3534e876386de
Author: David Ang <davidang09@gmail.comm>
Date:   Tue Mar 8 23:40:59 2011 +0800

    fixed config settings to run in production mode and removed special
    characters thats disrupting heroku

commit 410b383e105fac39bd70095b186367fa943b1ad8
Author: David Ang <davidang09@gmail.comm>
Date:   Fri Mar 4 01:29:45 2011 +0800

     show pretty time ago
     provide icons
     hide mass delete
     removed special character

commit 789922463ad946c945893c9a8787e589f780fda1
Author: unknown <poru@.(none)>
Date:   Thu Mar 3 18:34:09 2011 +0800

     Tempory style for Login. Will 开发者_如何学Creplace this once done with the admin
     styles.

We have a new design going on the most recent commit - but i wanted now to switch back to our original design which is commit 78992246.

I was like doing something like this earlier:

git checkout 78992246

Then I was hoping to just merge these back to the head of master.

Unfortunately im not getting anywhere


Here are some steps to do it.

# Create a branch pointing to the original design and checkout to that branch.
git checkout -b original_design 78992246

# Work on it and commit your works on this branch.
git commit ...

# Once you're done, checkout your master branch.
git checkout master

# If you want to, pull from origin to update your master branch.
git pull

# Merge your original_design branch back to master.
git merge original_design


Once you have switched to the right commit, you should create a branch before attempting any merge.

git checkout -b newdesign 

or in one step

git checkout -b newdesign 78992246

Other wise you would be in a detached head mode.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜