RioTBoard学习笔记之五:在RiotBoard上搭建私有Git服务器

作者: suyong_yq
上传时间为: 2014-07-30 07:27 AM
2014-07-30
阅读:

RIoTboard一款基于飞思卡尔(Freescale Semiconductor)i.MX 6Solo处理器的评估板。本人通过爱板的试用活动成功申请到了一块,现在就向大家介绍下如何在RiotBoard上搭建私有Git服务器。

同是基于ARM处理器的卡片电脑,相比于树莓派,RiotBoard拥有更强大的处理器和更大的内存,并且有更丰富的外接接口,从硬件配置上压过树莓派一头。如果以后在系统软件上能够得到更好的优化,将有可能全面超越树莓派。虽然这并不是一件容易的事情,因为树莓派的发烧友已经遍布全世界。但至少在中国,如果有更多好玩实用的应用可以在RiotBoard运行,那么我们依然可以相信RiotBoard也会像树莓派那样,拥有自己的一群追随者。

好吧,不得不说关于搭建私有Git服务器的创意是来自于树莓派,而大多数的操作是Linux系统通用的。但是,我们要确定的是,这是运行在RiotBoard上的Git服务器,而不是运行在笨重的大块头电脑上,这对于RiotBoard的玩家来说就是一件很令人兴奋的事情,原来RiotBoard也是可以这样玩的。

Git是现在非常流程的分布式代码版本管理工具软件,平时我们在管理自己的代码时,只要通过一个Git客户端就可以同github或是其它远程的Git服务器进行同步,管理自己的代码。对于Git的使用者而言,我们大多数情况不需要关心远程的服务器是怎样工作的,然而,如果哪天要老板让你在自己公司内部的局域网搭建一个内部的Git服务器,我们就不得不临时客串一下网络系统管理员了。这里就记录我在RiotBoard上搭建我自己的私有Git服务器的过程,同大家分享一下。

1.    通过ssh登录到RiotBoard

这里我已经为RiotBoard设置的固定IP,否则每次都要去查看RiotBoard动态分配的IP岂不是非常麻烦。设定方法见我之前的帖子

http://www.eeboard.com/bbs/forum.php?mod=viewthread&tid=30993#lastpost

我用的远程连接工具是putty,小巧精悍的连接客户端。使用ssh通信协议,如果没有ssh通信软件包还需要安装,不过默认情况下Linux都是会预先安装的。

登录到RiotBoard的用户名和密码均为“linaro”。

2.    查看磁盘空间是否足够充裕

使用命令:

#df –h

显示内部的磁盘存储空间还有1.2G空余,这样该是eMMC的剩余空间,以后可以考虑将Git的数据库放在SD卡上,毕竟RiotBoard上还有两个SD卡插座,不用实在可惜。

3.    在RiotBoard上安装Git服务器软件及必要的客户端软件

输入命令:

#sudo apt-get install wget git-core

中间如果提示要输入“YES”,那就照办吧,否则还能咋样呢。

安装完成。

4.    为Git创建专有用户组

接着我们来创建一个”Git”用户和用户组。注意,“/home/git”是我使用的用户文件夹。如果你想使用别的路径,替换下面命令里的”/home/git”为任何你指定的目录,比如说SD卡上的某个文件夹。

输入命令:

adduser --system --shell /bin/bash --gecos 'Git version control by RiotBorad --home /home/git  git

为用户“git”设定密码,输入命令:

#passwd git

啊欧,这里提示没有root权限。好吧切换为root用户。输入命令:

#sudo –s

再次输入为用户“git”设定密码的命令。

然后就是连续输入两次设定的密码,第二次是确认设定。这里我为用户“git”设定的密码为“git“。

现在用户“git”的创建就完成了。切换为新创建的“git”用户,输入命令:

#su git

这个时候终端提示已经作为“git”用户登录,“git@linaro-ubuntu-desktop”

5.  增加一个空的Git仓库(Git Repository)

我们现在来创建一个空的Git仓库.

首先更改目录到你存储git的路径下。输入命令:

#cd /home/git

创建新Git仓库存放根目录并初始化。输入命令:

#mkdir  MyTest.git

#cd  MyTest.git

#git  --bare  init

注意,这里的“MyTest.git”是目录名,不同于Windows,Linux中没有文件扩展名的概念,所以不要被“.git”的后缀吓到。

OK,这个时候就已经搭建好Git服务器并成功创建了一个名为“MyTest.git”的Git代码仓库了。后面的事情就不用管RiotBoard啦。

6.    从RiotBoard克隆代码库

在Windows下启动Git的客户端的Git Bash,切换当前目录为D盘根目录下,这里将作为克隆代码仓库的根目录。在Git Bash终端中输入命令:

#cd /d

提示输入用户“git”在192.168.1.11(也就是RiotBoard)的密码啦,这里输入之前设定的“git”。然后克隆就完成了。

如果是首次建立到Git服务器的连接,会提示”authenticity of host …”神马的,这是要将远程Git服务器加入本地Git的信任主机列表,输入“YES”就好。

7.    Push代码到RiotBoard上

接下来的过程就是享受啦,关于Git的操作同任何教程中描述的没有任何区别。

Git Bash中切换到MyTest.git目录下,创建代码文件或者其它什么文件,我在这里创建的是一个readme.txt,然后是“git add”,“git commit”,“git push”一系列命令噼里啪啦地下去,哈哈,成功提交,大功告成。查看一下提交记录。

本实验的创意来源于树莓派,但实际的操作过程同普通的Ubuntu无二,实际的操作过程也是借鉴了Ubuntu相关的教程。实验的核心操作就是安装git服务器软件,并在服务器上创建git用户(组)并创建代码仓库。内容虽然不多但非常实用。

如果想要继续优化下去:(1)可以考虑把服务器端的代码仓库移到外扩的SD卡或是硬盘上,这样可以给代码仓库更大的存储空间,还可以同时创建多个Git站点而且读写性能相对也会好很多;(2)可以考虑通过DNS服务器将那个看起来很山寨的远程主机的IP地址换成一个好看的域名;(3)终极目标,把私有服务器开放到公网上去,如果是这样,就成了Git服务提供商了,小巧RiotBoard的性能也无法同真正的服务器相比。呵呵,管他呢,发烧友的玩的就是“烧”嘛。

全部评论 ()
条评论
写评论

创建讨论帖子

登录 后参与评论
系统提示