将分支重置为提交
重置会将当前分支移动到另一个提交,例如 git reset。 Soft 保留所有更改,Mixed 将它们保留在您的工作文件夹中,Hard 丢弃它们。 GitTree 首先保存 refs/ogt/trash 下的所有内容,因此即使是硬重置也可以撤消。
免费已更新
免费使用 GitTree:登录后的所有本地 Git 功能。
开始之前
- 知道分支应该指向哪个提交;离开分支后的提交。
在哪里可以找到它
- 右键单击图表中的提交:Reset … to This Commit,然后单击 Soft、Mixed 或 Hard。
| 行动 | macOS | Windows 和 Linux |
|---|---|---|
| Undo重置 | ⌘Z | Ctrl+Z |
步骤
选择模式
选择 Soft: Keep All Changes Staged、Mixed: Keep Changes in the Working Folder 或 Hard: Discard All Changes…。确认信息说明您的分支和文件会发生什么情况。
确认
按 Reset …(或按 Discard and reset … 进行硬重置)。 Cancel 是默认值。
预期结果
分支指向所选的提交。 GitTree 表示 Reset to …,而 Undo 将分支和您的更改放回原处。
哪种模式?
| 模式 | 在目标之后提交 | 你的文件 |
|---|---|---|
| Soft | 离开分支;他们的改变是上演的。 | 不变。 |
| Mixed | 离开分支;他们的更改位于工作文件夹中,未暂存。 | 不变。 |
| Hard | 离开分支。 | 每个未提交的更改都会被丢弃,并且未跟踪的文件也会被删除。 |
如果出现问题
重置提交已经推送
遥控器仍然有它们,正常的推送被拒绝。如果其他人共享该分支,则更喜欢恢复这些提交。
问题
硬重置后我可以恢复工作吗?
是的。按工具栏中的 Undo。重置之前,GitTree 在 refs/ogt/trash 下保存了提交和更改。
