忍者ブログ
MASTER →  ADMIN / NEW ENTRY / COMMENT
現代魔法(nearly equal 情報技術)を勉強中な人のメモ(チラシの裏)
/ 2024/04/26 (Fri) / 編集
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

/ 2008/06/09 (Mon) / 編集
英語で疲れ、テストでとどめを刺されたので卒論はおいといてSubversion導入してみた。
Subversionはいわゆるバージョン管理ソフト、ソースコードとかを「間違えてけしちゃっとよ!」とか「修正したらコンパイルできなくなった、、、(泣)」とかのときに助けてくれる。

ようはサーバにファイルと更新履歴をとっとくんだが、そのおかげで「三日前の状態にもどしたい!」とかが実現できる、CVSなんかとおなじです。
CVSとの違いで個人的にいいと思うのは「ディレクトリの移動や削除」ができるってこと、間違ったディレクトリをあげてしまった時、CVSだとサーバにログインしてディレクトリを削除してetcとしなければならないがSubversionなら大丈夫!移動はもちろんコピーもできるよ!!

インストール

とりあえずクライアント(実際にソースコードとか書いたりする方)はMacOSXなのでやることなんにもない、なんせMacOSXはSubversionがデフォルトでインストールされているから!


サーバの方も簡単、 今回はFodoraなのでyumを使用
%sudo yum install subversion mod_dav_svn
終わり。

つづいて設定
まずはサーバ側でレポジトリ(ソースファイルとか格納するとこ)を作成
%cd /var/www
%mkdir svn
%cd svn
%sudo svnadmin create レポジトリ名
%sudo chown -R apache:apache レポジトリ名 <ーアクセス権も忘れずに

つづいて設定ファイル「/etc/httpd/conf.d/subversion.conf 」を修正
といってもコメントアウトをはずすだけ
<Location /repos>
DAV svn
SVNParentPath /var/www/svn

# Limit write permission to list of valid users.
# 認証した人にしか書き込みさせません
<LimitExcept GET PROPFIND OPTIONS REPORT>
# Require SSL connection for password protection.
# SSLRequireSSL #<ーSSLを使う人向け

#Basic認証の設定
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /etc/httpd/.htpasswd
Require valid-user
</LimitExcept>
</Location>
最後に、認証用のパスワードファイル「/etc/httpd/.htpasswd」を作成、「.htpasswd?なにそれ?」って人は c オプションもつけましょう。
%htpasswd -cm /somewhere/passwd-hoge ユーザ名
さいごにapacheを再起動
%sudo service httpd restart

使ってみる

では使ってみます
クライアント側でTearminal.appを立ち上げてレポジトリをダウンロード、 URLは「http://webサーバのアドレス/repos/レポジトリ名/」
%svn checkout URL
この時点でさっきサーバ上に作成した「レポジトリ名」というディレクトリができるが中身は空
とりあえず適当なファイルを作成してサーバに登録してみる

%cd レポジトリ名
%vi test.txt
%cd ../
%svn add レポジトリ名
%svn commit -m 'コメント'
そしてブラウザでURLを見てみる()と、、、


という感じです、「外付けハードなんて買う金ねぇよ!」という人はためしてみるといい感じ、ちなみにもちろんバイナリファイル(画像とか)も送れます。



Subversion
[Linux Wiki]Subversion
[Wikipedia]Subversion
Subversionによるバージョン管理(pdf)

拍手[1回]

PR
忍者ブログ [PR]