Skip to content

Instantly share code, notes, and snippets.

@1900
Created July 19, 2012 09:20
Show Gist options
  • Save 1900/3142611 to your computer and use it in GitHub Desktop.
Save 1900/3142611 to your computer and use it in GitHub Desktop.
git xxx -h
##显示git xxx命令可以跟哪些参数,比如git add -h
git --version
##显示git版本号
git init
##初始化GIT版本库
git init --bare /path/to/repos/xxx.git
##初始化GIT裸版本库
git --git-dir=/path/to/repos/xxx.git \
config user.name user1
##设置提交人的姓名
git --git-dir=/path/to/repos/xxx.git \
config user.email [email protected]
##设置提交人的邮箱
git clone demo demo-backup
##备份整个demo工作区
git clone git://git.kernel.org/pub/scm/git/git.git
##以GIT协议克隆远程版本库到本地
git log --stat
##查看提交日志
git log --stat -2
##查看最近两次的提交日志
git log -m --stat
##查看合并操作所做出的修改
git log -oneline --decorate
##查看提交对应的里程碑和其他应用
git log --pretty=oneline
##精简输出提交日志
git status -s
##精简格式输出工作区当前的状态
git status -sb
##还可以显示出当前的分支
git diff HEAD
## 工作区文件和当期版本库中的头指针比较
## 如果不带HEAD显示的是工作区和暂存区(stage)的差异
## git diff --cached(或者--staged)显示的是暂存区和版本库的差异
git checkout . 或者git checkout --file
## 用暂存区的全部文件或者指定文件覆盖掉工作区的文件
## git diff HEAD .(或者file)用HEAD指向的全部文件或者指定文件覆盖掉工作区和暂存区的文件
git stash
## 保存当前的工作进度
git reset
## 用HEAD指向的目录树重置暂存区,相当于撤销之前一次的git add
git reset -- filename
## 仅将filename中的改动撤出暂存区相当于git add filename反操作
git reset --soft HEAD^
## 工作区和暂存区不改变,但是引用向前回退一次。当对最新的提交说明或者提交的更改不满意时,撤销最新的提交以便重新提交
git reset HEAD^
## 工作区不变,暂存区和引用回退到上一次
git reset --mixed HEAD^
## 同上
git reset --hard HEAD^
## 彻底撤销上一次提交,工作区和暂存区和引用回退到上一次的提交
git checkout branch
## 更新HEAD指向branch分支,并有branch的目录树更新暂存区和工作区
git checkout -b branch
## 创建分支并切换到该分支
git checkout
## 汇总显示工作区、暂存区和HEAD之间的差异
git checkout --filename
## 暂存区中的filename来覆盖工作区
git checkout branch --filename
## 维持HEAD指向不变,用branch中的filename来替换暂存区和工作区的filename
git checkout -- .
## 用暂存区的所有文件覆盖掉工作区的文件,非常危险
git stash
## 保存当前工作进度,分别对暂存区和工作区的状态进行保存
git slash list
## 显示进度保存历史列表,可对某个进度点进行恢复
git slash pop
## 如果不使用任何参数,会恢复最新保存的工作进度
git clean
## 清除工作区未被跟踪的文件
git commit --amend
## 修改最后一次提交的提交说明,保存推出编辑框即可
git push
## 向被推送的版本库推送提交
git push master
## 向被推送的裸版本库推送第一次提交(因为裸版本库从未有过提交所以需要指定此次提交到哪个分支)
git blame 文件名
## 标记文件的历史修改信息(最后一次修改时间和最后一次修改作者)
git branch
## 用于显示本地的分支列表
git branch branchname
## 创建分支
git branch -d branchname
## 删除分支,删除之前检查要删除的分支是否已经合并到了其他分支,否则拒绝删除
git branch -m oldbranch newbranch
## 重命名分支,重命名之前检查该分支是否已经合并到了其他分支,否则拒绝重命名
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment