普段はmercurialなので、
コマンドがよく分からないのでまとめてみた。
まあ、1人で使っている分にはあまり差がないよなあ
分散とかはないのでとにかくサーバに繋ぐというのが別といえば別なくらい
条件:
リポジトリの場所 /home/hoge/svn/以下
リポジトリ名 test(/home/hoge/svn/test)
テスト用ローカルディレクトリ /home/hoge/work/test
��:SVNのリポジトリを置く場所を作る(/home/hoge/で作業)
mkdir svn
��:初期化(testというリポジトリにする)
svnadmin create /home/hoge/svn/test
��:テスト用ローカルディレクトリを置く場所を作る(/home/hoge/で作業)
mkdir work
��:テスト用ローカルディレクトリにテスト用のファイルを作成しておく(testfile)
cd work
mkdir test
touch testfile
��:リポジトリ(初期化したばかり)にテストファイルをインポートしてみる
svn import file:///home/hoge/svn/test -m "test."
※"test"はリポジトリに入れるメッセージ
��:リポジトリから取り出してみる
ローカルのテストファイルはディレクトリごと消す(ディレクトリは作成される)
rm -rf /home/hoge/work/test
cd /home/hoge/work
※リポジトリを取り出す場所でコマンド
svn checkout file:///home/hoge/svn/test test
※testというリポジトリをカレントにtestというディレクトリで保存
※testディレクトリは無いので作成する
��:リポジトリ状態確認
/home/hoge/work/test というディレクトりが作成され中にtestfileがあるはず
以下、/home/hoge/work/test内で作業
・差分を確認してみる
svn diff
なければ表示されない。
vi testfile で修正してから再度 svn diffを行うと差分が表示される
・コミット
ローカルディレクトリの作業はコミットしないとSVNに反映されない。
メッセージtest2でコミットする。
svn commit -m "test2"
・新しいファイルをリポジトリに追加してみる(もしくは削除してみる)
ファイルの増減はSVNにコマンドとして教えてやる必要がある。
状況を確認する
svn status
状態を確認すると
? test2file
このようになる場合はtest2fileが新規にあるけど、
SVNには登録がないので指示をしろということ
追加コマンドを打つ
svn add test2file
状況確認
svn status
何も表示されていないのでSVNへは教えられた。
最後にコミットすればリポジトリへも反映される
メッセージtest3でコミットする。
svn commit -m "test3"
このほかのコマンド
削除 delete
ファイル名変更 move
ディレクトリ作成 mkdir