准备工作:在git官网上下载git先,下载并安装成功后,打开git中的bash终端,然后cd切换到需要管理的文件目录下,此时可以对这个文件创建版本管理库
①设置这个版本管理库的管理员名称,由于名称是可以重复的,所以需要再设置管理员的邮箱,之后可以对名称和邮箱进行查看(这一步并不是必须的,可直接进行第②步)
②管理员信息设置好了之后,需要初始化这个版本管理库,初始化后会在文件中生成一个.git文件,也可以进行查看
③在所管理文件夹中添加文件,具体有两种方式,一种是在e盘写的git_test文件中直接新建文件即可,第二种方式是在git的bash终端中添加
④虽然在文件夹中新建了一个文件,但是并没有传到我们刚刚创建的版本管理库中,也就是并没有将改动添加到版本库的缓存区中(可以通过指令git status查询文件状态)所以要通过git add 将刚刚创建的文件添加我们的版本库缓存区中,这个时候版本库才知道可以对这个文件进行管理,此时文件处于可以被提交状态(创建文件–>添加版本库缓存区–>提交(提交修改)–>修改–>放入版本库缓存区–>提交) 下面会解释为什么要有缓存区,而不是直接的提交
⑤在git中版本库所管理的文件夹下的文件主要有两种种状态,①一种是没有添加到git版本库中(缓存区中),(此时查询状态的话,文件颜色是红色)②另一种是文件被添加管理库后是可以提交状态(此时查询状态的话,文件的颜色是绿色)
注意 git指令中所有的-m都是指的是添加信息,我这里后面都跟的是1.py,并不是指文件名的意思
对1.py进行修改之后,再查询状态,如下图
执行添加之后,文件名的颜色变成了绿色,说明是可以提交状态
-m是指你要对这个提交的版本的描述信息,其实可以理解为我们说的版本名称,而不是你要提交的文件名称,其实也就可以理解为什么要有可以被提交状态也就是缓存区了,因为一次提交就是一个版本,如果你改好一个文件后就可以直接提交的话,那么你的每个版本都是只有一个文件的变动,那么也就太限制了,所以是把所有改好的文件,都变成可提交状态,也就是放在缓存区,再一次性的提交,变成另一个版本.
从日志里也可以看出来我对1.py进行了两次修改
⑥如何查看此刻还没提交的版本与上一次提交版本的不同之处(有很多个状态的对比,这里就之间可以提交状态和之前提交过得版本之间的差别)
首先对1.py进行修改,对比如下
⑦版本控制
一,当提交之后,发现自己少加了点东西,想在上一个提交的版本里添加,也就是说修改仍放在上一个提交版本里怎么做呢?
可以看到版本数量没有变化,但是最新一个版本的id方式了变化
二.从可以被提交状态,回到不能被提交状态
三.回到过去的版本
四.回到过去版本后 又后悔了,想回到之前的版本
⑧单个文件的版本控制
下面这个图可以看到回到过去的某个文件和回到过去某个版本是有区别的,回到过去的版本后,那么这个版本之后的版本都被清除,但是回到过去某个文件的话就不是这样的.
五 分支的设置(也就是在现有版本上建立分支,切换到分支后所有的更改不会影响到之前的主干)
首先可以以图表的形式将所有的版本显示出来,前面的*都在一条线上,说明是全部在一条分支上
我在dev分支中的1.py加了一句话
六 如何使用merge将分支上的更改也放到主支master上呢
七 当使用merge想合并分支到主干上的时候发生冲突怎么办
冲突是怎么产生的呢,主要是你在主干上修改了1.py,在分支上也做了修改,且是不一样的修改,并不是只单单的某一支进行修改,所以没哟办法很好的合并
发生冲突后的1.py的内容如下
八.使用rebase的合并与merge的合并是有区别的,这里就不详细的介绍了