Subversion超自堕落メモ

いっつもコマンド名を忘れるので、メモメモ*1

アクセス方法

svn+sshでアクセスする場合

httpでアクセスする場合

  • http://ホスト名/home/ユーザ名/レポジトリ --username ユーザ名
リポジトリの作成(create)

% mkdir /home/mizu/svn-repos/project
% svnadmin create /home/mizu/svn-repos/project

プロジェクトの作成&登録(import)

% mkdir /home/mizu/project
% touch /home/mizu/project/hoge.txt
% svn import -m "Initial Importing" /home/mizu/project file:///home/mizu/svn-repos/project/trunk

チェックアウト(co or checkout)

% rm -rf /home/mizu/project
% mkdir /home/mizu/project_YYMMDD(いや、何でもいいけどね)
% cd /home/mizu
% svn co file:///home/mizu/svn-repos/project/trunk ./project_YYMMDD

状態の把握(status)

% svn status [ファイル名]
% svn status --show-updates(短縮形-u)

    • show-updatesを付けない場合は、ローカルで行われた変更だけチェックする。--show-updatesを付けると、リポジトリの情報と照合する。
リポジトリの更新(commit)

% svn commit -m "何かメッセージを" [ファイル名]

ログの確認(log)

% svn log [--verbose] [-r r1:HEAD] [ファイル名]

デフォルトだと、r4までしか出ない。

新規作成ファイルをバージョン管理に追加(add)

% svn add ファイル名

逆にバージョン管理対象から削除する場合(delete)

% svn delete パス名

2つのファイル間やバージョン間の差分(diff)

% svn diff -r1:HEAD [ファイル名]

特定のファイルに対して、リポジトリの保管されている最新バージョンとのdiffを取る場合。

% svn diff -rHEAD ファイル名

ローカルの編集を取り消す(revert)

% svn revert [ファイル名]

ファイル名の変更(move)

% svn move src dest

ファイルのコピー(copy)

% svn copy src dest

リポジトリの作業をローカルに反映

% svn update

とりあえず、1人で使っている分には、これだけで十分ぽい。

*1:いや〜、本当に記憶力が悪くなってる気がするんですけど。。。