git.exe clone --progress -v "git@code.sohuno.com:huimingtao/focus-wap.git" "D:\workspace1\focus-wap"

git.exe checkout -b pad remotes/origin/pad

git remote show origin
查看名称为origin的远程仓库的详细信息

git init
初始化一个git项目

git remote add origin git@code.sohuno.com:rogantian/git-test.git
添加一个叫origin的远程仓库

git push -u origin master
将本地仓库的master分支推送到名为origin的远程仓库上去。-u表示绑定本地的master和origin上的master分支,下次再在本地的master分支上pull或push的时候可以直接使用git pull 或 git push

git checkout -- src/main/webapp/views/pad/filterBuilding.jsp
放弃本地修改的filterBuilding.jsp文件,从暂存区检出这个文件,如果filterBuilding.jsp没有与分支名冲突的话,使用git checkout src/main/webapp/views/pad/filterBuilding.jsp也可以
(该方式可以在本地不小心修改了或者删除了某个文件,并且尚未添加到暂存区时用来恢复这些文件)

git reset HEAD -- README
如果README这个文件修改了之后add到了暂存区,可以使用该命令将其从暂存区取出,状态变为修改状态,然后可以结合上一个checkout命令将之恢复到修改之前的状态
reset实际上是从仓库中恢复到暂存区

git checkout HEAD --file
将当前工作区的file文件回滚到最后一次提交,并保存到暂存区,比如git checkout HEAD~ --file将file回滚到最后一次提交的父提交并暂存,如果没有指定提交节点,则从暂存区回滚(即上上一条命令)

git log master ^origin/master
可以查看远程分支master上有但本地有,但远程分支没有的提交(即可以查看没有push到远程的commit有哪些)

git log origin/master ^master
同上一条,可以查看远程有,但本地没有的提交

git commit -am "test test"
将当前工作区中已经跟踪文件的修改和删除添加到暂存区并且提交(即包括add和commit),但是不会影响到新建的文件

git log -p
列出详细区别(generate patch,包括增加了那一行,删除了哪一行)

git log --stat
列出次一级别的详细区别(只列出某个文件总共增加了多少行,删除了多少行等)
git log -2
仅列出最近两次的提交

git log --pretty=oneline
以简洁的格式显示日志,有oneline,short,full,fuller,format等

git log --graph
会显示简单图形

git diff
比较暂存区和工作区

git diff HEAD
比较最近一次提交和工作区

git diff maint
比较maint分支和当前工作区

git diff da895 b325c
在两个提交点之间比较

git diff --cached
比较最近提交和暂存区

git diff <branch1> <branch2>
在两个分支之间比较

git status -s
-s表示give the output in the short-format 其中绿色表示在暂存区没有提交的文件,红色表示修改了而没有添加到暂存区的文件

==============查看、切换、创建和删除分支=================
git checkout -b <newbranch>
新建一个名为newbranch的分支,然后切换到该分支,同git branch newbranch git checkout newbranch这两个命令分别执行时的效果一样

git checkout -b <newbranch> <oldbranch>
基于oldbranch创建新的newbranch

git checkout $id
把某次历史提交记录checkout出来,但无分支信息,切换到其它分支会自动删除,此时可以使用git checkout -b <newbranch>就可以在这个提交点上创建分支了,同下面这个命令

git checkout $id -b <newbranch>
把某次提交记录checkout出来,创建成一个分支

git branch --list
查看本地的分支情况,同没有参数的git branch命令效果一样,可以使用pattern来过滤

git branch -r
显示远程分支情况 可以使用pattern过滤

git branch -a
包含--list和-r的效果,可以使用pattern过滤

git branch -d branchname
删除名为branchname的分支

git branch -D <branchname>
强制删除某个分支(未被合并的分支被删除的时候需要强制)

git push origin :<branchName>
删除远程分支,这是gitV1.7.0之前的版本

git push origin --delete <branchName>
新版git删除远程分支

git branch -v
查看各个分支最后的提交信息

git branch --merged
查看已经被合并到当前分支的分支

git branch --no-merged
查看尚未合并到当前分支的分支

================标签==========================
git tag
列出所有标签

git tag -l <pattern>
列出所有标签,并且可以使用匹配,-l是--list的缩写

git tag <tagname>
新建一个轻量级的tag

git -a <tagname>
新建一个含附注的标签

git -a <tagname> $id
在某次提交上加标签

git push origin <tagname>
将某个标签推送到远程仓库

git push origin --tags
一次性推送本地所有标签到远程仓库

git tag -d <tagname>
删除本地标签

git push origin :refs/tags/<tagname>
删除远程标签,这种方法是在v1.7.0

git push origin --delete tag <tagname>
新版git里删除远程分支的方法

git config --global mergetool.keepBackup false
为了在使用mergetool时不再生成烦人的.orig备份文件

===============远程仓库===================
git remote show <name>
查看名为name的远程仓库信息

git remote prune <name>
删除所有与远程仓库name相关,已经在name里被删除但是本地仍然保留的分支(ie. git remote prune origin)

