Git实战(四)状态转换

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

        学习版本控制工具,对工具进行版本控制之间的状态转换非常重要。毕竟Git只是一个工具,如果不了解工具的每一步操作都是为什么,那么学习Git也就没有多大意义了。


Git初始化

        在学习Git状态转换之前,我们先来认识一下Git的初始化,即在本地创建一个Git版本库。与SVN在服务器上创建唯一的版本库不同,Git版本库可以随客户端需要自由在客户端创建,其个数和位置不受任何限制。git初始化命令,如下所示:
  1. git init demo  
        其中,demo为初始化版本库名称。为了明白Git初始化都做了哪些操作,我们可以使用列表查命令,如下所示:
  1. 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的理解非常重要,我会在接下来的文章中继续深入的分析。敬请期待!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1.目的: 自行编制模拟程序,通过形象化的状态显示,深入理解进程的概念、进程之间的状态转换及其所带来的PCB内容 、组织的变化,理解进程与其PCB间的一一对应关系。 2. 内容及要求: 1) 设计并实现一个模拟进程状态转换及其相应PCB内容、组织结构变化的程序。 2) 独立编写、调试程序。进程的数目、进程的状态模型(三状态、五状态、七状态或其它)以及PCB的组织形式可自行选择。 3) 合理设计与进程PCB相对应的数据结构。PCB的内容要涵盖进程的基本信息、控制信息、资源需求及现场信息。 4) 设计出可视性较好的界面,应能反映出进程状态的变化引起的对应PCB内容、组织结构的变化。 5) 代码书写要规范,要适当地加入注释。 6) 认真进行预习,完成预习报告。 7) 实验完成后,要认真总结,完成实验报告。 3.使用的数据结构及说明: 在本实验中,主要用到的数据结构是PCB的结构,其中PCB的数据结构如下: struct PCB { int P_Id; //PCB的ID号 char P_Name[10]; //PCB的名称 char P_State[10]; //PCB状态 int P_Runtime; //PCB的所需要的运行时间 int P_Requiry; //PCB所需要的资源要求 struct PCB * next ; //PCB块的下一个指针 } ; 其中,P_Id,和P_Name用来标示一个进程,而P_State用来标示进程的五种状态:Create_state,Ready_state,Block_state,Run_state,Exit_state。P_Runtime标示要完成一个进程所需要的时间。P_Requiry标示一个进程的执行所需要的其他条件,当其他的条件满足,则P_Requiry置1,否则置0。Struct PCB * next 用来指向同一队列中的下一个PCB块。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值