Document

SVN4Lec マニュアル
三浦元喜
北陸先端科学技術大学院大学
知識科学研究科
2007/9/7
Subversionを使うメリット

過去の状態(リビジョン)に戻れる
ちょっと参照するだけならリポジトリブラウザによ
る閲覧や
Update to revision (過去の立ち位置に戻る)機能
 過去に戻り,そこから編集を継続するならRollback機
能


作業コピー(ローカル)が壊れても大丈夫

コミット済みの内容(リポジトリ)からは復元可
• ※なので,コミットしていればとりあえず安心

複数の環境に演習ファイルを置ける



大学,個人用PC,実家 etc...
配布物を展開・配置する手間が不要
コミットログから過去の学習経過をふりかえる
Subversionの概略(リポジトリと作業コ
ピー)
Branch Copy
リポジトリ
(Repository)
Rev 2
1
Import
Check-out
Commit
教員PC
サーバ
Rev 2
1
Check-out
Commit
Update
Rev 2
Rev 3
(Add file)
(Edit)
学生PC
SVN4Lec の起動

SVN4Lec.jar をダブルクリックする


または,コマンドラインから
> java –jar SVN4Lec.jar
と入力し,[Enter]
下のようなウィンドウが開く
ファイル取得(更新:Update)
 一番左のボタンを押す
 初回のみ,アカウント名,パスワードを入
力
• パスワードは .svnuserpass に保存される
ファイル取得(更新:Update)
(2)
 成功すると,リポジトリ(サーバで管理
されているファイル)の最新版が取得で
きる
 タイトルには[学生アカウント]
とリビジョン
番号(作業コピー/リポジトリ)を表示
差分提出(コミット/Commit)
(1)
 左から2番目のボタンを押す

コミットログに作業内容覚え書き(メモ)を
書いて送信
差分提出(コミット/Commit)
(2)
 成功すると,リビジョン番号が増える
 (注:他の人がコミットしても増えるので,
番号は連続とは限らない)
過去の状態に戻す(1)
 (1)左から4番目のボタンを押す
 (2)戻りたい行
で
ダブルクリック
過去の状態に戻す(2)
過去に戻って編集を続けるならロールバック
(Rollback)を選択する
 一時的に,過去に戻るだけならUpdate to
Revisionを選択する
 どちらを選ぶにしても,もし作業中のファイル
があれば,一旦コミットして作業を確定するか,
作業を取り消し(Revert)する必要がある

過去の状態に戻す(3)
ロールバック(Rollback)を選択した場合,なにが
起きるか??
 (1)一旦最新版を取得する(2)最新版と選
択したリビジョンの差分(Diff)を計算する(3)
差分を,最新版にマージ(Merge)する.



その結果として,リビジョンは最新版だが,ファイ
ルは過去のリビジョンとなる.
(3)マージした結果を
すぐにコミットするかどうか
聞いてくるので,
「はい/いいえ」で答える
過去の状態に戻す(4)

Update to Revisionを選択した場合,なにが起きる
か??
 (1)過去のリビジョンを訪問する


その結果として,ファイルが過去のリビジョンの内容と
なる.
作業コピーのリビジョン番号<リポジトリのリビジョン
番号
注意:
作業コピーのリビジョン番号が
リポジトリのリビジョン番号と
異なる状態で,変更点をコミット
することはできない!!
 一旦Updateしてからコミット

RollbackとUpdateToRevの違い


Rollback:立ち位置は最新版.なのでコミット(版の世
代を1ステップ進める)が可能.
UpdateToRev:立ち位置が過去.最新版との距離がある
ので,コミットできない
作業を無かったことにする
(Revert)
 注意:変更部分を取り下げて,前回
Update時の状態に戻る
 UpdateToRevの場合は,最新リビジョンの状
態にはならない
Subversionにおける
ファイルの状態遷移図