Git 常用操作命令

转载:http://tomhat.iteye.com/blog/2065707
稍微做了一些补充。

可以创建私有项目的git网站:
+ https://bitbucket.org
+ http://git.oschina.net

master:默认开发分支;
origin:默认远程版本库


初始化操作:

$ git config --global user.name <name>
// 设置提交者的名字

$ git config --global user.email <email>
// 设置提交者的邮箱

$ git config --global core.editor <editor>
// 设置默认文本编辑器

$ git config --global merge.tool <tool>
// 设置解决合并冲突时差异分析工具

$ git config --list
// 检查已有的配置信息

创建新版本库:

$ git clone <url> #克隆远程版本库
$ git init #初始化本地版本库

修改和提交:

$ git add . #添加所有改动过的文件到暂存区
$ git add <file> #添加指定的文件到暂存区

$ git mv <old> <new> #文件重命名
$ git rm <file> #删除文件
$ git rm --cached <file> #停止跟踪文件但不从工作区删除。

提交文件:

$ git commit -m <file> 'msg' # 提交指定的文件
$ git commit -m 'msg' # 提交所有暂存区中的文件
$ git commit -amend # 修改最后一次提交
$ git commit -C HEAD -a -amend #增补提交(不会产生新的提交记录)

查看提交历史:

$ git log #查看提交历史
$ git log -p <file> #查看指定文件的提交历史
$ git blame <file> #以列表方式查看指定文件的提交历史

$ gitk #查看当前分支历史记录,gitk貌似是个工具
$ gitk --all #查看所有分支历史记录

$ git branch -v #查看所有分支及其最后一次提交记录

$ git status #查看当前状态

$ git diff #查看变更内容(工作区与暂存区)
$ git diff --cached #查看改动(暂存区与版本库,即下次提交的内容)
$ git diff --staged #同上
$ git diff master #工作区与版本库对比

git checkout 用法:

$ git checkout 
$ git checkout --
# 以缩写字母方式查看文件状态,M、A等等。

$ git checkout <file>
$ git checkout -- <file>
# 这两个命令都可以撤销工作区的修改,回到暂存区或者版本区的状态。(不会影响暂存区中的内容)

$ git checkout HEAD <file1> <file2>
$ git checkout HEAD .
# 撤销工作区和暂存区的修改(工作区和暂存区都会回到最后一次提交的状态)

$ git checkout HEAD^^ 
# 创建新分支,指向倒数第二次提交的状态

撤销操作:

$ git reset --hard HEAD #撤销工作目录中所有未提交的修改,(工作区和版本库都会回退到最后一次提交的状态)
$ git reset --hard HEAD^^ #回退到倒数第二次提交的状态。
$ git reset --hard <hash> #回退到对应的版本

$ git revert <hash> 撤销指定的提交

分支与标签:

$ git branch #显示所有本地分支
$ git checkout <branch/tagname> #切换到指定分支或标签
$ git checkout -b loaclName origin/remoteName #创建本地分支并追踪到远端分支
$ git branch <name> #创建新分支
$ git branch -d <name> #删除本地分支

$ git tag #列出所有本地标签
$ git tag <tagname> #基于最新提交创建标签
$ git tag -d <tagname> #删除标签

$ git push origin --delete <branchname> # 删除一个远程分支

合并与衍合

$ git merge <branch> #合并指定分支到当前分支
$ git rebase <branch> #衍合指定分支到当前分支

远程操作:

$ git remote -v #查看远程版本库信息
$ git remote show <remote> <url> #查看指定远程版本库信息
$ git remote add <remote> <url> #添加远程版本库

$ git fetch <remote> #从远程库获取代码
$ git pull <remote> <branch> #下载代码及快速合并

$ git push <remote>:<branch>/<tagname> #删除远程分支或标签
$ git push -tags #上传所有标签

备忘:

git push origin local-branch:remote-branch
// 同步本地分支到远端

git fetch origin master
// 拉取远端master数据

git log -p master origin/master
// 比较本地master和远端master的差别

git merge origin/master
// 合并远端master

git push origin localName:remoteName
// 推送本地分支到远端分支

git checkout -b localName origin/remoteName
// 创建本地分支并与远端分支相关联
git branch -m old-name new-name
// 重命名分支名

git branch --set-upstream-to=origin/branch
// 将本地分支与远端分支相关联
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值