Git实用命令速记
1、创建
克隆一个已存在的远程版本库到本地
$ git clone ssh://user@domain.com/repo.git
创建一个新的本地版本库
$ git init
2、本地修改
在工作区修改文件
$ git status
追踪修改的文件(对比工作区与版本库的区别)
$ git diff
添加所有当前修改到暂存区(下一次提交前)
$ git add
添加指定文件到暂存区(下一次提交前)
$ git add -p <file>
提交所有本地修改的文件
$ git commit -a
提交暂存区的文件
$ git commit
修改最后一次提交的信息(没有推送提交之前)
$ git commit –amend
3、提交历史
显示从开始到最近的所有提交日志
$ git log
显示指定文件的修改日志
$ git log -p <file>
显示指定文件谁在哪些时间做了哪些修改
$ git blame <file>
4、分支和标签
列出所有已存在的分支
$ git branch
切换分支并将当前版本指向该分支
$ git checkout <branch>
创建一个基于当前版本的新分支
$ git branch <new-branch>
创建一个基于远程分支的新分支(与远程分支做关联)
$ git branch –track <new-branch> <remote-branch>
删除一个本地分支
$ git branch -d <branch>
给当前提交打上一个标签
$ git tag <tag-name>
5、更新和推送
列出所有当前已配置的远程版本库(-v为详细显示)
$ git remote -v
显示一个远程版本库的信息
$ git remote show <remote>
添加并命名一个新的远程版本库
$ git remote add <remote> <url>
从远程版本库中下载所有修改,但不整合进当前版本
$ git fetch <remote>
下载修改并直接合并或整合进当前版本
$ git pull <remote> <branch>
推送本地修改到一个远程版本库
$ git push <remote> <branch>
在远程版本库上删除一个分支
$ git push <remote> :<branch>
推送所有标签(到远程版本库)
$ git push –tags
6、合并&重新定义(版本库状态)
将分支合并进当前版本
$ git merge <branch>
重新定义当前版本在分支上的状态(没有推送提交之前)
$ git rebase <branch>
终止一个重新定义
$ git rebase –abort
在解决冲突后继续一个重新定义
$ git rebase –continue
使用配置合并工具保存冲突
$ git mergetool
手动编辑解决冲突并在解决冲突之后标记保存文件
$ git add <resolved-file>
删除标记保存的文件
$ git rm <resolved-file>
7、撤销
在工作目录中丢弃所有本地修改
$ git reset –hard HEAD
丢弃指定文件的本地修改
$ git checkout HEAD <file>
撤销一个提交(撤销会产生一个新的提交)
$ git revert <commit>
回退到一个之前的提交,并丢弃之后的所有修改
$ git reset –hard <commit>
回退到一个之前的提交,并撤销暂存区的修改(即重新放回工作区)
$ git reset <commit>
回退到一个之前的提交,并保留未提交的本地修改
$ git reset –keep <commit>
Git 的详细介绍:请点这里
Git 的下载地址:请点这里
推荐阅读:
Fedora通过Http Proxy下载Git http://www.linuxidc.com/Linux/2009-12/23170.htm
在Ubuntu Server上安装Git http://www.linuxidc.com/Linux/2009-06/20421.htm
服务器端Git仓库的创建(Ubuntu) http://www.linuxidc.com/Linux/2011-02/32542.htm
Linux下Git简单使用教程(以Android为例) http://www.linuxidc.com/Linux/2010-11/29883.htm
Git权威指南 PDF高清中文版 http://www.linuxidc.com/Linux/2013-10/91053.htm