以前总是由于自己的自身的原因,对于每一次的git的操作,我都是通过eclipse或者是idea来进行的,但是

我每一次都不是很清楚的关于这些方面的操作,现在我们来进行关于git bash的操作,正是由于这些操作使

的自己对于git的操作有了一个比较清晰的认知了,首先我们先看一张图:

首先我们必须要先理解这几个概念:暂存区,本地仓库,远程仓库

首先暂存区这个是我们每一次进行代码修改的地方,例如我们ieda的所编译的代码就是缓存区

本地仓库:是我们每一次pull,从远程仓库pull(拉取)到地方,这个地方就是本地仓库 ,他其实就是

远程仓库的一个副本

远程仓库:这个是存放到服务器上的代码,是每一个人认为自己的代码修改好了,就可以集体上传

到一个地方,而你也可以从这个地方下载别人的代码,这个地方就是远程仓库。

我们接下来就来介绍一下使用情况,

Master:主分支

wangjing18-dev:Master分支,这个是存放博主的代码的地方

Stanging:Master分支,这个是我们集体存放测试代码的分支

例如:你有一个项目,你在本地测好了,但是你想放到线上服务器

但是你又不确定没有bug,则这个时候你可以把代码放入到线上的

测试环境上面,这个时候是线上的测试环境,可以让测试人员也可

以访问的到。

然后我们来介绍这个图的意思:

pull:这个是远程仓库拉取数据到本地仓库,就是为了和远程仓库所匹配

commit:当我们想要把自己的代码想要提交到远程的时候,所用的命令行语句,由于我们修改所在的区域在暂存区

我们首先要把自己的代码commit(提交)到本地仓库,然后在从本地仓库push到远程仓库,但是切记住一点,我们如

果每一次在commit的时候,我们都需要先从线上pull最新的代码到本地仓库,然后在把暂存区里面的代码提交到本地

仓库,这个时候如果没有冲突固然是最好的,如果有了冲突,这我需要解决冲突,这个此时本地仓库已经是最新的代码

且又包括暂存区上面的代码了

push:这个就是我们前面把代码提交到了本地,如果我们需要提交到远程服务器上,则需要把代码push到远程的分支里

面,如果有了冲突,再解决就好了

其中merge:如果有两个分支里面的代码在同一个区域中(两个同时隶属于暂存区,或本地仓库,或远程仓库),这个时候

如果我们想要把这个两个分区合并,这个也就是所谓commit,只不过这个不跨区域,此时我们把wangjing18-dev的这

个分支mergeStanging,此时这个mergeStanging就有了wangjing18-dev的代码,然后我们在commit,然后在push,

则这个样子就可以了这个就是git的简单的使用原理

何当共剪西窗烛,却话巴山夜雨时

Git关于pull,commit,push的总结的更多相关文章

  1. 2.每人自己建立一个HelloWorld项目,练习使用git的add/commit/push/pull/fetch/clone等基本命令。比较项目的新旧版本的差别。答题人:张立鹏

    第1步:创建SSH Key.在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步.如果没有,打开Shell ...

  2. 第二章——建立一个HelloWorld项目,练习使用git的add/commit/push/pull/fetch/clone等基本命令。比较项目的新旧版本的差别-----答题者:徐潇瑞

    1.首先下载安装git,很简单所以就不详细说了,当弹出一个类似的命令窗口的东西,就说明Git安装成功 2.因为Git是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识 3.接着,注册githu ...

  3. 第二章-如何使用github建立一个HelloWorld项目,git的add/commit/push/pull/fetch/clone等基本命令用法。--答题人:杨宇杰

    1.配置Git 首先在本地创建ssh 秘钥:在git bash输入: $ ssh-keygen -t rsa -C "your_email@youremail.com" eg:$ ...

  4. Eclipse版本控制Git不能Pull或者Push

     如下图,addWcLesson.jsp做了修改,但是却显示蓝色√,而且在Eclipse的Git提交插件中也没有监测到修改的文件,导致无法Push and  Commit   原因:之前有些文件执行了 ...

  5. Git 一次性 pull push 所有的分支

    /********************************************************************************* * Git 一次性 pull pu ...

  6. 【记录】gitLab git命令add commit fetch pull push

    最近项目使用git进行版本控制,由于之前用svn,所以对git不是太熟悉,网上一通乱找git各命令含义, 以下内容感觉讲的很详细,可以很清楚理解git提交流程,博主把重要的信息用红字标注了,更加显眼. ...

  7. git与github安装、配置、pull、push

    操作系统是Ubuntu 16.04 LTS 64bit 1 安装git (1)安装 sudo apt-get install git-core (2)一些全局变量的初始化 在本地建立一个文件夹,然后做 ...

  8. git clone、 remote、fetch、pull、push、remote

    git clone命令笔记 作用:远程克隆版本库 1. 克隆版本库 git clone <版本库的网址> git clone zoran@192.168.2.167:/data/gitda ...

  9. Git远程操作详解(clone、remote、fetch、pull、push)

    https://blog.csdn.net/u013374164/article/details/79091677 Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多 ...

随机推荐

  1. 计蒜客-跳跃游戏二 (简单dp)

    题目链接:https://nanti.jisuanke.com/t/20                                         跳跃游戏二 给定一个非负整数数组,假定你的初始 ...

  2. ubuntu安装nodejs出现./config.gypi错误

    报错的内容如下: xxx@xxx [/usr/local/src/node-v0.8.3]# ./configure { 'target_defaults': { 'cflags': [], 'def ...

  3. android studio 汉化 svn插件汉化。布局文件 属性 汉化 public.xml

    android studio 汉化 SvnBundle.properties D:\Android Studio\plugins\svn4idea\lib resources_en.jar\org\j ...

  4. 10.23 正睿停课训练 Day7

    目录 2018.10.23 正睿停课训练 Day7 A 矩形(组合) B 翻转(思路) C 求和(思路 三元环计数) 考试代码 B1 B2 C 2018.10.23 正睿停课训练 Day7 期望得分: ...

  5. 处理全站请求编码,无论是GET还是POST,默认是UTF-8

    1.java类: import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;imp ...

  6. Problem E: 用链表实现约瑟夫环

    Description 你听说过约瑟夫问题吗?问题大致如下:首先n个人围成一个圈,标记为1到n号.接着,从1号开始报数(从1开始),然后2号报数,然后3号...当有人报到到m时,这个人就要踢出比赛,然 ...

  7. eclipse中配置server

    打开Eclipse,在打开上面的help--- install new software---- work with 里面点开选择--All Available Sites-- 等下面的pending ...

  8. php boolean

    要明确地将一个值转换成 boolean,用 (bool) 或者 (boolean) 来强制转换 var_dump((); // true 当转换为 boolean 时,以下值被认为是 FALSE: 1 ...

  9. [__NSArrayM insertObject:atIndex:]: object cannot be nil'

    错误描述:如下图 分析原因: 1.插入的对象为空了 2.[__NSSetM addObject:] object cannot be nil [__NSArrayM insertObject:atIn ...

  10. webpack总结

    1.webpack默认只能引用js文件,通过loader可以引入别的文件(css.image.font等) 2.webpack-dev-server提供了一个web server,通过配置将dist目 ...