2015-01-15 104 views
1

因此,假设我对一个我不应该拥有的文件进行了一些更改,然后将该文件推送到Development和Staging分支,但Master分支仍然没问题。Git恢复到以前版本的Dev,Staging和Master分支

我想在Dev和Staging上恢复到以前的版本,以便它不会保留我编辑此文件的历史记录。

此外,出现了另一个编辑矿后这个文件,我想保留:

A(在这里我要恢复到) - B(我的变化) - C(我的变化) - d(其他城市我想保持)

所以基本上我想有一个 - d

我怎么会去这样做呢?

回答

1

如果我现在理解你,你有

D 
| 
C 
| 
B 
| 
A 

而且你想拥有

D 
| 
A 

所以,首先你签这个分支的负责人 - 你必须要对d提交。然后调用重订互动提交之前的方法提交一个

git rebase -i HEAD~4 

你会看到从d犯下的列表到与他们的哈希码,并挑选字

pick f5b61e4 D 
pick 65286fb C 
pick 7b32f8c B 
pick b8a35c6 A 

修改其

pick f5b61e4 D 
pick b8a35c6 A 

并保存邮件为

您将有

D 
| 
A 

如果不能解决您的问题,请将您的问题描述得更清晰