分支
- master ->默认开发分支
- origin ->默认远程版本库
- Head ->默认开发分支
- Head^ ->Head的父提交
创建
- git clone ssh://user@xxx.com/xx.git 克隆远程仓库
- git init 初始化本地git仓库
提交历史记录
- git log 显示日志
- git show 显示某个提交的详细内容
- git blame 在每一行显示commit号,提交者,最早的提交日期
本地更改
- git status 查看当前版本状态(是否修改)
- git diff 显示所有未添加至index的变更
- git diff HEAD 查看已缓存的与未缓存的所有改动
- git add
将文件添加到缓存 - git commit -m ‘xxx’ 提交
- git commit --amend -m ‘xxx’ 合并上一次提交(用于反复修改)
- git commit -am ‘xxx’ 将add和commit合为一步
分支机构和标签
- git branch 显示本地分支
- git checkout 切换分支
- git branch 新建分支
- git branch --track 创建新分支跟踪远程分支
- git branch -d 删除本地分支
- git tag 给当前分支打标签
更新和发布
- git remote -v 列出远程分支详细信息
- git remote show 显示某个分支信息
- git remote add 添加一个新的远程仓库
- git fetch 获取远程分支,但不更新本地分支,另需merge
- git pull 获取远程分支,并更新本地分支
- git push 推送本地更新到远程分支
- git push --delete 删除一个远程分支
- git push --tages 推送本地标签
撤销
- git reset --hard HEAD 将当前版本重置为HEAD(用于merge失败)
- git reset --hard 将当前版本重置到某一个提交状态(谨慎使用!)
- git reset 将当前版本重置到某一个提交状态,代码不变
- git reset --merge 重置到某一状态,保留版本库中不同的文件
- git reset --keep 重置到某一状态,重置变化的文件,代码不变
- git check HEAD 丢弃本地更改信息并将其存入特定文件
- git revert 撤销提交
合并与衍合
- git merge 合并分支到当前分支,存在两个
- git rebase 合并分支到当前分支,存在一个
- git rebase --abort 回到执行rebase之前
- git rebase --continue 解决矛盾后执行 rebase
- git mergetool 使用mergetool解决冲突
- git add 使用冲突文件解决冲突
- gti rm 删除文件
帮助
- git help 获取命令行上的帮助