Git常用命令
2015-12-16 本文已影响32人
r_lin
常用命令
- 创建版本库
$ git init
- 添加文件到版本库
$ git add demo.txt
- 提交记录
$ git commit -m "One meaning message"
- 查看版本库状态
$ git status
- 查看具体修改了什么内容
$ git diff demo.txt
- 查看提交历史纪录
$ git log
- 查看提交历史纪录简要信息
$ git log --pretty=oneline --abbrev-commit
- 回退到上一个版本
$ git reset --hard HEAD^
- 回退到commit id为3438386...的版本
$ git rest --hard 343838
- 查看命令历史
$ git reflog
- 撤销工作区(Working Directory)修改(checkout)
$ git checkout -- demo.txt
- 撤销暂存区(stage)的修改--unstage
$ git reset HEAD demo.txt
- 从版本库(repository)删除文件
$ git rm demo.txt
$ git commit -m "remove demo.txt"
- 从版本库恢复误删文件
$ git checkout -- demo.txt
- 添加远程库
$ git remote add origin git@github.com:st0x8/demo.git
- 把本地库的所有内容推送到远程库,第一次推送
$ git push -u origin master
- 第二次及之后的推送
$ git push origin master
- 从远程库git@github.com:st0x8/demo.git克隆
$ git clong git@github.com:st0x8/demo.git
- 创建dev分支
$ git branch dev
- 切换分支
$ git checkout dev
- 创建并切换分支
$ git checkout -b dev
- 合并分支
$ git merge dev
- 查看分支合并情况
$ git log --graph --pretty=oneline --abbrev-commit
- 查看分支合并图
$ git log --graph
- 删除分支
$ git branch -d dev
- 合并分支是禁用Fast forward模式
$ git merge --no-ff -m "merge with no-ff" dev
- 储藏工作现场
$ git stash
- 查看工作现场
$ git stash list
- 恢复工作现场
$ git stash apply
- 删除工作现场纪录
$ git stash drop
- 恢复工作现场并删除现场纪录
$ git stash pop
- 恢复指定的工作现场
$ git stash apply stash@{0}
- 强制删除未合并的分支
$ git branch -D demo-branch
- 查看远程库信息
$ git remote
- 查看远程库详细信息
$ git remote -v
- 推送其他分支如dev分支
$ git push origin dev
- 抓取远程分支dev(clone远程仓库默认只抓取master分支)
$ git checkout -b dev origin/dev
- 抓取远程仓库最新的提交
$ git pull
- 建立本地dev分支与远程origin/dev分支的关联
$ git branch --set-upstream dev origin/dev
- 创建标签
$ git tag v1.0
- 查看标签
$ git tag
- 对commit id为4336783的提交打标签
$ git tag v1.0 4336783
- 查看标签v1.0的信息
$ git show v1.0
- 创建带有说明的标签
$ git tag -a v0.1 -m "version 0.1 released" 3628164
- 删除标签
$ git tag -d v0.1
- 推送标签到远程仓库
$ git push origin v1.0
- 推送除已推送过的全部标签到远程仓库
$ git push origin --tags
- 删除远程标签
git tag -d v0.9 //先删除本地的标签
git push origin :refs/tags/v0.9
以上命令从Git教程摘录。
工具
公钥管理:Gitosis
权限控制:Gitolite
参考
如果你想在Xcode使用git,可以参考下面两篇文章。