1.git log

显示仓库的历史记录,默认显示所有记录,

1)git log -m,显示最近的几次提交,,

2)git log --pretty=oneline  显示提交hash和注释

-p 按补丁格式显示每个更新之间的差异。
--stat 显示每次更新的文件修改统计信息。
--shortstat 只显示 --stat 中最后的行数修改添加移除统计。
--name-only 仅在提交信息后显示已修改的文件清单。
--name-status 显示新增、修改、删除的文件清单。
--abbrev-commit 仅显示 SHA-1 的前几个字符,而非所有的 40 个字符。
--relative-date 使用较短的相对时间显示(比如,“2 weeks ago”)。
--graph 显示 ASCII 图形表示的分支合并历史。
--pretty 使用其他格式显示历史提交信息。可用的选项包括 oneline,short,full,fuller 和 format(后跟指定格式)。

2.git reflog 查看命令历史

3.git reset

1)git reset --hard HEAD^ 回退到当前的上一个版本

用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

2) git reset --soft HEAD^ 回退到当前的上一个版本,但是内容放回到仓库中,这个命令常用于合并多次提交为一次,或者制作补丁用

4.git branch 创建分支

1)git checkout -b dev hash 在某个点上创建dev分支,并切换到dev分支

2)git branch 查看分支

3)git branch -d dev 删除分支

4)git push origin  :remote-branch-name  删除远程分支,:前面的空格不能省,原理是push一个空分支到远程的对应分支,相当于删除

5.git remote 管理仓库地址

1)git remote -v   查看仓库地址

2)git remote add test1 xxx  添加一个仓库地址

3)git remote rename test1 test2

4)git remote set-url test2 xx2  修改url

6.git pull 拉仓库

1)git pull remotename branchname 拉指定仓库

http://blog.csdn.net/wfdtxz/article/details/8632811

7.git commit 提交

1)git commit -m "message" -- file1 file2 ...   提交多个文件

2)git commit -m "message" . 提交本目录下的所有文件

3)git commit -m "message" -- folder

-a 所有文件

--amend 修改上次修改

--allow-empty-message -m ""

7.git push 推送仓库

git push <远程主机名> <本地分支名>:<远程分支名>

    git push origin master

8.git stash 暂时存储修改

1)git stash 保存工作现场

2)git stash pop 弹出最上面一个stash并删除

3)git stash list 查看stash列表

4)git stash apply stash@{0} 应用某个stash但是不从list中删除

9.git tag  制作标签

1) git tag 查看标签

2)git tag v0.1 xxx  在某个点上创建v0.1的标签

3)git tag -d v0.1 删除v0.1tag

4)git push origin v0.1 推送tag到远程

5)git push origin --tags 推送本地的所有标签

6)git push origin :refs/tags/v0.1 删除远程的v0.1标签

10. git clean 清除

-f 强制删除 -d 目录 -x 删除不在版本库的包括忽略的文件,  -X 删除仅仅忽略的文件

11. git 配置别名

1) git config --global alias.st status   ==>> git st

2) git config --global alias.co checkout  ===>>git co

3) git config --global alias.ci commit  ===>>git ci

4) git config --global alias.br branch   ====>>git br

12.git format-patch git补丁应用

1)git format-patch 365a...4e16  两次提交直接的补丁,可能有多个

2)git format-patch -n 07fe 某次提交之前的几次提交

  应用补丁

    3)git apply --stat newpatch.patch 检查patch文件

4)git apply --check newpatch.patch 检查能否应用成功

5)git apply --reject newpatch.patch 合并没有冲突的,有冲突的产生.rej 文件,原始文件不修改

5)编辑冲突文件,修改提交

6)git am --resolved 标记解决了

13.git diff 标准补丁

1) git diff master..test --binary  只显示两个分支间的差异,

  -- ./lib 加上限定符,只比较某个目录

   Linux下的diff命令 diff  -uN f1 f2

2) git apply --check 检查补丁   --check 检查补丁, 没有check直接应用补丁

