git checkout 命令
git checkout
命令用于在不同的分支之间切换、恢复工作区文件、创建新分支等操作。
注意:在 Git 2.23 版本后新增了 git switch 和 git restore 命令,用以替代git checkout
。其中git switch
专门负责分支切换,git restore
则用于文件恢复。这两个新命令语义更清晰,还增加了错误检查功能。如果你的 Git 版本较新,不妨尝试使用它们来替代git checkout
。
git checkout 常见用法
1. 切换分支
✅ 以下命令允许你从当前分支切换到指定的分支 <branch-name>:
git checkout <branch-name>
- 切换到指定分支,会更新工作区的文件以匹配该分支的最新提交。
- 如果分支不存在则会报错。
2. 创建并切换到新分支
✅ 如果你想创建一个新的分支并立即切换到该分支,可以使用以下命令:
git checkout -b <new-branch-name>
- 相当于同时执行
git branch <new-branch-name>
和git checkout <new-branch-name>
,快捷地创建并切换到新分支。 - 新分支会基于当前分支的最新提交创建。
3. 恢复工作区文件
✅ 如果你修改了工作区的文件但还没有提交,可以使用git checkout
来恢复到上一次提交的状态:
git checkout -- <file-name>
- 丢弃工作区中对指定文件的修改,恢复到最近一次提交或暂存区的状态(如果文件已暂存,则恢复到暂存区状态)。
4. 切换到指定提交
✅ 如果你想查看某个特定提交的状态,可以使用提交哈希值切换到该提交:
git checkout <commit-hash>
- 这会将工作区和索引恢复到指定提交的状态,但不会创建新分支。
- 注意,这种方式会进入“分离头指针”状态(detached HEAD),意味着你不在任何分支上。
- 如果你在这种状态下修改了文件并想保留这些修改,可以创建一个新分支:
5. 从其他分支检出文件
✅ 如果你只想从其他分支检出某个文件,而不切换整个分支,可以使用以下命令:
git checkout <branch-name> -- <file-name>
- 从指定分支检出某个文件到当前工作区,覆盖当前工作区的同名文件。
- 这不会切换分支,只是将指定分支的文件内容复制到当前工作区。
评论区 0
发表评论
教程介绍
Git 是一个分布式版本控制系统,用于高效管理文件的修改历史,支持多人协作开发。
37
章节
71
阅读
0
评论
反馈提交成功
感谢您的反馈,我们将尽快处理您的反馈