Git实战(三)环境搭建博文。我们大致解说了一下git的环境安装。今天我们解说一下Git的状态转换。

学习版本号控制工具。对工具进行版本号控制之间的状态转换很重要。

毕竟Git仅仅是一个工具,假设不了解工具的每一步操作都是为什么,那么学习Git也就没有多大意义了。

Git初始化

在学习Git状态转换之前,我们先来认识一下Git的初始化,即在本地创建一个Git版本号库。与SVN在server上创建唯一的版本号库不同,Git版本号库能够随client须要自由在client创建。其个数和位置不受不论什么限制。git初始化命令,例如以下所看到的:

git init demo

当中,demo为初始化版本号库名称。为了明确Git初始化都做了哪些操作,我们能够使用列表查命令,例如以下所看到的:

ls -aF

通过查看能够看出,Git初始化,会在指定文件夹下创建一个.git文件夹,当中存放了该git版本号库全部须要的数据和资源。详细内容,假设有兴趣能够自行查阅。

Git状态转换

Git初始化完毕之后,不过声明了一个版本号库。我们还没有開始跟踪管理项目中的不论什么一个文件,所以接下来要做的工作就是在Git版本号库中加入一些我们须要进行版本号控制的文件。

在日常的Git操作中,全部Git进行的操作大致会经过三个区域。即工作区、跟踪区和历史记录区。三者之间的转换关系。例如以下图所看到的:

从上图中。我们能够看到三个工作区之间的转换。大致分为四种命令,各自是 git add、 git commit、git reset和git checkout。四种操作为了什么。我会在接下来的细节性文章中详细分析,这里大家先了解一下。为了便于读者更加清晰的认识三个工作区之间转换关系。我们再来看一个更仔细的示意图,例如以下所看到的:

从上图中,我们能够发现除上述四种git命令之外,日常的命令还有如:git clone、git rm和git revert 等等。相同,我会在接下来的细节性文章中详细分析,这里大家了解一下就可以。



        到此为止。我们对Git宏观的解说就结束了,这部分对于Git据了解是非常重要的。我将继续深入分析在接下来的文章。

敬请关注!

版权声明:本文博客原创文章,博客,未经同意,不得转载。

Git现实(四)状态转换的更多相关文章

  1. Git实战(四)状态转换

    上次的Git实战(三)环境搭建博文.我们大致解说了一下git的环境安装,今天我们解说一下Git的状态转换. 学习版本号控制工具.对工具进行版本号控制之间的状态转换很重要.毕竟Git仅仅是一个工具.假设 ...

  2. 四十二、Linux 线程——线程同步之条件变量之线程状态转换

    42.1 线程状态转换 42.1.1 状态转换图 42.1.2 一个线程计算,多个线程获取的案例 #include <stdio.h> #include <stdlib.h> ...

  3. java 22 - 18 多线程之 线程的状态转换、线程组

    线程的状态转换图解:图片 线程的线程组: 线程组: 把多个线程组合到一起.    它可以对一批线程进行分类管理,Java允许程序直接对线程组进行控制. 首先创建一个Runnable的实现类 publi ...

  4. TCP 连接建立和断开,以及状态转换

    1. TCP报文结构 TCP是一种可靠.面向连接.全双工的传输层协议,其报文格式如下所示:      源端口.目的端口:16位长.标识出远端和本地的端口号.     顺序号:32位长.表明了发送的数据 ...

  5. Java多线程及线程状态转换

    以下内容整理自:http://blog.csdn.net/wtyvhreal/article/details/44176369 线程:是指进程中的一个执行流程.  线程与进程的区别:每个进程都需要操作 ...

  6. 一文读懂Java线程状态转换

    前言 本文描述Java线程线程状态及状态转换,不会涉及过多理论,主要以代码示例说明线程状态如何转换. 基础知识 1. 线程状态 Thread源码中的状态说明: 线程可以有6种状态: New(新建) R ...

  7. TCP状态转换(图解+文字解说)

    <深入分析 javaweb 技术内幕>P38 读书扩展 作者:淮左白衣 写于2018年4月12日20:58:36 目录 TCP状态转换图解 图解三次握手 文字讲解三次握手: 图解四次挥手 ...

  8. Git中crlf自动转换的坑

    新上手一个项目,克隆了代码下来搭环境,一路坑.其中一个sh脚本执行不了,报IOException,java日志除了"找不到文件或文件夹"之外看不出任何信息,手动运行脚本才发现是脚本 ...

  9. TCP的状态转换

    TCP的状态转换图 手写的状态转换图 一.服务端状态变迁:​ 服务端创建套接字之后调用listen函数将套接字有一个未连接的主动套接字转换为被动套接字,指示内核应接受指向该套接字的连接请求,套接字状态 ...

随机推荐

  1. OpenSSL命令---rsa

    用途: Rsa命令用于处理RSA密钥.格式转换和打印信息.其实其用法和dsa的差不多. 用法: openssl rsa [-inform PEM|NET|DER] [-outform PEM|NET| ...

  2. 【Visual C++】游戏开发五十六 浅墨DirectX教程二十三 打造游戏GUI界面(一)

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/16384009 作者:毛星云 ...

  3. eclipse没有New Java Class的解决办法

    配置之前的截图: 配置步骤:

  4. 在Eclipse中使用JDBC访问MySQL数据库的配置方法

    在Eclipse中使用JDBC访问MySQL数据库的配置方法 分类: DATABASE 数据结构与算法2009-10-10 16:37 5313人阅读 评论(10) 收藏 举报 jdbcmysql数据 ...

  5. 使用PHP搭建自己的MVC框架

    一.什么是MVC MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller ...

  6. js,this,constrct ,prototype

    这一章我们将会重点介绍JavaScript中几个重要的属性(this.constructor.prototype), 这些属性对于我们理解如何实现JavaScript中的类和继承起着至关重要的作 th ...

  7. 编程算法 - 最长公共子序列(LCS) 代码(C)

    最长公共子序列(LCS) 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 给定两个字符串s,t, 求出这两个字符串最长的公共子序列的长度. 字符 ...

  8. JSONP跨域的原理解析[转]

    转自 http://www.nowamagic.net/librarys/veda/detail/224 JavaScript是一种在Web开发中经常使用的前端动态脚本技术.在JavaScript中, ...

  9. ASP.NET MVC 5 学习教程:添加控制器

    原文 ASP.NET MVC 5 学习教程:添加控制器 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过 ...

  10. PHP通过Thrift操作Hbase

    PHP通过Thrift操作Hbase     HBase是一个开源的NoSQL产品,它是实现了Google BigTable论文的一个开源产品,和Hadoop和HDFS一起,可用来存储和处理海量col ...