《Android编程权威指南》-读书笔记(三)Git初探

《Android编程权威指南》-读书笔记(三)Git初探

 

版本控制-Git

 

为什么要使用版本控制

 

什么是版本控制?我为什么要关心它呢?版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。在本书所展示的例子中,我们仅对保存着软件源代码的文本文件作版本控制管理,但实际上,你可以对任何类型的文件进行版本控制。

 

如果你是位图形或网页设计师,可能会需要保存某一幅图片或页面布局文件的所有修订版本(这或许是你非常渴望拥有的功能)。采用版本控制系统(VCS)是个明智的选择。有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态。你可以比较文件的变化细节,查出最后是谁修改了哪个地方,从而找出导致怪异问题出现的原因,又是谁在何时报告了某个功能缺陷等等。使用版本控制系统通常还意味着,就算你乱来一气把整个项目中的文件改的改删的删,你也照样可以轻松恢复到原先的样子。但额外增加的工作量却微乎其微。

 

Git的安装

在Windows下安装Git。我们首先访问 http://msysgit.github.com/

 

技术分享

技术分享

技术分享

 

在工作目录中初始化新仓库

在工作目录中(比如我在e:\example\GeoQuiz)右键,然后选择Git Bash。

技术分享

我们先看看配置

$ git configt –list

技术分享

没有我的用户信息。用户信息很重要,每次Git提交时都会引用这2条信息,说明谁提交了更新,所以会随更新内容一起被永久纳入历史记录:

Git config –global user.name <用户名>

Git config –global user.email <电子邮箱>

$ git config –global user.name "lijing"

$ git config –global user.email [email protected]

 

技术分享

执行git config –list后可以看到我的用户信息已经加入了配置。

现在我们执行下面的指令

$ git init

并且查看初始化后的状态

$ git status

技术分享

仓库创建好了,但是源代码都没有提交,系统提示使用 git add 来提交

$ git add .

提交所有以后

$ git status

查看会发现build没有提交,原来目录里有一个.gitignore,内容如下

.gradle

/local.properties

/.idea/workspace.xml

/.idea/libraries

.DS_Store

/build

到了这一步,其实我不知道这个文件是git创建的,还是android studio创建的。我尝试创建了一个新项目,发现新项目里面也有.gitignore。说明这是Android Studio创建的。这个文件也可以自己创建,它有自己的规则用来选择哪些符合规则的文件不被提交到版本控制器里面。

 

至此我们的新仓库已经创建好了。然后提交以下

$git commit –m

 

尝试一次加入新的文件

我们直接在目录里面添加一个readme.txt 文件,内容随便写点什么。然后查看一下

$git status

技术分享

这里就可以看到新添加的文件了

$git add . 或者 $git add readme.txt

然后提交

$git commit –m "create a readme file"

 

创建远程的数据仓库

现在要想查看我的源代码我必须将源代码上传到服务器上。我选择了http://git.oschina.net

首先我添加一个远程仓库

$git remote add GeoQuiz https://git.oschina.net/canglin/GeoQuiz.git

然后查看一下

$git remote -v

技术分享

由于是第一次

$git push GeoQuiz master 肯定是不行的,因为与服务器上的代码冲突,必须合并一次。

$git pull GeoQuiz master

技术分享

$git push GeoQuiz master

技术分享

http://git.oschina.net/canglin/GeoQuiz 成功了,访问这个网址可以得到源代码

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。