Git 常用命令速查,照着敲就行
【摘要】 按日常提交、分支、撤销、查看四类整理 Git 常用命令速查表,并区分 reset 与 revert 的使用场景,以及误操作后可用 reflog 找回。
Git 的命令说多不多,但每次要用的时候总有几个想不起来具体参数。按场景整理一份,直接对着抄。
日常提交
| 目的 | 命令 |
|---|---|
| 看当前改了什么 | git status |
| 看具体改动内容 | git diff |
| 暂存某个文件 | git add 文件名 |
| 暂存所有改动 | git add . |
| 提交 | git commit -m "说明" |
| 改上一次的提交说明 | git commit --amend -m "新说明" |
| 把新改动并入上一次提交 | git add . && git commit --amend --no-edit |
--amend 只适合还没推送的提交。已经推到远程再改历史,同事那边会出问题。
分支
| 目的 | 命令 |
|---|---|
| 看所有分支 | git branch -a |
| 新建并切换 | git switch -c 分支名 |
| 切换分支 | git switch 分支名 |
| 删本地分支 | git branch -d 分支名 |
| 删远程分支 | git push origin --delete 分支名 |
| 合并某分支到当前分支 | git merge 分支名 |
switch 是后来加的命令,比 checkout 语义清楚。老项目里看到 checkout 也不用慌,干的差不多是同一件事。
撤销
| 目的 | 命令 |
|---|---|
| 撤销工作区的改动 | git restore 文件名 |
| 把文件撤出暂存区 | git restore --staged 文件名 |
| 回退到某次提交(保留改动) | git reset --soft 提交号 |
| 回退到某次提交(丢弃改动) | git reset --hard 提交号 |
| 生成一个反向提交来撤销 | git revert 提交号 |
reset --hard 会直接丢掉改动,用之前先确认没有没提交的东西。已经推送到远程的提交用 revert,别用 reset 改历史。
误操作之后还有救:git reflog 能看到本地所有的操作记录,找到误删之前的提交号再 reset 回去就行。
查看
| 目的 | 命令 |
|---|---|
| 看提交历史(一行一条) | git log --oneline |
| 看某个文件的修改历史 | git log -p 文件名 |
| 看某行代码是谁改的 | git blame 文件名 |
| 临时存一下当前改动 | git stash |
| 把存起来的改动恢复 | git stash pop |
stash 适合改到一半要切分支的情况,改完切回来 pop 就恢复了。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)