| 操作 | 命令 |
|---|---|
| 查看当前分支 | git branch(git branch -a 查看所有分支) |
| 从仓库拉取分支 | git fetch origin 分支名 |
| 切换分支 | git checkout 分支名 (将当前分支的修改带过去 git checkout -b 分支名) |
| 拉取最新分支 | git pull origin 分支名 (pull=fetch+merge) |
| 删除未跟踪的和未添加到暂存区的文件和目录 | git clean -n 预览git clean -fd 删除 |
| 恢复修改的文件 | git restore 文件名 |
| 删除分支 | git branch -D 分支名 # 强制删除未合并分支-D |
| 远程分支覆盖本地 | git reset --hard origin/master (覆盖修改的文件) |
| 提交暂存区 | git add 文件名 (不建议用 git add .) |
| 移出暂存区,保持修改 | git reset HEAD (移出所有) git reset HEAD 文件名 |
| 查看提交状态 | git status |
| 查看代码区别 | git diff --cached git diff --no-index(比较两个未跟踪的文件) git diff branch1:a.sh -- b.sh (比较分支中的a和本地b) |
| 提交暂存代码 | git commit -m 'icafe-id icafe-name' |
| 删除本地和暂存区文件 | git rm 文件 |
| 多次commit | git commit --amend |
| 查看最近的commit | git log |
| 查看特定的 commit | git show |
| 撤回上一次commit | git reset HEAD~1 (包括add) |
| 回退到合并前的状态 | git reset --hard ORIG_HEAD (慎用) |
| 提交至远程仓库 | git push origin HEAD:refs/for/分支名 |
暂存本地代码 git stash
- 作用:将本地修改暂时存储,以拉取线上代码(恢复到版本代码)
- 临时开启新任务已有代码需要提交的情况
- 与线上代码冲突,需要先拉取线上代码的情况
在终端中执行 git stash
- 变更将会存储到本地(新建的文件除外)
恢复变更 git stash apply {编号}
常用git stash命令:
(1)git stash save "save message" : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。
(2)git stash list :查看stash了哪些存储
(3)git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1}
(4)git stash show -p : 显示第一个存储的改动,如果想显示其他存存储,命令:git stash show stash@{$num} -p ,比如第二个:git stash show stash@{1} -p
(5)git stash apply :应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1}
(6)git stash pop :命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}
(7)git stash drop stash@{num} :丢弃stash@{num}存储,从列表中删除这个存储
(8)git stash clear :删除所有缓存的stash