查看: 856|回复: 1

[原创] 体验RiotBoard记录W2-在RiotBoard上搭建私有Git服务器

[复制链接]

78

主题

21

好友

6227

积分

状元

Rank: 6Rank: 6

  • TA的每日心情
    奋斗
    2016-7-29 22:00
  • 签到天数: 726 天

    [LV.9]以坛为家II

    爱板会员勋章 活跃会员勋章 发帖机器勋章

    发表于 2014-5-3 12:37:50 |显示全部楼层
    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岂不是非常麻烦。设定方法见我之前的帖子
    我用的远程连接工具是putty,小巧精悍的连接客户端。使用ssh通信协议,如果没有ssh通信软件包还需要安装,不过默认情况下Linux都是会预先安装的。
    登录到RiotBoard的用户名和密码均为“linaro”。
    2.   查看磁盘空间是否足够充裕
    使用命令:
    #df–h
    图1.png

    图1
    显示内部的磁盘存储空间还有1.2G空余,这样该是eMMC的剩余空间,以后可以考虑将Git的数据库放在SD卡上,毕竟RiotBoard上还有两个SD卡插座,不用实在可惜。
    3.   RiotBoard上安装Git服务器软件及必要的客户端软件
    输入命令:
    #sudo apt-get install wget git-core
    中间如果提示要输入“YES”,那就照办吧,否则还能咋样呢。
    图2.png

    图2
    安装完成。
    4.   Git创建专有用户(组)
    接着我们来创建一个”Git”用户和用户组。注意,“/home/git”是我使用的用户文件夹。如果你想使用别的路径,替换下面命令里的”/home/git”为任何你指定的目录,比如说SD卡上的某个文件夹。
    输入命令:
    adduser --system--shell /bin/bash --gecos 'Git version control by RiotBorad --home /home/git  git
    为用户“git”设定密码,输入命令:
    #passwdgit
    啊欧,这里提示没有root权限。好吧切换为root用户。输入命令:
    #sudo–s
    再次输入为用户“git”设定密码的命令。
    然后就是连续输入两次设定的密码,第二次是确认设定。这里我为用户“git”设定的密码为“git“。
    图3.png

    图3
    现在用户“git”的创建就完成了。切换为新创建的“git”用户,输入命令:
    #sugit
    这个时候终端提示已经作为“git”用户登录,“git@linaro-ubuntu-desktop”
    图4.png

    图4
    5. 增加一个空的Git仓库(Git Repository)
    我们现在来创建一个空的Git仓库.
    首先更改目录到你存储git的路径下。输入命令:
    #cd /home/git
    创建新Git仓库存放根目录并初始化。输入命令:
    #mkdir  MyTest.git
    #cd  MyTest.git
    #git  --bare  init
    图5.png

    图5
    注意,这里的“MyTest.git”是目录名,不同于Windows,Linux中没有文件扩展名的概念,所以不要被“.git”的后缀吓到。
    OK,这个时候就已经搭建好Git服务器并成功创建了一个名为“MyTest.git”的Git代码仓库了。后面的事情就不用管RiotBoard啦。
    6.   RiotBoard克隆代码库
    在Windows下启动Git的客户端的Git Bash,切换当前目录为D盘根目录下,这里将作为克隆代码仓库的根目录。在Git Bash终端中输入命令:
    #cd /d
    图6.png

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

    图7
    如果是首次建立到Git服务器的连接,会提示”authenticity of host …”神马的,这是要将远程Git服务器加入本地Git的信任主机列表,输入“YES”就好。
    7.   Push代码到RiotBoard
    接下来的过程就是享受啦,关于Git的操作同任何教程中描述的没有任何区别。
    Git Bash中切换到MyTest.git目录下,创建代码文件或者其它什么文件,我在这里创建的是一个readme.txt,然后是“git add”,“git commit”,“git push”一系列命令噼里啪啦地下去,哈哈,成功提交,大功告成。参看一下提交记录。

    图8.PNG

    图8
    本实验的创意来源于树莓派,但实际的操作过程同普通的Ubuntu无二,实际的操作过程也是借鉴了Ubuntu相关的教程。实验的核心操作就是安装git服务器软件,并在服务器上创建git用户(组)并创建代码仓库。内容虽然不多但非常实用。
    如果想要继续优化下去:(1)可以考虑把服务器端的代码仓库移到外扩的SD卡或是硬盘上,这样可以给代码仓库更大的存储空间,还可以同时创建多个Git站点而且读写性能相对也会好很多;(2)可以考虑通过DNS服务器将那个看起来很山寨的远程主机的IP地址换成一个好看的域名;(3)终极目标,把私有服务器开放到公网上去,如果是这样,就成了Git服务提供商了,小巧RiotBoard的性能也无法同真正的服务器相比。呵呵,管他呢,发烧友的玩的就是“烧”嘛。



    点评

    cmyldd  学习  发表于 2014-5-28 19:41
    回复

    使用道具 举报

    21

    主题

    5

    好友

    7972

    积分

    状元

    Rank: 6Rank: 6

  • TA的每日心情
    奋斗
    昨天 18:58
  • 签到天数: 1077 天

    [LV.10]以坛为家III

    爱板会员勋章 活跃会员勋章

    发表于 2014-5-3 14:53:05 |显示全部楼层
    谢谢分享!!顶!
    相由心生境随心转一切法从心想生
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    关闭

    站长推荐上一条 /6 下一条


    手机版|爱板网 |网站地图  

    GMT+8, 2016-12-3 14:50 , Processed in 0.233235 second(s), 12 queries , Memcache On.

    苏公网安备 32059002001056号

    Powered by Discuz!

    回顶部