参考:https://www.liaoxuefeng.com/wiki/896043488029600

一)、git的使用:

1.创建版本库(Resopsitory),相当于一个目录,目录中所有的文件被git管理,每个文件的修改跟删除操作都会被跟踪监控。

.git : 跟踪管理版本库

注: 所有版本控制器只能跟踪文本的改动,如:.txt文件,网页,以及程序代码等

二)、git的命令

git log : 查看从最近到最远的提交日志

git checkout: 切换到另一个分支

git checkout --:修改命令

git reset : 回退版本,也可以把暂存区的修改回退到工作区

注:*将暂存区的数据提交到.git版本库即master分支还能够回退一节,====》能

      但需要一条件:即:没有把本地版本库推送到远程

$git push origin master: 将本地分支的最新修改推送至远程仓库

三)、使用可视化工具查看git历史

HEAD:当前版本

HEAD^: 上个版本

HEAD^^: 上上个版本

HEAD~100: 在往上100个版本

git reset: 回退到上一个版本

git的工作区和暂存区

工作区:创建的版本库

git init命令把这个创建的版本库变成Git可以管理的仓库

.git : git的版本库,执行git init命令后,会在创建的版本库目录下自动生成.git文件

四)、添加远程仓库

步骤

  1. 本地创建一个git仓库
  2. 在gitHub创建一个仓库(该仓库作为备份,其它人通过该仓库协作)
  3. 在本地仓库下运行命令关联gitHub的git仓库
  4. 将本地的内容推送到远程库

    通过$git push origin master: 将本地分支的最新修改推送至github

五)、git的代码提交流程

  1. 通过git add : 将文件放置暂存区中
  2. 使用git commit: 将暂存区中的文件放置在分支中

    文件 ------ 》暂存区 --------》分支

    注:可以add多个文件到暂存区(stage),一次性提交到分支上(master)

    创建版本库时,会自动的创建一个唯一的master

六)、git的分支管理

HEDA:当前版本 ------->master(分支) --------->最新提交

创建dev新分支

增加dev指针:

HEDA(当前版本) ------->dev --------》最新提交

master-----》最新提交

dev分支的修改提交更新

当对工作区的修改提交后,dev分支移动,指向最新的的提交,master指向不变对,

此时对工作区的修改和提交就是针对dev分支了

dev分支工作完毕,合并主分支master

master指向dev的最新提交 ,HEAD指向master

HEAD ----> master ------>dev的最新提交

七)、git的优点:

定义:分布式版本控制系统

  1. 不联网也能工作
  2. 分支管理

