首页 > 代码库 > 使用Git进行版本控制:(2)在OS X系统上开始使用Git代码仓储

使用Git进行版本控制:(2)在OS X系统上开始使用Git代码仓储

了解了基本的Git概念之后,现在我们开始讲Git应用到实际的工作中来。通常比较常用的代码托管网站有Github和BitBucket等,二者基本功能类似,在细节上稍稍有点区别。首先,在开源世界的影响力上Github大幅领先,现在已经堪称是程序员的Facebook,而BitBucket则稍逊一筹;其次,GitHub在不购买增值服务情况下仅能建立公开代码库,即只能在上面开发开源项目,而BitBucket则可以免费建立多个私人代码库;第三,Github仅支持Git进行同步操作,而Bitbucket支持Git和Mercurial来同步。如果我们既有开发开源项目,也有开发保密的商业工程的需求,那么最好同时建立二者的账户并根据需求选择相应的代码库。


1、账号注册

Github和Bitbucket的网址如下:

Github:https://github.com/

BitBucket:https://bitbucket.org/

二者的注册过程只要有一个邮箱即可轻易完成,不再赘述。需要注意的是,最好可以使用同一个邮箱注册,这样在后面建立ssh秘钥的时候会省去很多的麻烦。


2、安装和配置Git

首先需要确定本机的操作系统上已经安装了Git和ssh-keygen的程序,在安装OS X系统时通常已经安装完成,如果没有还需要额外安装。

(1)、生成安装秘钥

在OS X的终端上,输入命令:

> cd ~/.ssh

此时,如果是从一个全新的电脑上开始配置的话,命令行通常会显示:No such file or directory,表示.ssh这个目录不存在,随后我们就将建立这个目录及其中的秘钥。如果该目录存在且有内容,则说明从前曾经生成过秘钥,可以将其备份并删除。

随后,输入以下命令:

> ssh-keygen -t rsa -C "your_email@example.com"
此时会使用命令中的邮箱,在/用户目录/.ssh/id_rsa中建立秘钥,命令行会显示以下内容:

Enter passphrase (empty for no passphrase): Enter same passphrase again: 
此时会要求输入密码,可以直接回车跳过。

按照默认设置,一路回车,最终终端会显示如下信息:

Your identification has been saved in /home/you_username/.ssh/id_rsa.Your public key has been saved in /home/you_username/.ssh/id_rsa.pub.The key fingerprint is:01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db demo@example.com

(2)、将ssh秘钥添加到Github和Bitbucket

首先,需要将公钥的内容进行拷贝:

> cat id_rsa.pub | pbcopy
此后,id_rsa.pub的内容便被拷贝到了剪贴板中。

Github的ssh秘钥配置:




在接下来的页面中粘贴,并对这个ssk key进行命名;

BitBucket的秘钥配置:




在弹出页面中,将公钥拷贝到大空格中并设置key的名称。

这样,对Github和Bitbucket的SSH秘钥设置就完成了。


3、向代码仓库中提交代码

我们以将代码提交到Bitbucket中为例说明。向Github中提交代码的过程类似。

(1)在Bitbucket上建立代码仓库。

在完成上面的操作后,登陆Bitbucket,然后会发现下面有一个显眼的按键“创建一个仓库”,很明显,如果我们要提交代码的话,首先要在这里创建一个仓库。

创建的过程非常直观,只要输入仓库的名称、描述、访问级别、语言等信息就可以了。

(2)建立本地工程

首先需要选择一个保存本地代码的目录,并设置为git仓储的本地目录。

mkdir /path/to/your/projectcd /path/to/your/projectgit initgit remote add origin git@bitbucket.org:YinWenjie/tutorial.git

(3)将本地工程向服务器推送

将在本地开发、修改完成的代码添加到该目录中,并提交到本地的git,最终push到Bitbucket的服务器上:

echo "Wenjie Yin" >> contributors.txtgit add contributors.txtgit commit -m 'Initial commit with contributors'git push -u origin master
等待数据传输完成后,本地仓库中的代码就成功提交到了服务器上。




使用Git进行版本控制:(2)在OS X系统上开始使用Git代码仓储