谢谢你的帮助。我真的很困惑
我合并了对队友的请求。
现在,我想回到合并之前的情况,因为我已经意识到引入了错误。拉请求是由24位朋友完成的,我在24位进行了合并。
谢谢!!!
commit ff1e9ecfa13c5050957b77bd5b5695d802415867
Merge: 053c894 437e11c
Author: me
Date: Tue Mar 24 09:06:11 2015 +0100
Merged ' changes on xxx
commit 437e11c23ae7da68f8bb3698557bdc2aa3d9a614
Merge: a129401 adfd8c5
Author: someone else
Date: Tue Mar 24 00:00:18 2015 +1000
Merge pull request #17 from
xxx
commit adfd8c5c30541095ee48ce64da14740f92594ec8
Author: someone else
Date: Mon Mar 23 23:54:06 2015 +1000
xx
commit 053c89426460ffaa86873bed342bc38e24a13096
Merge: 849ec63 35fdbc6
Author: me
Date: Fri Mar 20 07:57:13 2015 +0100
Run Code Online (Sandbox Code Playgroud)
假设您没有删除原始更改所在的分支,那么来自队友的工作仍位于该分支上,因此,只要您仍然拥有更改所在的分支,我就不必担心丢失这些更改。制作。
您可以执行a git reset --hard [commit hash]合并之前返回到提交,这就像时光倒流。但是,如果有更改,您还将撤消在命令中指定的提交之后添加的所有更改reset。
例如:
在当前分支上,我有以下提交:
A
|
B <- commit *before* the merge
|
|
| --- some other branch
| /
|/
C <- commit where "some other branch" was merged into current branch
|
D
|
E
Run Code Online (Sandbox Code Playgroud)
如果这样做,git reset --hard B我将回到mergeat 之前的提交C。但是,我还会失去提交D,并E在这个过程中。完成此操作后,只需检查分支的状态并确保它看起来像您需要的样子,然后执行git push --force,即可将远程存储库更新为该状态。您之所以需要这样做,--force是因为您将从远程仓库上的当前分支中删除提交D和内容E,并且git在没有该--force选项的情况下也不允许这样做,因为您正在要求它删除工作。
根据这些更改的实质性程度,有时候前滚并修复错误比尝试撤消更改要容易得多。这条线的位置(前进或后退)是一个个案决定。
| 归档时间: |
|
| 查看次数: |
4529 次 |
| 最近记录: |