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. kube-proxy详解

    KUBE_LOGTOSTDERR="--logtostderr=true"KUBE_LOG_LEVEL="--v=4"NODE_HOSTNAME="- ...

  2. 深入分析解决Deepin 15环境变量修改问题,完成JAVA环境搭建

    最近使用deepin配置JAVA环境时发现不论是修改/etc/profile还是 ~/.profile多次尝试后均无效,不得其解,最后通过官方论坛看到大神对deepin环境配置的解释,以及寻找到相关解 ...

  3. idea拉取git项目并创建为maven项目(新创建github项目)

    0 环境 系统环境:win10 编辑器:idea 1 正文 1 clone项目 跟着提示yes 下一步 2 在根节点添加pom.xml(maven) <?xml version="1. ...

  4. 01 Hello Unity

    Unity接界面布局: Hierarchy(层级视图):存放当前游戏场景内所有游戏物体 Scense(主界面):主要的游戏设计界面,开发者操作界面 Game(游戏视图):玩家视角,也是摄像机所要看到的 ...

  5. No module named cv2 报错处理

    运行python脚本出现“No module named cv2 ”,这时我们安装下opencv-python依赖即可 python3 -m pip install opencv-python

  6. python numpy和矩阵

    2.numpy数据选取 lst=[[1, 2, 3], [4, 5, 6]] np.array(lst)[:-1] Out[32]: array([[1, 2, 3]]) np.array(lst)[ ...

  7. Jmeter接口测试之案例实战

    Jmeter是apacheg公司基于Java开发的一款开源的压力测试工具,安装Jmeter之前先安装Jdk,具体JDK安装和环境变量配置自行百度.这里不概述. 1.添加线程组 测试计划->添加- ...

  8. IOC 本质是为了实现 AOP|火影鸣人

    @JFinal 波总在 JFinal 4.8 发布新闻的评论 中给出了下面的表述: IOC 本质是为了实现 AOP 我有点吃惊, 没想到 Java 界的大佬对这两个概念有和我完全不一致的认识. 所以写 ...

  9. 04 Spring:01.Spring框架简介&&02.程序间耦合&&03.Spring的 IOC 和 DI&&08.面向切面编程 AOP&&10.Spring中事务控制

    spring共四天 第一天:spring框架的概述以及spring中基于XML的IOC配置 第二天:spring中基于注解的IOC和ioc的案例 第三天:spring中的aop和基于XML以及注解的A ...

  10. PAT Basic 1104 数字⿊洞 (20) [数学问题-简单数学]

    题目 给定任⼀个各位数字不完全相同的4位正整数,如果我们先把4个数字按⾮递增排序,再按⾮递减排序,然后⽤第1个数字减第2个数字,将得到⼀个新的数字.⼀直重复这样做,我们很快会停在有"数字⿊洞 ...