1. git push -u orgin master【后面push的时候可简写】

第一次push的时候-u后面加上<本地分支名><远程分支>,第二次push的时候就只需要写git push就可以了,但是前提是你远程分支只有一个。例子如下:

第一次:

第二次:

2. git commit -a【会自动把所有已经跟踪过的文件暂存起来一并提交,从而跳过git add步骤】

图片所示我修改了testCommit.txt文件,此文件之前是已经跟踪过的,但是我commit提交会报错,所以需要commit后需要加一个-a,就省去了再次放到暂存区的步骤。

3. .gitignore  忽略文件【一开始就要想好需要过滤哪些文件与目录,不然push之后处理起来很麻烦】

git rm --cached file:从staged区中移除文件,但文件保留在磁盘上

(git rm 来删除文件,同时还会将这个删除操作记录下来;

用 rm 来删除文件,从本地删除,没有将其从 git 的记录中剔除。)

4.git log --stat:显示改变的概要【后面的参数还有很多,我只是列出了个人觉着信息比较有用的参数,具体查看log的参数】

git log --pretty=format:"%h - %an, %ar : %s"

5. git stash 【放入暂存区】

当你发现你之前的代码有bug需要更改需要回到上一个commit而你又不想放弃现在的进度或者想pull最新代码但是不想commit,这个命令就派上用场了。改完bug之后再git stash pop, 继续原来的工作。

6. 自动提示

git co<tab><tab>

git log --p<tab><tab>

7. 从远程仓库抓取数据(只抓取,不合并)    git fetch[远程仓库名]

从远程仓库抓取并合并分支     git pull

下面这张图真的不错哦!便于理解!

8. Git中的分支(branch),其实本质上仅仅是个指向commit的可变指针

Git会使用master作为分支的默认名字

在每次提交的时候都会自动向前移动

【想要理解这个问题,可以去git目录下面自己看下文件里面的内容】

9. HEAD 特别指针,是一个指向你正在工作中的本地分支的指针。

git branch命令,仅仅是建立了一个新的分支,但不会自动切换到这个分支中去

(1)Git中的分支实际上仅是一个包含所指对象校验和(40个字符长度SHA-A字串)的文件

说白了,新建一个分支就是向一个文件写入41个字节(外加一个换行符)那么简单,所以成本要低很多

(2)Git的实现与项目复杂度无关,它永远在几毫秒的时间内完成分支的创建和切换

(3)因为每次提交时候都记录了祖先信息(parent对象),所以以后要合并分支的时候,寻找合并基础(共同祖先)的工作已经完成了一大半,实现起来非常容易。

【这个问题同上,自己查看一下文件就理解了】

10.当做了一些修改并想提交到远程时,远程又有了新的更新,这时候push会 失败,解决方法两种:

Git fetch   抓取新的内容

Git merge orgin/master   手工合并

或者

Git pull orging master    抓取最新内容并自动合并

