上次我们成功建立了一个代码仓库,不过这有什么卵用呢,你不能上传难道就摆在哪儿看?所以今天我来说说git的同步。

首先,git不是单纯的文件存储服务,它是专门为代码同步设计的。作为一个程序源代码,文本内容肯定要远远多于图片,音频,视频这类的文件(二进制文件)。并且代码一般情况下都不大,所以git的操作有以下特点:

  1. 同步时只同步代码修改的所在行的内容和二进制文件。
  2. 不支持断点续传。
  3. 因为不考虑空间,git会在本地创建一个仓库,可以在本地将更新写入仓库中,也可以让仓库与云端仓库同步。(唯一的问题就是,双倍耗存储你懂)

看完大家应该知道了,git操作的主要不同就在于本地仓库这个设置。网上有很多很复杂的图解来完整描述git系统,但作为一个个人开发者或者小团队开发者,我专门准备了一个简单化的图解:

git操作图解

其中全部的箭头上都是基本操作的名称,下面我通过这次同步代码的过程来详细解释这些操作。

我们现在正式开始同步代码,首先复制git仓库地址(上节我提了,github和码云为网页地址,coding自己找),在aide里找一个父目录(例如appproject,别克隆到别的项目的文件里了),选择“克隆git仓库”,输入项目地址,会自动生成一个文件夹名,然后点clone。

克隆git仓库

如果是私有项目,这时会要求你填用户名(起长用户名的,作不作死。aide还蠢,不能保存用户名和密码)和密码。上传的时候也要填(不分公私有)。

填写用户名

到这里我们就完成git的第一个操作clone(克隆)了,你可能会说图解里没有这个操作,在这里你可以理解成一个图里的pull就好(pull是只更新新代码,clone是完整复制,略有不同但不影响本质)

过会儿克隆完成(如果失败请自行检查用户名密码和网络),可以看到一个与网页上一模一样的文件目录,这就是我们的工作区,在这里就是普通的文件目录,我们接下来就把代码复制进来继续开发就好了。

那么如何将这些代码推入云端呢?按照图解,我们需要先将它提交到本地仓库。此时如果克隆正确,文件目录最顶上的“克隆git仓库”应该就已经变成了“git”,点开我们会看到四种操作,其中三种就是我们的图解中的基础操作(分支比较复杂,单独讲)。

git基本操作

按照上面的图解,我们先提交到本地仓库中,点“提交(commit)”进入提交界面,这里没什么特殊情况就都点了吧。点击加号,然后会让你输入更新内容,可以随便写,但这个会一直留在记录中并且可以在网页被所有人(公有项目)看见,自己看情况来定要不要好好记录吧。

选择文件

接下来我们就可以使用“推(push)”了,这里会让我们输入一次用户名密码,接下来就会自动上传了,由于不是每次都上传完整仓库所以一般情况下后面几次速度都会飞快,第一次写文件的话……当我没说。

如果本地仓库是最新版的,那么上传完成时你的代码已经在云端了,在网页中可以看到。你在其他设备上,只需要clone或者“拉(pull)”一下,最新的代码就同步到本地了。

这一波操作下来,应该你已经理解图解里的操作了。下节我将讲讲同步时遇到的特殊状况的处理方式。