Git和Cocoapods的基本使用与进阶(一)

      其实说到Git和Cocoapods我相信对于大家而言都是耳熟能详的两个工具了,几乎没有人会说我其实还没用过这类的话吧。没错,我们知道git add.、commit --m、git push,我们也知道pod init、pod search AFN、pod install,但是你真的知道它们的机制吗?

       好比习武一样,我们只会武功的招式你一样成为不了高手,因为你没有内功心法,你依旧只是个菜鸟,我们在开发这条道路上面也一样,你只知道怎么用,或许你可以在开发中得心应手,但是你永远深入不了,因为你没有深入思考。

一. 使用Git的远程代码仓库托管的两种方式

       OK,我们现在来通过一个案例来展示远程代码仓库托管的两种方式,我们需要把把本地代码仓库的代码提交到我们远程代码仓库。

 1.直接通过clone远程代码仓库生成一个本地代码仓库

  首先来创建一个远程代码仓库      

Git和Cocoapods的基本使用与进阶(一)_第1张图片

在这里我选择的是码市,当然我们还可以使用GitHub, OSChina等等

打开我们的终端,使用git clone将远程代码仓库克隆到本地

然后我们来了解一下本地代码仓库的结构

Git和Cocoapods的基本使用与进阶(一)_第2张图片

紧接着我们可以在clone的代码仓库中给工作区添加我们的代码,此时我们的代码都在工作区中,如果代码有修改的话此时使用git status可以看到修改过的文件是红色的,当我们使用git add .,我们的修改过的代码会被提交到暂缓区, 此时使用git status可以看到修改过的文件是绿色的,最后我们使用git commit -m '提交日志’,此时我们的代码就被提交到本地代码仓库的master分支。

然后将提交到本地代码仓库master分支上面的代码使用git push提交到远程仓库的master分支上。

Git和Cocoapods的基本使用与进阶(一)_第3张图片

这样我们第一种方式就已经演示完成了。

2. 本地创建的代码仓库和远程代码仓库进行链接

首先我们在本地创建一个代码仓库

然后我们随意在本地代码仓库创建一点东西

然后我们就可以链接本地代码仓库和远程代码仓库了


此时我们可以试着提交一下我们的代码到远程代码仓库我们来看看会发生什么事情


出现这个提示很正常因为现在我们的本地代码仓库和远程代码仓库里地东西是没有同步的,类似于我们在使用svn时候的代码冲突一个道理。那么按照正常的思路来讲我们有两种方式可以解决这个问题。

第一种,我们可以使用git pull orgin master将远程代码仓库的内容获取到本地来,然后再将本地代码仓库内容提交本地并且推送到远程代码仓库中。

Git和Cocoapods的基本使用与进阶(一)_第4张图片

此时远程代码仓库的内容已经获取到本地代码仓库了,我们直接本地提交推送到远程代码仓库(git push origin  master)就好了

Git和Cocoapods的基本使用与进阶(一)_第5张图片

第二种,我们可以在本地提交代码之后在获取本地远程代码仓库的内容

我们发现我们本地代码仓库并没有获取到远程代码仓库的东西,而且还出了报错提示

Git和Cocoapods的基本使用与进阶(一)_第6张图片

这是什么原因呢,其实是因为我们在本地提交过代码,本地代码仓库就已经有了一个本地版本信息,而此时远程代码仓库并没有这样一个版本信息,这样和我们代码冲突是一个道理,所以版本信息也是需要同步到远程代码仓库的。

此时我们使用git pull --rebase origin master将版本信息也同时获取一下就可以了

Git和Cocoapods的基本使用与进阶(一)_第7张图片
Git和Cocoapods的基本使用与进阶(一)_第8张图片

此时我们直接推送到远程代码仓库就可以了


Git和Cocoapods的基本使用与进阶(一)_第9张图片

Git和Cocoapods的基本使用与进阶(一)_第10张图片

二.给代码打标签删除标签

为何要给代码打标签,我给大家画一张图就明白了

Git和Cocoapods的基本使用与进阶(一)_第11张图片

一般来说我们提交代码到代码仓库以后,会自动生成一个版本号,它其实是40位的哈希值,我们很难根据这个定位到我们的代码

Git和Cocoapods的基本使用与进阶(一)_第12张图片

所以我们需要打上标签,让它与我们的代码绑定,我们能够通过标签快速找到我们的代码

我们首先需要在本地给我们的代码打上一个标签


然后我们将标签push到远程仓库可以使用 —tags 一次性提交所有标签,也可以使用 origin 版本号

此时我们的远程仓库就已经和我们的对应版本的代码绑定好了

Git和Cocoapods的基本使用与进阶(一)_第13张图片

现在我们看看怎么删除标签对应的代码版本

首先把本地的标签给删除掉

然后把远程仓库中的标签删除掉

Git和Cocoapods的基本使用与进阶(一)_第14张图片

这样的话我们就通过了这样一个小案例来简单了回顾了我们git的基本使用。


你可能感兴趣的:(Git和Cocoapods的基本使用与进阶(一))