用樹莓派搭建Git私有服務器

20140215225209554-0

話說當年linux內核開發者林納斯·托瓦茲(Linus Torvalds)為了更好的管理Linux內核開發創下git以來,時至今日,當下最流行的『版本管理系統』已非git莫屬了! 筆者私下認為,git相比其他的版本管理系統(csv, svn等)來,最大的方便莫過於分支(branch)的操作十分便捷,但項目開發分支如何管理,蘿蔔白菜各有所愛,見仁見智。筆者因工作需要,經常要參與國際化團隊的協作開發,git乃是必不可缺之利器之一。

最近我利用樹莓派為我所有的Git倉庫創建了一個Git私有服務器。我花費了一些時間來使每件事情正確工作,但現在它已經能跑起來了。

安裝Git

首先你需要在樹莓派上安裝Git.

sudo apt-get install wget git-core

這將會安裝Git服務器和必要的客戶端軟件。

安裝SSH

如果你還沒有安裝SSH,通過以下命令安裝它:

sudo apt-get install ssh

通過以下命令啟動它:

sudo /etc/init.d/ssh start

現在ssh已經運行起來了,但是一旦你重啟樹莓派,你還需要重新執行一遍上面命令。你可以通過執行一次下面的命令來解決這個問題:

sudo update-rc.d ssh defaults

當你重啟樹莓派,SSH應該能夠自動啟動了。你可以看看能不能通過SSH連接到樹莓派,在你的Windows機器上使用Putty(Mac用戶需要尋找替代的SSH客戶端)。
20140215225055610
在HostName文本框里輸入樹莓派的IP地址。通過以下命令找到你的樹莓派IP:

/sbin/ifconfig

找到inet addr:後面的就是IP。

改變主機名

這步不是必須的,但是我強烈推薦如果你正在,計劃使用多台樹莓派設備。

sudo leafpad /etc/hostname

輸入你想要的主機名,然後保存文件。我的主機名是」gitpi」。
接着,輸入下面的命令:

sudo leafpad /etc/hosts

替換所有」raspberrypi」為你上一步輸入的新主機名。然後,重啟你的樹莓派

添加一個」Git」用戶和組

接着我們來創建一個」Git」用戶和用戶組。注意/home/git是這個例子里我使用的文件夾。如果你想使用別的路徑,替換下面命令里的」/home/git」。

adduser --system --shell /bin/bash --gecos 'git version control by pi' --group --home /home/git git

接着是更改密碼:

passwd git

你的」git」用戶現在有了一個新密碼。現在嘗試切換用戶,你將會看到現在的終端提示用戶名和主機為」git@gitpi」。你可以通過下面的命令切換用戶:

su git

增加一個空的Git倉庫(Git Repository)

我們現在來增加一個空的Git倉庫.
首先更改目錄到你存儲git的路徑下。

cd /home/git

為你的倉庫創建一個文件夾,並移動進去,然後初始化並清空倉庫。
注意我現在使用的是」git」用戶。這個用戶具有/home/git目錄的控制權。

mkdir test.git
cd test.git
git --bare init

Push你的代碼到Pi上

最終,我們會把代碼push到樹莓派上。首先,更改路徑到你之前初始化的git倉庫(或初始化一個新的)。

加入一個新的遠程主機(*你的IP地址沒有中括號)

git remote add pi git@[your IP]:/home/git/test.git

現在你要做的就是add你的代碼,commit然後push。

git add .
git commit -am "Initial"
git push pi master

如果你得到了一個類似這樣的消息」authenticity of host …」只需要輸入」yes」然後繼續就可以了。
理想情況下,如果一切正常,你的Git倉庫已經搭建在你的樹莓派上了。

如果你想要測試一下,試着clone你的倉庫到你的Windows機器上。首先更改路徑到你希望存儲clone的地方(一個空文件夾),然後通過命令行(或git bash),運行:

git clone git@[your IP]:/home/git/test.git

1 Trackback / Pingback

  1. [TUT] Build Private Git Server with Raspberry Pi – xswxm

發表評論

你的郵件地址不會公開


*