分布式版本控制系统Git-----9.Git 使用的小技巧的更多相关文章

  1. g4e基础篇#2 Git分布式版本控制系统的优势

    g4e 是 Git for Enterprise Developer的简写,这个系列文章会统一使用g4e作为标识,便于大家查看和搜索. 章节目录 前言 1. 基础篇: 为什么要使用版本控制系统 Git ...

  2. 开发效率优化之Git分布式版本控制系统(一)

    阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680本篇文章将先从Git分布式版本控制系统来阐述开发效率优化 一,企业 ...

  3. Git分布式版本控制系统(上)

    Git分布式版本控制系统(上) 链接:https://pan.baidu.com/s/1CgaEv12cwfbs5RxcNpxdAg 提取码:fytm 复制这段内容后打开百度网盘手机App,操作更方便 ...

  4. GIT分布式版本控制系统

    Git诞生历史 我想大家还记得Linus torvalds在1991年时发布了Linux操作系统吧,从那以后Linux系统变不断发展壮大,因为Linux系统开源的特性,所以一直接受着来自全球Linux ...

  5. Git分布式版本控制系统学习笔记

    Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理.[4]  Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本 ...

  6. [.net 面向对象程序设计进阶] (27) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git

    [.net 面向对象程序设计进阶] (26) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git 本篇导读: 接上两篇,继续Git之旅 分布式版本控制系统 ...

  7. [.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit

    [.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit 读前必备: 接上篇: 分布式版本控制系统Git——使用GitS ...

  8. [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境

    [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境 本篇导读: 前面介绍了两款代码管理工具 ...

  9. Git(分布式版本控制系统)在Windows下的使用-将代码托管到开源中国(oschina)

    一.Git是什么?     Git --- The stupid content tracker, 傻瓜内容跟踪器.Git是目前世界上最先进的分布式版本控制系统. 二.SVN与Git的最主要的区别?  ...

  10. Git ——分布式版本控制系统

    Git ——分布式版本控制系统 本人git主页地址:https://github.com/lendoon/test.git git使用心得:初次接触git在课堂上,老师给我们提供了一个代码托管的场所, ...

随机推荐

  1. 使用HttpWebRequest模拟登陆阿里巴巴(alibaba、httpwebrequest、login)

    前言 其实老喜欢取经,偶尔也得分享下.关于阿里巴巴国际站的登陆,过程有点复杂但是算不上难.一不小心少个东西倒也挺麻烦的. 主要是看下请求类HttpClient基本请求封装使用,AliClient模拟浏 ...

  2. 分享下mac安装xamarin跨平台开发环境的坑

    之前在vs2015上安装好了xamarin环境,考虑到调试IOS仍然需要mac机,昨天决定直接在mac上安装xamarin. 安装完所有的效果如上图,此时已经可以创建安卓和IOS环境. 我安装过程中, ...

  3. java异常处理01

    当我们做java项目的时候,多多少少都会出现一些异常,如何快速处理异常也将会影响到一个项目开发的进度. 以下将是面对的一些异常将如何去处理: 1.数据库没有启动 解决方法:计算机-->管理--& ...

  4. Linux之初体验

    预备作业03--我的Linux初体验 学习基于VirtualBox虚拟机安装Ubuntu图文教程在自己笔记本上安装Linux操作系统 一开始以为这个项目很简单,以往也在自己的笔记本上看教程安装过软件, ...

  5. Vs2015 Ef 连接Oracle 出现OracleInternal.Common.ConfigBaseClass 的解决办法

    如果配置没问题的话,就是 Oracle.ManagedDataAccess 在全局程序集的版本问题 解决方法方法 将Oracle.ManagedDataAccess  GAC全局程序集中移除 1:用C ...

  6. Netty(6)源码-服务端与客户端创建

    原生的NIO类图使用有诸多不便,Netty向用户屏蔽了细节,在与用户交界处做了封装. 一.服务端创建时序图 步骤一:创建ServerBootstrap实例 ServerBootstrap是Netty服 ...

  7. http协议的状态码 403 404 301 302 200 500 502 504 报错显示

    在网站建设的实际应用中,容易出现很多小小的失误,就像MySQL当初优化不到位,影响整体网站的浏览效果一样,其实,网站的常规http状态码的表现也是一样,Google无法验证网站几种解决办法,提及到由于 ...

  8. angularjs-xeditable整合typeahead完成智能提示

    按照需求,需要在angularjs的xeditable中加入typeahead,来完成智能提示,并且在选择后,把该条数据的其他信息也显示在此行中,于是做了一下的测试修改. 当然,既然用了xeditab ...

  9. 第一百二十节,JavaScript事件对象

    JavaScript事件对象 学习要点: 1.事件对象 2.鼠标事件 3.键盘事件 4.W3C与IE JavaScript事件的一个重要方面是它们拥有一些相对一致的特点,可以给你的开发提供更多的强大功 ...

  10. JAVA-反射学习

    原文:http://www.cnblogs.com/rollenholt/archive/2011/09/02/2163758.html 个人总结: 1. 反射是什么:由字节码文件(.class)获取 ...