From 2e987dea491cf75ba8432e71c9d6cbc76698bd6c Mon Sep 17 00:00:00 2001 From: Smart Ni <824291045@qq.com> Date: Sun, 30 Jul 2017 11:44:30 +0800 Subject: [PATCH] Updated README.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 🙂 你好,这份奇技淫巧总结得不错,因为工作正好用到,帮助你补充了一下。稍微修改了reset 部分的内容,请注意查收:) --- README.md | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 98bf0cc..3f12b41 100644 --- a/README.md +++ b/README.md @@ -86,7 +86,7 @@ Git是一个“分布式版本管理工具”,简单的理解版本管理工 * [clone下来指定的单一分支](#clone下来指定的单一分支) * [忽略某个文件的改动](#忽略某个文件的改动) * [忽略文件的权限变化](#忽略文件的权限变化) -* [展示本地所有的分支的commit](#展示本地所有的分支的commit) +* [以最后提交的顺序排序Git分支](#以最后提交的顺序排序Git分支) * [在commit log中查找相关内容](#在commit-log中查找相关内容) * [把暂存区的指定file放到工作区中](#把暂存区的指定file放到工作区中) * [强制推送](#强制推送) @@ -273,7 +273,13 @@ git revert ## 回到某个commit的状态,并删除后面的commit 和revert的区别:reset命令会抹去某个commit id之后的所有commit ```sh -git reset +git reset #默认就是-mixed参数。 + +git reset –mixed HEAD^ #回退至上个版本,只保留源码,回退commit和index信息 + +git reset –soft HEAD~3 #回退至三个版本之前,只回退了commit的信息,不会恢复到**暂存区**一级。如果还要提交,直接commit即可   + +git reset –hard #彻底回退到指定commit-id的状态,本地的源码也会变为上一个版本的内容 ``` ## 修改上一个commit的描述 @@ -505,8 +511,8 @@ git update-index --no-assume-unchanged path/to/file git config core.fileMode false ``` -## 展示本地所有的分支的commit -最新的放在最上面 +## 以最后提交的顺序排序Git分支 +最新的放在最上面 ```sh git for-each-ref --sort=-committerdate --format='%(refname:short)' refs/heads/ @@ -520,6 +526,7 @@ git log --all --grep='' ``` ## 把暂存区的指定file放到工作区中 +不添加参数,默认是-mixed ```sh git reset ```