Git 常用操作命令
2016-05-27 14:21
302 查看
转载:http://tomhat.iteye.com/blog/2065707
稍微做了一些补充。
可以创建私有项目的git网站:
+ https://bitbucket.org
+ http://git.oschina.net
master:默认开发分支;
origin:默认远程版本库
初始化操作:
创建新版本库:
修改和提交:
提交文件:
查看提交历史:
git checkout 用法:
撤销操作:
分支与标签:
合并与衍合
远程操作:
稍微做了一些补充。
可以创建私有项目的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 // 将本地分支与远端分支相关联
相关文章推荐
- RPC failed; result=22, HTTP code = 411
- git更新已經刪除的文件
- 提取Git每次提交后Commit的文件
- GIT迁移服务器
- 分布式版本管理git入门指南使用资料汇总及文章推荐
- git终极指南:在实际开发中的应用
- Git远程操作详解
- 25个 Git 进阶技巧(翻译)
- 详解版本控制利器Git,SVN的异同以及适用范围
- Ruby实现的删除已经合并的git分支脚本分享
- 在 Shell 提示符中显示 Git 分支名称的方法
- Git使用基础篇(一些常用命令和原理)
- git eclipse 插件的安装
- git fork同步是什么意思?
- Git使用小坑 Out of memory错误的解决方法
- Python的高级Git库 Gittle
- 使用GIT进行源码管理――GUI客户端小结
- 使用git代替FTP部署代码到服务器的例子
- linux系统安装git及git常用命令
- 分享下自己总结的Git常用命令