Git的使用和基本概念理解的更多相关文章

  1. git 入门教程之基本概念

    基本概念 了解工作区,暂存区和版本库的区别和联系有助于我们更好理解 git 的工作流程,了解命令的操作意图. git 和其他版本控制系统如 svn 的不同之处就是有暂存区的概念. 基本概念 工作区 | ...

  2. git 命令(提高篇)的本质理解

    上一篇博客:[[git 命令(提高篇)的本质理解] (http://www.cnblogs.com/juking/p/7105744.html)]介绍了Git 的基础知识 -- 提交.分支以及在提交树 ...

  3. 大数据核心知识点:Hbase、Spark、Hive、MapReduce概念理解,特点及机制

    今天,上海尚学堂大数据培训班毕业的一位学生去参加易普软件公司面试,应聘的职位是大数据开发.面试官问了他10个问题,主要集中在Hbase.Spark.Hive和MapReduce上,基础概念.特点.应用 ...

  4. SpringIOC的概念理解、构造器注入、setter注入、p命名空间注入、IOC容器介绍与比较

    1.IOC概念理解 IOC(Inversion of Control)即“控制反转”,不是什么技术,而是一种设计思想.在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象 ...

  5. Kubernetes重要概念理解

    Kubernetes重要概念理解 kubernetes是目前最主流的容器编排工具,是下一代分布式架构的王者.2018年的kubernetes第一个版本1.10已经发布.下面整理一下,kubernete ...

  6. SNF快速开发平台2019-角色、权限、账户的概念理解-非常全的理论讲解权限控制

    组织模型   资源模型  操作模型 谁能够执行哪些操作    执行资源的范围 资源概念资源就是想要的到的最终物质,我们可以给每一个资源定义一个权限,也可以给某一类资源定义一个权限 权限概念权限是对资源 ...

  7. elasticsearch基本概念理解+elasticsearch 的shards unassigned处理方法 -- 最佳运维实践 - 集群规划

    1.es与MySQL的概念对比 2.概念理解 2.1 Index : 一个索引即是文档的集合 2.2 Document : 一个文档即是一个可被索引的基础单元信息,一条记录: 2.3 Replicas ...

  8. fragment概念理解

    fragment概念理解知识,fragment概念理解图片 fragment概念理解内容,fragment概念理介绍,fragment概念理正文 Fragment是Android honeycomb ...

  9. ubuntn系统下将文件拷贝到优盘中及挂载概念理解

    参考资料:http://jingyan.baidu.com/article/7082dc1c76f178e40a89bdd3.html: http://bbs.csdn.net/topics/3801 ...

随机推荐

  1. C# 求Π Π/4=1-1/3+1/5-1/7+......+1/(2*n-3)-1/(2*n-1); (n=2000)

    double a = 0.0;//最终Π的结果 double类型 int n; for (n = 1; n <= 2000; n++) { if (n % 2 == 1) { a += 1.0 ...

  2. odoo联调

    odoo联调(剑飞花 373500710) 1.准备工作 1.1.参考文章“odoo8.0+PyCharm4.5开发环境配置”配置好odoo开发环境 1.2.下载Chrome浏览器,安装. 1.3.下 ...

  3. Spring Boot Security And JSON Web Token

    Spring Boot Security And JSON Web Token 说明 流程说明 何时生成和使用jwt,其实我们主要是token更有意义并携带一些信息 https://github.co ...

  4. ssh终端远程登陆主机命令--笔记

    ssh终端远程登陆主机命令 ssh user@host ssh optadmin@10.55.45.38

  5. 该虚拟机似乎正在使用中。 如果该虚拟机未在使用,请按“获取所有权(T)”按钮获取它的所有权。否则,请按“取消(C)”按钮以防损坏。 配置文件: ***.vmx。

    打开虚拟机的时候,出现这样的问题: 该虚拟机似乎正在使用中.  如果该虚拟机未在使用,请按“获取所有权(T)”按钮获取它的所有权.否则,请按“取消(C)”按钮以防损坏.  配置文件: D:\VM\wi ...

  6. 2018.8.2 python中is和==的区别

    一.is 和==的区别 1.is 比较的是左右两边的内存地址, ==比较的是左右两边的值. 2.id() 通过id()可以查看一个变量表示的值得内存中的地址. s = 'alex' s1 = 'ale ...

  7. pythonpip的基本使用

    pip 是 Python 包管理工具,该工具提供了对Python 包的查找.下载.安装.卸载的功能.目前如果你在 python.org 下载最新版本的安装包,则是已经自带了该工具.Python 2.7 ...

  8. 数竞大佬jhc的三角函数复习题

    班主任让数竞大佬jhc整理的三角函数复习题,我参与编辑完成.个别题目来自参考书.度盘pdf格式下载:复习题提取码419d,答案提取码5a12 "单纯"的运算 本文由蒋浩川原创,由\ ...

  9. 学习笔记11全局处理程序global.asax

    *全局处理程序Clobal.asax只能叫这个名字,不能修改文件名,如果网站没有的话,可以自己添加. *Application[]类似于session,是全局的,Application["k ...

  10. Spring Boot实战之定制type Formatters

    本文首发于个人网站:Spring Boot实战之定制type Formatters 前面我们有篇文章介绍了PropertyEditors,是用来将文本类型转换成指定的Java类型,不过,考虑到Prop ...