git零基础入门(我并不是高冷Git进行中01)

git零基础入门(我并不是高冷Git进行中01)(1)

公司正式使用Git来管理代码到现在已经三四个月了,趁自己还算熟手,记录和分享一下Git的使用(会涉及正式开发中的使用方法,当然,各人还是会有各自的使用方法啦,并不是千篇一律)

介绍

Git是一款基于linux的版本控制工具,目前大多数公司使用的版本控制工具一般还是使用Subversion(SVN)来进行代码迭代管理、文档管理等。

而Git与其最大的区别就在于,其分布式版本库的特点,在服务端和客户端都拥有完整的版本库,就算脱离了服务端,客户端也可以照样进行版本管理,开发者可以通过clone在本地生成一个完整的git仓库,也就是可以提交到本地,再和其他开发者进行合并比较,最终提交到远端仓库上。这也实现了show log查看历史,compare版本比较都不需要访问服务器

下面简单介绍下Git的一些基本的使用和命令,之后将基于GitLab进行一个真正开发过程中的Git使用简述。

特点

在使用Git进行版本控制的时候,需要了解一点,Git的内部流程机制虽然复杂,涉及到了多个点,从工作区、到暂存区、本地仓库、远端仓库,感觉起来操作会复杂,但Git的正常使用都可以使用一些友好的脚本来进行,来使它更适合我们的工作。若不想使用脚本语言,也可以通过图形化工具来进行,比如我们比较熟悉的小乌龟的Git版本——TortoiseGit。

Git流程

git零基础入门(我并不是高冷Git进行中01)(2)

祭出(珍藏的?!)几张便于理解的图:

No.1选手

git零基础入门(我并不是高冷Git进行中01)(3)

git零基础入门(我并不是高冷Git进行中01)(4)

可以看到,在一次Git操作中会涉及到这几个库:

工作区是我们电脑上的那个代码目录,如这里的mrpc,就是工作区;

.git目录,便是我们所说的Git版本库,里面存储了很多东西,如我们的提交记录,版本信息等,其中就包括了 暂存区 这个小东西,在工作中,我们一般会将要提交的东西先提交到其中,最后再一次性提交到远程仓库。

git零基础入门(我并不是高冷Git进行中01)(5)

No.2选手

git零基础入门(我并不是高冷Git进行中01)(6)

这里代表了我们提交和更新的流程。

可见我们提交的时候,我们需要先把要提交的文件add到我们的暂存区中,再通过commit把暂存区里面所有的待提交文件一次性提交到本地仓库,这两个步骤是可以多次进行的,最终再将本地仓库里的待提交文件提交至远端仓库上。

而更新的时候,有两种方式可以选择:

1、git fetch git merge:这两个命令的组合使用,可以实现将远端仓库的更新内容更新下来,并合并到自己的本地仓库上,也就是说fetch不会帮你把代码合并到你的代码上,需要通过merge命令来进行。

2、git pull:这个命令比起1来说,粗暴、简单,就是直接帮你把fetch和merge一起做了,一次性到位,若出现更新后冲突,再在自己本地仓库上逐个解决。

No.3选手

说完提交/更新的流程,再来说一下,一个我们必不可少的朋友:回退

git零基础入门(我并不是高冷Git进行中01)(7)

前面我们说过,Git的一个特点是它可以在客户端进行版本比较,也意味着你可以在本地就进行回退代码,如图所示,我们通过git reset来进行回退,而这一部是在本地仓库进行的,不需要与远端进行交互。

后续

git零基础入门(我并不是高冷Git进行中01)(8)

这里我们先介绍下git的基本流程,对git有一定的理解后,接下来就开始介绍下其他信息~

——没事待在家里不出门的 居家程序员。(我不想脱发!)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页