参考にさせて頂いたページ
Linux/Subversion/yumからインストール - MinacoWiki
バージョン管理システム構築(Subversion) - CentOSで自宅サーバー構築
ホストマシン環境
ゲストマシン環境
前提条件
前提条件がまだの場合
vagrantのインストールからやる場合
既にpackage.boxがある場合
仮想環境にログインする
vagrantの仮想環境にログインします。
vagrant up
vagrant ssh
su
vagrant(パスワード)
yumをアップデート
yum -y update
この段階で
[Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
みたいなやつが沢山出たので、これを直す。エラー出ない場合そのままで大丈夫です。
vagrant上のCentOSでyumがエラーになった件 - モーグルとカバとパウダーの日記
を参考にさせて頂いて、簡易的に6とべた書きしてから、やったら大丈夫だった。
具体的には
vim /etc/yum.repos.d/CentOS-Base.repo
でファイルを開いて、
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
となっていたところを
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
baseurl=http://mirror.centos.org/centos/6/os/$basearch/
にして保存した。
もう一度
yum -y update
を実行したら正常にアップデートされた。
vagrantの環境だしまぁいいかと思ってこのような対応をしたけど、本来はこのような方法をとらない方が良さそうなので、本番のサーバーでこういうエラーが出たら改めてちゃんと調べようと思う。
後日もう一回手順を確認してみようと思って、yum -y update
したら一発で完了したので、エラーが出たのは何だったのだろうという感じ。
yumでsubversionをインストールする
yum -y install subversion
でsvnのインストール完了した。
svn --version
でsvnのバージョンを確認してみたら、
svn, version 1.6.11 (r934486)
とのこと。
svnコマンドが使えるようになった。
リポジトリを作成する
mkdir -p /home/svn/repos/
cd /home/svn/repos/
mkdir sample
svnadmin create sample
ls -a sample/
この時点で以下のように表示された。
. .. conf db format hooks locks README.txt
引き続き参考ページにならって
svn mkdir file:///home/svn/repos/sample/trunk -m "create"
svn mkdir file:///home/svn/repos/sample/branches -m "create"
svn mkdir file:///home/svn/repos/sample/tags -m "create"
を順番に実行すると、ディレクトリが作成されて、その変更がコミットされていく。
次に
cd /tmp/
mkdir sample
cd sample/
vim sample.txt
でテキストファイルを作成した。
vimの使い方がわからない場合は、なんか検索してください。
また、WinSCPなどで、
でログインできると思うので、それで/tmp/sample/sample.txtを作成しても良いと思う。
cat sample.txt
でさっき作成したsample.txtの記述内容を一応確認した。
次にリポジトリにファイルをインポートするので、
cd /home/svn/repos/sample/
svn import /tmp/sample file:///home/svn/repos/sample/trunk -m "initial sample"
を実行したら
Adding /tmp/sample/sample.txt
Committed revision 4.
と表示されて、追加とコミットがされた。
ブラウザでリポジトリの状態を閲覧できるようにする
次に
yum install -y mod_dav_svn
でインストール。
次にhttpd.confを編集する。
vim /etc/httpd/conf/httpd.conf
でファイルを開いて、LoadModuleが沢山書いてあるところに
LoadModule dav_svn_module modules/mod_dav_svn.so
を一行追記して、保存する。
次に
vim /etc/httpd/conf.d/subversion.conf
で、subversion.confを編集する。
記述内容は以下のようにした。
<Location /svn>
DAV svn
SVNParentPath /home/svn/repos
</Location>
次にディレクトリの所有者を変更する
chown -R apache:apache /home/svn/repos/sample
一応所有者とグループを確認してみる。
cd /home/svn/repos/
ls -al
すると
drwxr-xr-x 6 apache apache 4096 Sep 3 10:32 sample
となっているので大丈夫そう。
apacheを再起動しないといけないので
service httpd restart
を実行して、正常に再起動されたら[OK]
ブラウザで
http://192.168.33.10/svn/sample/
にアクセスしたら、
sample - Revision 4: /
branches/
tags/
trunk/
Powered by Subversion version 1.6.11 (r934486).
みたいなwebページが表示されて、trunk/のリンクをクリックしたら、sample.txtが表示された。
ホストマシンにTortoiseSVNをインストールする
tortoisesvn インストール
とか
tortoisesvn 日本語化
とかで検索すると良いと思う。
ホストマシンにリポジトリをチェックアウトする
- ホストマシンのデスクトップに何でも良いんだけど、とりあえずvagrant_svnというディレクトリを作成した
- 作成したvagrant_svnディレクトリを右クリック
- SVN Checkout をクリック
- URL of repository:のところには
http://192.168.33.10/svn/sample/trunk
- OKをクリックする
これでチェックアウトできた。
commitとかrevertとか使ってみる
コミットもできたし、リビジョン戻すのもできた。