git init # 初始化本地git仓库(创建新仓库)
git clone (git远程仓库的地址) # clone远程仓库到本地
git status # 查看当前版本状态(是否修改)
git add 文件名 #添加文件至index
git add . #增加当前子目录下所有更改过的文件至index
git commit -m 'xxx' #提交
git commit --amend -m 'xxx' #合并上一次提交(用于反复修改)
git commit -am 'xxx' #将add和commit合为一步
git rm xxx #删除index中的文件
git rm -r * #递归删除
git clone =git fetch + git merge
git log #显示日志
git log -1 #显示1行日志 -n为n行
git log -5
git log --stat #显示提交日志及相关变动文件
git diff #显示所有未添加至index的变更
git diff --cached #显示所有已添加index但还未commit的变更
git diff HEAD^ #比较与上一个版本的差异
git diff origin/master..master #比较远程分支master上有本地分支master上没有的
git diff origin/master..master --stat #只显示差异的文件,不显示具体内容
git branch #显示本地分支
git branch -a #显示所有分支
git branch -r # 显示所有原创分支
git branch --merged # 显示所有已合并到当前分支的分支
git branch --no-merged #显示所有未合并到当前分支的分支
git branch -m master master_copy #本地分支改名
git checkout -b master master_copy #从当前分支创建新分支master_copy并检出
git checkout --track master # 检出远程分支master并创建本地跟踪分支
git checkout -b devel master #从远程分支master创建新本地分支devel并检出
git checkout -- README #检出head版本的README文件(可用于修改错误回退)
git merge origin/master # 合并远程master分支至当前分支
git push --tags # 把所有tag推送到远程仓库
git push origin master # 将当前分支push到远程master分支
git fetc #获取所有远程分支(不更新本地分支,另需merge)
git push origin : master #删除远程仓库的master分支
git branch -D master #强制删除分支master
git pull origin master #获取远程分支master并merge到当前分支
git reset --hard HEAD #将当前版本重置为HEAD(通常用于merge失败回退)
git mv README README2 #重命名文件README为README2
git ls-files # 列出git index包含的文件
git show-branch # 图示当前分支历史
git show-branch --all #图示所有分支历史
git whatchanged #显示提交历史对应的文件修改
git show master@{
yesterday} #显示master分支昨天的状态
git log --pretty=format:'%h %s' --grap #图示提交日志