前言:

 

 本文讨论,各个处理逻辑中版本的表述、比较中,git的操作的细节和表述符合的具体意义:(非常细节,会的朋友可以跳过) 

对于 遇到的各个命令,会给出详细的解释在附录里面;


理解git文档的四个状态 

 【hsy案】git 就是一个 版本控制,其实也没有啥复杂的, 怎么理解呢,

这是一个百度的图,其实很简单,首先,新建一个文档,这个文档我们还没决定要加到文档库里面的时候,他就是untracked的状态(这个很好理解,就是我们还没决定要跟踪他的版本),然后,我们用git add可以加加到我们的版本控制里面,就是成了我们自己在编一个文档,那就是modified的状态,如何保存呢,wps用过的同学知道wps文档也有 保存,而且云保存,那么问题来了,用过WPS保存的同学肯定遇到一个问题,如果,一个时间长了,文档根本就不清楚自己当时在写什么,如果再加上协同编辑,往往发生冲突。git就是考虑到多人编辑可能出现的问题,解决的办法就是你自己先确认一下,怎么确认呢,那就是再用git add,进入到staged暂存阶段,在这里你的文档都保存了,但是, 只是保存了,还没有确认。 通过git commit的命令我们再确认一下,commit之后,这个文档就是我们进入版本控制后最新的文档,同时,他的状态也从modified -> unmodified ,然后,就是这几个状态来回切换,就这么简单的东西。


git 的版本树的处理逻辑:

上图,比我们看到的第一个图更复杂一点,复杂在哪里呢?

其实,就是复杂在git的版本协调,支持分布式的点分配,这样本地仓库有和远程仓库同步问题。用push,

 

 

上图各个版本的check in / out, push pull的操作 都有以版本的比较为前提。

当然,我们看到,其实diff也有diff HEAD这样的方式。

 


1 diff比较的图形操作:

git 的处理一般都CMD的方式, 但是,为了 快的表述,我们用gitgui的版本进行讨论和cmd的版本是一致的。 

下图为git gui的代码树

git gui 里面选择的时候,蓝色为你当前选择的版本:

然后,你可以通过右击 来选择要比较的版本

diff this -> selected 

 表述,比较右键指向的版本和已经选择的版本(蓝色)

diff selected ->  this

 表述,比较已经选择的版本(蓝色)和右键指向的版本和

这两个的区别,在与,哪个版本为 -,哪个版本为 +的表述


基础的细节:

1.1 高亮显示的版本讯息

1.1.1 有git 仓库的 项目文件夹会带蓝色的后缀:

如下:master后缀

【案】如何获取版本讯息?

我们前面的章节提到在各个版本中切换自如,

1.2 diff 比较的符号表示

1.2.1  比较开始的行号 和结束的行号

1.2.2 比较的  新文件、原文件的表述

 


参考:

1 git for windows的下载:

https://gitforwindows.org/

2 git diff 的简单应用

https://www.cnblogs.com/taohuaya/p/11107264.html

 

 

 

 

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