subversion 関連 備忘録です。
自分のホームのテキストと、Webページのソースをとりあえずリポジトリに入れてバージョン管理を開始します。
★その1.Subversion リポジトリを作る
リポジトリ自体は、/var/lib/svn/repo
初期インポート元、~/temp
作業コピーは、~/work
root になってみる。
$ su
パスワード:
su: 認証失敗
ああ、ubuntu ではこうやるんだった。
$ sudo su
[sudo] password for kazuya:
# pwd
/var/lib
# mkdir svn
# ls -al ./svn
合計 8
drwxr-xr-x 2 root root 4096 2008-06-28 15:32 .
drwxr-xr-x 50 root root 4096 2008-06-28 15:32 ..
# cd ./svn/
# pwd
/var/lib/svn
ここにリポジトリ作成。
# svnadmin create repo
# ls -al
合計 12
drwxr-xr-x 3 root root 4096 2008-06-28 15:34 .
drwxr-xr-x 50 root root 4096 2008-06-28 15:32 ..
drwxr-xr-x 7 root root 4096 2008-06-28 15:34 repo
# ls ./repo/
README.txt conf dav db format hooks locks
#
★その2.リポジトリ内に trunk ディレクトリを切って
初期インポートする
メッセージ"trunk create 20080628"とともに
trunk を作成する。
$ svn mkdir file:///var/lib/svn/repo/trunk \
-m "trunk create 20080628"
リビジョン 1 をコミットしました。
$ ls -l
合計 8
drwx------ 4 kazuya kazuya 4096 2008-05-04 13:17 local_html_master
drwxr-xr-x 2 kazuya kazuya 4096 2008-06-28 15:46 text
メッセージ"first import 20080628"とともに
trunk下にインポートする。
$ svn import -m "first import 20080628" ./* \
file:///var/lib/svn/repo/trunk
svn: import コマンドへの引数が多すぎます
あれ? 怒られた。じゃあこうかな?
$ svn import -m "first import 20080628" . \
file:///var/lib/svn/repo/trunk
(リストが標準出力に出る)
追加しています (バイナリ) ...
追加しています ...
追加しています (バイナリ) ...
追加しています ...
追加しています ...
...
リビジョン 2 をコミットしました。
$
★その3.リポジトリの中身を見てみる
どのコマンドを使うと良いのかな?
$ svnlook tree
リポジトリの引数が必要です
使用方法を知りたいときは 'svnlook help' と打ってください。
$ svnlook tree file:///var/lib/svn/repo/
'file:///var/lib/svn/repo' は URL です。そこはパスで指定するべきです
$ svnlook tree file:///var/lib/svn/repo/trunk
'file:///var/lib/svn/repo/trunk' は URL です。そこはパスで指定するべきです
…。
なんかコマンドが違うみたい。
こっちかな?
$ svn list file:///var/lib/svn/repo/trunk/
これだと trunk 1行しか出てこない。
$ svn list -R file:///var/lib/svn/repo/
(リストが出る)
★その4.チェックアウトして
バージョン管理を開始する
$ pwd
/home/kazuya
$ ls
Examples svn01.log テンプレート ドキュメント 音楽 公開
old_bookmark.html temp デスクトップ ビデオ 画像
インポート元はもう要らないのでバッサリ削除する。
$ rm -rf ./temp
$ ls
Examples svn01.log デスクトップ ビデオ 画像
old_bookmark.html テンプレート ドキュメント 音楽 公開
作業コピー用ディレクトリを作成する。
$ mkdir work
$ cd work/
ここにチェックアウトする。
$ svn checkout file:///var/lib/svn/repo/trunk ./
(以下のようなリストが出る)
A local_html_master/homepage2/ayuzaka/ail.htm
A local_html_master/homepage2/ayuzaka/xxx.htm
A local_html_master/homepage2/ayuzaka/yyy.htm
A local_html_master/homepage2/ayuzaka/hi_ranking_cinema.htm
A local_html_master/homepage2/ayuzaka/backup.bak
...
リビジョン 2 をチェックアウトしました。
$
$ pwd
/home/kazuya/work
$ ls
local_html_master text
$
ディレクトリの指定に一定のクセというか、決まりがあるみたいでした。
trunk を指定すると、trunk 自身ではなく、その下の階層から出てくる。
やっぱりGUIじゃなくてコマンドで試すべきだ。
基本的な動きやクセがわかる。
以上、備忘録でした。
最近のコメント