第3回ASUB会(朝にサブバージョンを勉強する会)

毎朝8時から1時間だけid:taje4120Subversion実践入門を読んでいる。
Subversion自体はまえから使っているので、新しく知ったこと、確認したことなどをメモ

第1章 序説

バージョン管理を使おうという話。初めて使う人、他のバージョン管理システムから移行する人はよんだほうが良い

第2章 バージョン管理とはなにか

  • バージョン管理にはすべてのものを入れたほうが良いがあとから自動生成できるAPIドキュメントなどのものは入れないほうがいいだろう
  • ローカルのファイルを作業コピー(working copy)もしくは作業ディレクトリ、作業領域(workspace)という <=ややこしいな
  • リポジトリ同士を結びつける外部項目(eternals)という機能があるらしい
  • リビジョンはリポジトリ全体に対する番号づけ方式を採用している
  • リポジトリはファイルを差分で管理しているが、高速化のため途中のリビジョンの完全なコピーを保持している
  • ブランチなどはハードリンクなどを使って高速化している(遅延コピー)

第3章

インストール
sudo aptitude install subversion
リポジトリの作成
svn admin create [dir_name]

出来上がるディレクトリの中身は気にしなくて良い

プロジェクトの作成

既存のソース群をインポートしてリポジトリディレクトリを作る

svn import -m "自由なコメント" . file:///c:\xxx\xxx

mのコメントを省略するとエディタが起動して、そちらで入力を促される

チェックアウト
svn co file://...
変更の確認
svn status [file_name]

M [file_name]とでたらそのMはファイルがローカルで変更されていることを示す

差分の確認
svn diff [file_name]

するとデフォルトのDiffツールで差分がみれる。このDiffのツールは変更できる。
本では

@@ -3,3 +3,5 @@

の説明がなかったが、これは1個目のテキストの3行目から3行分と、2個目のテキストの3行目から5行分を比べていますよという意味

コミット
svn commit -m "自由なコメント"

今日はここまで

Subversion実践入門:達人プログラマに学ぶバージョン管理(第2版)

Subversion実践入門:達人プログラマに学ぶバージョン管理(第2版)