Git简明使用指南(一)

Git简明使用指南(一)

接下篇:Git简明使用指南(二)

Why Git?

说起来,我前些时候问一个朋友,他们公司之前是怎么管理代码的,他告诉我:开一个SMB服务器,每个人分配一个目录,然后master定期进行检查和合并……

Git是一个代码的版本管理软件,使用版本管理软件,可以有以下优点:

  • 防止代码被错误的修改和删除

  • 防止因为团队中某个人的错误操作造成代码丢失

  • 更方便的进行代码回滚和代码变更记录查看

与SVN相比,Git最大的有点是不依赖于服务器。即便服务器宕机、数据丢失,Git也能正常工作,不受任何影响

PS:此文中尽量以Git GUI进行介绍和演示,软件为Git for Windows

基本使用

Git基本操作主要有clone(克隆)、commit(提交)、push(推送/上传)、pull(拉/下载),我们分开介绍

第一步:建立一个版本库

你可以新建一个版本库,打开Git GUI,点击“Create New Repository”,选择一个目录,再点击“Create”,稍等片刻,就可以建立起一个空的版本库

创建版本库

如果是clone已存在的版本库,则打开Git GUI,选择“Clone Existing Repository”,分别填入远程地址、本地目录。注意:本地目录必须是一个不存在的目录

创建一个commit

修改完代码后,点击Git GUI上的“Rescan”,即可看到你的更改。可以看到,左边是文件列表,右边则是更改内容

commit

接下来点击“Stage Changed”暂存更改,之后再右边输入提交说明(一般来说,就是简述此次提交更改了什么)

commit说明

将代码Push到服务器

如果你只是在自己电脑上用Git,那么你可以跳过这一节了

如果你是clone已存在的版本库,并且也是push到此版本库,那么你可以跳过下面添加的步骤

添加一个地址

点击“Remote”-“Add”,分别输入名称和地址,下面的“Further Action”保持默认即可

添加远程地址

上传

点击主界面的“Push”,选择好分支和目标地址(一般不用更改)再点击“Push”即可开始上传

push

从服务器获取更改

有时候你需要更新自己电脑上的代码,用来获取别人修改过的代码,这时候你需要pull

首先打开Git Bash,输入git pull origin master,其中,“origin”为目标地址名(和上面“添加一个地址”中的Name相同)master为分支名

pull

如果没有问题,就可以完成代码的更新。发生代码冲突怎么办?请看下面

高级应用1.冲突解决

团队协作难免不会遇到各人提交各人的,导致冲突出现的情况

例如,Push时,出现这样的提示:

push失败

这个时候,你需要打开Bash进行代码更新。如果并没有修改同一个文件,那么,就会正常pull。之后进行Push即可

但是,很多时候我们会遇到这样的提示:

pull冲突

图中的意思是,test.php存在冲突,自动合并失败。这个时候需要我们手动解决冲突

打开test.php,我们可以看到:

冲突内容

Git将存在冲突的位置标明。HEAD即为当前服务器上最新的版本,以等号隔开,下面则为我们最新创建的commit

现在手动解决完所有冲突后,再打开Git GUI,可以看到已经替我们自动填好了提交说明

提交合并

我们只需要将文件“Stage”后,点击commit,即可创建一个合并提交。再尝试Push,便一切正常

在提交历史中,我们可以看到:

commit历史

未完待续

下一节将介绍分支开发、issue

接下篇:Git简明使用指南(二)