linuxでsvnを使ってみた

BeagleBoneのコード管理をバージョン管理にしたくなってきた。参考書籍に書かれているコードを書き換えていくと元が何だったのか訳が分からない。

さてバージョン管理ソフトとしてSVNを使ってみようと思う。
後々redmineで問題対応を内々にログとして残しておきたいので、tracでも良いんだけどそれらと親和性のあるsvnを採用。
今までSVNと言えばwindowsTortoiseSVNを使用していたが、今の開発環境であるlinux(Ubuntu)でも似たような事をしたいので調べてみた。
Rabbitなるものを発見

HPの記述にしたがってrepositoryからダウンロード&インストール

まず、Ubuntuのapt-getで検索するリポジトリURLを登録する

deb http://ppa.launchpad.net/rabbitvcs/ppa/ubuntu **DISTRIBUTION** main

これをそのまま/etc/apt/sources.listの最後尾に追加したら見事に撃沈。

DISTRIBUTION**は、UbuntuのDISTRIB_CODENAMEの事で、

cat /etc/lsb-release

で自分のディストリビューションを調べて置き換える。私の場合は

deb http://ppa.launchpad.net/rabbitvcs/ppa/ubuntu precise main

だった。

あとは、リポジトリをアップデートしてインストール。

sudo apt-get update
sudo apt-get install «packages»
…where packages are

rabbitvcs-nautilus3 for the Nautilus 3.x extension (use this for Ubuntu 11.10, Oneiric Ocelot)
rabbitvcs-nautilus for the Nautilus 2.x extension
rabbitvcs-thunar for the Thunar extensions
rabbitvcs-gedit for the GEdit extension
rabbitvcs-cli for the command line launchers

ここで、またinstall出来ず。

sudo apt-get install rabbitvcs-nautilus3 for the Nautilus 3.x extension

と打っていた。ちゃんと見ればforより後ろのは説明文である事が分かるので余計な文を追加していただけだった。

sudo apt-get install rabbitvcs-nautilus3
sudo apt-get install rabbitvcs-thunar
sudo apt-get install rabbitvcs-gedit
sudo apt-get install rabbitvcs-cli

でインストール完了。
ただし、いまいち使い方分からない。使い方探すのに時間かかりそうなのでrabbitvcsでのリポジトリ作成は後日に。
いまは、ターミナル上から実行しよう。
まず、svnリポジトリフォルダを作成する。

svnadmin create /home/myrepo/trunk

/home/myrepo/trunkにsvnのファイルが作成されているので、確認しましょう。
次に作成したフォルダに差分管理したいファイルをコミットする。
*suでrootになっておく。

svn import -m "new" /home/mine/PrjSrc/test file:///home/myrepo/trunk

ここで、/trunk/testは作成されないことに注意。作成したい場合はtrunk/testとリポジトリURL指定すること。

  • m "コメント" は、コミットメッセージが必要なので適当でもいいから書いておく。

コミットが成功したか確認する。

svn list file:///home/myrepo/trunk

checkoutしてみる

svn checkout file:///home/myrepo/trunk

成功したらOK。

これで、いままで止まっていたBeagleBoneで遊ぶ為の準備が出来た。