从合并了其他分支的分支中删除提交
Deleting commits from a branch in which other branchs are merged
我有三个分支 - A(我正在处理的分支)、B、C。
分支 B 和 C 的提交历史如下所示
分支机构 B
- 提交 b2
- 提交 b1
分支机构 C
提交 c2
提交 c1
我已将这些分支合并到 分支 A,因此 A 的提交历史看起来像这样
- 提交 a2
- 提交 c2
- 提交 c1
- 提交 b2
- 提交 b1
- 提交 a1
我想重置我的分支 A 以使用 git reset --hard a1
提交 a1。如果我这样做确实会提交 b1、b2 和 c1,c2 也会从分支 B 和 C 中删除,或者它们只会从分支 A 中删除?
Branch A
上的硬重置将仅影响该分支。其他分行不受影响
回答您的问题 - 在使用 (git reset --hard a1
) 硬重置 Branch A
后,提交 b1
和 b2
将保留在 Branch B
中并且提交 c1
和 c2
将保留在 Branch C
.
不,git reset --hard a1
不会更改分支 B 或 C 上的任何提交。但是您将丢失提交 a2
中的工作,除非它保存在其他地方。
我有三个分支 - A(我正在处理的分支)、B、C。
分支 B 和 C 的提交历史如下所示
分支机构 B
- 提交 b2
- 提交 b1
分支机构 C
提交 c2
提交 c1
我已将这些分支合并到 分支 A,因此 A 的提交历史看起来像这样
- 提交 a2
- 提交 c2
- 提交 c1
- 提交 b2
- 提交 b1
- 提交 a1
我想重置我的分支 A 以使用 git reset --hard a1
提交 a1。如果我这样做确实会提交 b1、b2 和 c1,c2 也会从分支 B 和 C 中删除,或者它们只会从分支 A 中删除?
Branch A
上的硬重置将仅影响该分支。其他分行不受影响
回答您的问题 - 在使用 (git reset --hard a1
) 硬重置 Branch A
后,提交 b1
和 b2
将保留在 Branch B
中并且提交 c1
和 c2
将保留在 Branch C
.
不,git reset --hard a1
不会更改分支 B 或 C 上的任何提交。但是您将丢失提交 a2
中的工作,除非它保存在其他地方。