git cherry-pick <commit id>
把commit从一个分支copy到另一分支

git branch --set-upstream master origin/master
远程分支拷贝本地

git实用手册的更多相关文章

  1. git学习手册

    #git学习手册 git: Git是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理.[2] Git 是 Linus Torvalds 为了帮助管理 Linux内核开发而 ...

  2. 实用手册:130+ 提高开发效率的 vim 常用命令

    Vim 是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.和 Emacs 并列成为类 Unix 系统用户最喜欢的编辑器.这里收录了130+程 ...

  3. Ubuntu下安装Git以及Git帮助手册【转】

    转自:http://milkythinking.com/blog/2011/04/17/install_git_and_manual/ Git简介 Git是一个分布式版本控制系统,对应的是SVN.CV ...

  4. svn 迁移至git操作手册

    svn 迁移至git操作手册 项目交付.版本管理工具变更等情况下,迁移svn旧历史记录有很大必要,方便后续追踪文件的提交历史,文件修改记录比对等.git自带了从svn迁移至git的工具命令,可很好的对 ...

  5. Git使用手册【转】

    转自:https://www.jianshu.com/p/e32a8e7ca93b 目录: Git是什么 基本概念 Git的诞生 Git的安装与配置 创建版本库 Git操作略览 远程仓库:git的杀招 ...

  6. 【转载】Exchange 2010配置与安装实用手册

    Exchange 2010配置与安装实用手册 在Exchange 2010配置的时候主要分三大部分,这分别是网络配置.准备存储以及相关的安装策略和过程.同时还需要注意和其他的Windows软件相协调. ...

  7. Git Manual / Git使用手册 / Git, GitLab, Git Bash, TortoiseGit (建议全文复制到Word文档中通过导航窗格查看)

    Git使用手册 目录 1     引言 2     Git.GitLab简介 2.1      Git 2.2      GitLab 2.3      Git基本概念 3     运行环境 4    ...

  8. 《mac的git安装手册-1》

    <mac的git安装手册-1> 下载地址 https://git-scm.com/downloads 如果遇到上面这个问题打开系统偏好设置: OK,这样就能安装了

  9. 《mac的git安装手册-2》

    <mac的git安装手册-2> 下载地址 https://git-scm.com/downloads 如果遇到打不开的情况,请在系统偏好设置内——>安全性与隐私下 ——>选择仍 ...

随机推荐

  1. tensorflow之最近邻算法实现

    最近邻算法,最直接的理解就是,输入数据的特征与已有数据的特征一一进行比对,最靠近哪一个就将输入数据划分为那一个所属的类,当然,以此来统计k个最靠近特征中所属类别最多的类,那就变成了k近邻算法.本博客同 ...

  2. Python自学之路---Day01

    目录 Python自学之路---Day01 注释 单行注释 多行注释 print()函数 语法 参数 实例 input()函数 语法 参数 实例 查看Python的关键字 代码 变量与常量 变量 如何 ...

  3. findbugs报OBL_UNSATISFIED_OBLIGATION_EXCEPTION_EDGE的修改实例

    先看出问题的一段代码 public void encode(String xxxPath, String thumbTmpPath, String imageType) { LOGGER.info(& ...

  4. Ubuntu apt install 下载软件很慢的解决办法

    1.打开/etc/apt/sources.list 将内容替换为以下内容(注意把sources.list文件备份一下) deb http://mirrors.aliyun.com/ubuntu/ xe ...

  5. 药物动力学|肿瘤药物基因组研究的策略|OMIM database|PharmGKB

    生命组学 同义突变虽然不改变蛋白质种类,但是影响量,修饰的稳定性. SNP vs mutation SNV单核苷酸变化,mutation,SNP是从群体角度思考的,约有1%,mutation比SNP还 ...

  6. Python—使用列表构造队列数据结构

    队列的概念 只允许在一端插入数据操作,在另一端进行删除数据操作的特殊线性表:进行插入操作的一端称为队尾(入队列),进行删除操作的一端称为队头(出队列):队列具有先进先出(FIFO)的特性. # _*_ ...

  7. C++构造函数概念作用

    作用: 对对象进行初始化,如给成员变量赋初值,而不用专门再写初始化函数. 防止有些对象没被初始化就使用,导致程序出错. 要求: 名字与类名相同,可以有参数,但不能有返回值(void也不行) 编译时: ...

  8. Android通过包名打开第三方应用

    import android.content.ComponentName; import android.content.Context; import android.content.Intent; ...

  9. nginx中rewrite flag

    rewrite  正则表达式  新URI  [flag]; [flag] 选项用于调控重写的行为,它的取值可能是: last:重写完成后,会停止继续处理当前区块所有属于ngx_http_rewrite ...

  10. Python学习中的随笔,好记性不如烂笔头

    本文 为博主看了 vamei 的blog 写下的随笔 . 致敬Vamei 1.type()   可以显示参数的类型 如 : a=12   type(a) 为 int 2.python的基本类型 为 i ...