ソフトウェア設計及び演習2016
svn::簡単な使い方
svn超簡易マニュアル
基本的な概念,言葉の意味
- サブバージョンの使い方を参照のこと.
- リポジトリ,ワーキングコピー,リビジョン,チェックアウト,コミット,などの単語の意味を理解すること.
- 普段の作業は,リポジトリからチェックアウトしたワーキングコピーの方を使う.リポジトリそのものには手を触れない.
- ある程度の完成度まで到達したら,ワーキングコピー(中の修正したファイル群)の内容をリポジトリに反映させる.これがコミット.
- コミット時には,どのファイルを,どのように修正したか,といった内容をログに残しておく.
- 別の人間が,同じファイルを別々に修正して,それぞれでコミットしようとすると衝突(コンフリクト)する
- コンフリクトは,手動で対処する以外に方法はない.
ワーキングコピーの取得
コピーしたいディレクトリに移動してcheckout. 仮に,~/csd 以下に, proj という名前のワーキングコピーを展開するとすると,
% cd ~/csd % svn co https://svn.cis.iwate-u.ac.jp/svn/csd/proj
ワーキングコピーの更新
複数の人間で開発を行なう場合,編集作業を行う前に必ず ワーキングコピーに(リポジトリの)最新情報を反映させる必要がある.
% cd ~/csd/proj % svn update
ワーキングコピーの状態確認
ワーキングコピーの状態を確かめるには, (ワーキングコピーが存在するディレクトリ以下で)
% svn status
とする.先頭のマークで状態が分かる.
- ?
- どんな状態か分からない.(例えば,ワーキングコピーディレクトリ下に新たにファイルを作成したが,svn addしていない場合,とか)
- A
- 追加
- D
- 削除
- C
- 衝突
- M
- 変更
- !
- バージョン管理下で,ファイル,ディレクトリが不完全,または失われている.svn のコマンド以外でファイルを消去したりするとよく起こる.svn revertなどを使って回復できるが,revertコマンドは「変更を破棄してしまう」という意味で本質的に危険なので,多用しないこと.(!フラグが出ないように気をつけてファイル管理すること)
ワーキングコピーに対する修正変更を,リポジトリに登録
自分が加えた修正をリポジトリに反映させるには,次のようにsvn commitを実行する.
(proj内のxxx.cを修正して登録する場合の例) % cd ~/csd/proj % emacs xxx.c % svn commit -m 'コミットメッセージ'
「コミットメッセージ」には,何を変更したかを書いておく(他の共同開発者にわかるように)
- commitする際には必ずメッセージが必要だ,と覚えておこう.
最終更新日:2015/03/05 10:01:19