Menu
CoddyTech

重置分支

本课属于 Coddy Terminal 学习旅程的“版本控制”单元。第 44 课,共 58 课。

git reset 会将当前分支指针移到另一个提交。它最常见的用途是撤销你尚未分享的最近提交。

git reset --hard HEAD~1

这会让 main 回退一个提交,并覆盖工作目录,使其与该提交匹配。你跳过的提交将不再能从你的分支访问(Git 会暂时保留它,以防你改变主意,但预计它最终会消失)。

有三种重置方式:

  • --soft:移动分支指针;保留已暂存的更改
  • --mixed(默认):移动指针;取消暂存,但保留工作文件
  • --hard:移动指针;同时丢弃工作文件中的更改

--hard 是破坏性最大的一种形式。它非常适合清理本地错误,但绝不要对其他人已经拉取的提交使用它。

challenge icon

挑战

中等

文件夹中有 doc.md。初始化仓库,并按顺序创建 3 次提交:

  1. 添加 doc.md,提交信息为 Add doc。
  2. 将 second 追加到 doc.md,提交信息为 Second draft。
  3. 将 third 追加到 doc.md,提交信息为 Third draft。

使用 HEAD~2 将分支硬重置到第一个提交。打印 doc.md 的内容。

亲手试试

终端
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

版本控制中的所有课

自己练习: Terminal 在线编辑器