3)patch -p1 patchfile 补丁文件 如果有冲突会生成三个文件,.orig是原始文件,.rej是冲突的修改地方.另一个是修改后的文件

diff --git a/test1/b.txt b/test1/b.txt
index e69de29..36aa66d 100644
--- a/test1/b.txt
+++ b/test1/b.txt
@@ -0,0 +1 @@
+12323

-p 指定目录级别,-p0 使用完整路径,-p1 去除前导斜杠,留下test1/b.txt, -p2 剩下b.txt

-R 反不掉,可以对这次的补丁恢复回来  

应用补丁冲突 http://www.fwolf.com/blog/post/448

14.git bisect 二叉树定位版本错误

1)git bisect start

2)git bisect bad

3)git bisect good xxx

4)git bisect reset 最后完成,回到当前位置

http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

http://git-scm.com/docs/gittutorial

git 常用命令--Linus Torvalds的更多相关文章

  1. Git 常用命令

    一.初始環境配置 git config --global user.name "John Doe"git config --global user.email johndoe@ex ...

  2. Git常用命令和Git团队使用规范指南

    转自:https://wsgzao.github.io/post/git/ 前言 在2005年的某一天,Linux之父Linus Torvalds 发布了他的又一个里程碑作品——Git.它的出现改变了 ...

  3. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  4. Git 常用命令详解

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  5. Git 常用命令大全

    Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v 添加 ...

  6. Git常用命令总结

    Git常用命令总结 git init      在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹.   git clone ...

  7. GIT常用命令备忘

    Git配置 git config --global user.name "storm" git config --global user.email "stormzhan ...

  8. Git 常用命令2

    Git 常用命令 Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ gi ...

  9. git常用命令-基本操作

    git常用命令-基本操作 1)      新增文件 新增了Test_1.java git add Test_1.java git commit –m “新增了Test_1.java” git push ...

随机推荐

  1. Tomcat 虚拟目录映射

    最近老是被一个旧Ant工程所困扰,代码版本都改好了测试也通过了,就是打不了war包,一看build.xml 我的天 各种逆天啊....头大.于是乎想起了最基础的tomcat虚拟目录虽是一个很基础的点, ...

  2. 学习笔记——享元模式Flyweight

    Flyweight模式提供对象的复用. FlyweightFactory类似工厂模式中的工厂,生成对象并提供. 区别在于,享元的工厂会记录生成的对象,当第二次请求到相同的对象时,享元不会再生成一个新对 ...

  3. 转:Emmet 学习之路 - 2 基本语法

    http://blog.csdn.net/jizhongchun/article/details/8472755 导读:Emmet的基本语法.学习步骤是:1 基本语法: 2 html命令: 3 css ...

  4. jq中的css-Dom

    1,height() ,width() 此方法用来获取匹配元素的高和宽的值,如果括号内有值,则是修改匹配元素的值, 2.offset() 此方法的作用是获取元素在当前视窗的相对偏移,其中返回的对象包含 ...

  5. springmvc json数据

    的 @RequestMapping("/getAllEdu") @ResponseBody public void getAllEdu(HttpServletRequest req ...

  6. npm install含义 及vue安装启动项目时报错解决及vue建项目时各文件间的依赖关系

    全局安装vue-cli,使用命令npm install -g vue-cli. 下载模板代码,使用命令vue init webpack my-project,之后会有一些询问,按需填写即可. 最后会看 ...

  7. D. Bear and Two Paths(贪心构造)

    D. Bear and Two Paths time limit per test 2 seconds memory limit per test 256 megabytes input standa ...

  8. 转 如何使用JEE6快速开发简单的webservice

    转自:http://www.iteye.com/topic/1135747,作者:红尘默岩 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要的重复操作. 一.准备工作(以下为本实例使 ...

  9. Delphi的指针(转)

    源:http://blog.csdn.net/henreash/article/details/7368088 Pointers are like jumps, leading wildly from ...

  10. POJ3352 Road Construction 双连通分量+缩点

    Road Construction Description It's almost summer time, and that means that it's almost summer constr ...