Git常用命令

创建版本库

git init

把文件添加到暂存区

git add file.txt

将指定文件从暂存区移除

此命令将撤销对该文件的暂存操作,但不会撤销文件的实际更改

git reset HEAD file.txt

从暂存区和工作目录中检出指定文件

此命令将撤销对该文件的暂存操作,并使工作目录中的文件与最近一次提交的状态保持一致

git checkout -- filename

提交文件到版本库

git commit -m "this is description"

查看仓库状态

git status

比对文件(工作区和暂存区的比对)

git diff file.txt

版本库和工作区对比

git diff HEAD -- file.txt

两个版本直接修改过的文件列表比较

git diff hash1 hash1 --stat

如果是branch的话

git diff branch1 branch2 --stat

(加上 –stat 是显示文件列表, 否则是文件内容diff)

查看日志

git log

版本回退(回退到上一个版本)

git reset --hard HEAD^

回退到上上个版本

git reset --hard HEAD^^

回退到上100个版本

git reset --hard HEAD~100

回退到某个特定的版本

git reset --hard 1094a7c

查看操作记录

git reflog

# 删除所有未跟踪的文件和目录

git clean -fd

# 如果你想先查看哪些文件会被删除(安全检查)

git clean -fdn

暂存修改

git stash 将当前所有修改项(未提交的)暂存,压栈。此时代码回到你上一次的提交,用git status可查看状态。
git stash list将列出所有暂存项。
git stash clear 清除所有暂存项。
git stash apply 将暂存的修改重新应用,使用git status可以看到以前暂存的修改又回来了

仅仅删除暂存区里的文件    

此时你想撤销错误添加到暂存区里的文件,可以输入以下命令:

git rm --cache 文件名

详情看:

https://www.cnblogs.com/cposture/p/git.html

查看某个版本更新的文件

git show c59789e4 --stat

查看某个版本更新的文件及其内容

git show c59789e4

忽略文件权限的改变

git config core.filemode false

修改上一次错误的备注

git commit --amend -m "正确的备注信息"

将git默认的修改文件编辑器改为vim

git config --global core.editor "vim"

Scroll to Top