恢复文件
开发过程中,经常需要恢复删除的文件,或者恢复到某个版本。
查询历史常用参数
命令 | 作用 |
git log -p | 显示更改 |
git log --stat | 显示每次更新的文件修改统计信息 |
git log --name-only | 仅在提交信息后显示已修改的文件清单。 |
1.恢复到上个版本
--按时间由近及远顺序,列出所有的commit
git log
--得到上次commit的hash值,如:hash_eg
git checkout hash_eg
2.恢复到特定版本
--列出所有涉及目标文件的commit
git log file_to_restore
--查看某次提交的具体更改
git show [hash]
--恢复
git checkout hash_eg -- file_to_restore
分支操作
| |
git branch | 展示本地所有分支 |
git checkout -b feature_x origin/feature_x | 取远程分支feature到本地,并新建分支feature |
git checkout --track origin/feature_x | 上面命令的简化版 |
git branch -d test | 删除分支test |
暂存区
当你正在进行一个未完成的更改,而此时突然需要你回到上一个clean working directory时(比如取下同事的提交,然后立即更新生产服),git stash将非常有用。注意,如果你要进行一个很大的更改,而且该更改需要多次提交,新建分支将是最好的选择。
| |
git stash | 将当前未提交的更改保存到暂存区,工作区恢复到上一次提交的状态 |
git stash list | 列出暂存区的所有提交 |
git stash show {stash} | stash详细信息 |
git stash apply {stash} | 恢复stash |
git stash drop {} | remove a single stash |
git stash clear | clear all stash |