|
|
@ -86,7 +86,7 @@ Git是一个“分布式版本管理工具”,简单的理解版本管理工
|
|
|
|
* [clone下来指定的单一分支](#clone下来指定的单一分支)
|
|
|
|
* [clone下来指定的单一分支](#clone下来指定的单一分支)
|
|
|
|
* [忽略某个文件的改动](#忽略某个文件的改动)
|
|
|
|
* [忽略某个文件的改动](#忽略某个文件的改动)
|
|
|
|
* [忽略文件的权限变化](#忽略文件的权限变化)
|
|
|
|
* [忽略文件的权限变化](#忽略文件的权限变化)
|
|
|
|
* [展示本地所有的分支的commit](#展示本地所有的分支的commit)
|
|
|
|
* [以最后提交的顺序排序Git分支](#以最后提交的顺序排序Git分支)
|
|
|
|
* [在commit log中查找相关内容](#在commit-log中查找相关内容)
|
|
|
|
* [在commit log中查找相关内容](#在commit-log中查找相关内容)
|
|
|
|
* [把暂存区的指定file放到工作区中](#把暂存区的指定file放到工作区中)
|
|
|
|
* [把暂存区的指定file放到工作区中](#把暂存区的指定file放到工作区中)
|
|
|
|
* [强制推送](#强制推送)
|
|
|
|
* [强制推送](#强制推送)
|
|
|
@ -273,7 +273,13 @@ git revert <commit-id>
|
|
|
|
## 回到某个commit的状态,并删除后面的commit
|
|
|
|
## 回到某个commit的状态,并删除后面的commit
|
|
|
|
和revert的区别:reset命令会抹去某个commit id之后的所有commit
|
|
|
|
和revert的区别:reset命令会抹去某个commit id之后的所有commit
|
|
|
|
```sh
|
|
|
|
```sh
|
|
|
|
git reset <commit-id>
|
|
|
|
git reset <commit-id> #默认就是-mixed参数。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
git reset –mixed HEAD^ #回退至上个版本,只保留源码,回退commit和index信息
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
git reset –soft HEAD~3 #回退至三个版本之前,只回退了commit的信息,不会恢复到**暂存区**一级。如果还要提交,直接commit即可
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
git reset –hard <commit-id> #彻底回退到指定commit-id的状态,本地的源码也会变为上一个版本的内容
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## 修改上一个commit的描述
|
|
|
|
## 修改上一个commit的描述
|
|
|
@ -505,8 +511,8 @@ git update-index --no-assume-unchanged path/to/file
|
|
|
|
git config core.fileMode false
|
|
|
|
git config core.fileMode false
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## 展示本地所有的分支的commit
|
|
|
|
## 以最后提交的顺序排序Git分支
|
|
|
|
最新的放在最上面
|
|
|
|
最新的放在最上面
|
|
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
```sh
|
|
|
|
git for-each-ref --sort=-committerdate --format='%(refname:short)' refs/heads/
|
|
|
|
git for-each-ref --sort=-committerdate --format='%(refname:short)' refs/heads/
|
|
|
@ -520,6 +526,7 @@ git log --all --grep='<given-text>'
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## 把暂存区的指定file放到工作区中
|
|
|
|
## 把暂存区的指定file放到工作区中
|
|
|
|
|
|
|
|
不添加参数,默认是-mixed
|
|
|
|
```sh
|
|
|
|
```sh
|
|
|
|
git reset <file-name>
|
|
|
|
git reset <file-name>
|
|
|
|
```
|
|
|
|
```
|
|
|
|