Subversion覚書
今現在のチームは誰もGitを使えず、バージョン管理はSubversionなのだ。ナンテコッタ!
(「コンパイルエラーが出ているコードはコミットしないでくださいね(ニッコリ)」)
とりあえず従うけど、密かにGitも使ってやるもんねー!GitからSVN使えるらしいし。
(ちなみにここ最近の記事で分かってもらえるが、EclipseやJavaやSeasar2を、強いられているんだ。
GUI環境を、強いられているんだ!)
SVNを操作するエクスプローラ拡張を入れる
TortoiseSVNをインストールする(SVNを操作できるようになるエクスプローラ拡張)
→日本語メニューにする
PuTTY ごった煮版をDLし、puttygen.exeから
SVNの鍵を読み込ませて、「秘密鍵の保存」でppkファイルとして保存
tortoiseSVNの設定>ネットワーク からSSHのSSHクライアントを設定する
"C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe(TortoriseSVNのパス)" -l svnuser -i C:\key\secret.ppk(今作った鍵) -pw XXXX(自分のパスフレーズ)
用語の違い
SVN | Git | |
---|---|---|
リポジトリの最新リビジョン | HEAD | - |
今checkoutしているリビジョン | BASE | HEAD |
ファイル/ディレクトリが最後に更新されたリビジョン*1 | COMMITTED | |
COMMITTEDの1つ手前 | PREV |
コマンド
コマンド | 効果 | Gitでいうと |
---|---|---|
svn checkout {url} | サーバ側リポジトリから作業コピーを作る/カレントバージョン切替 | git clone/git checkout |
svn update | サーバ側から変更を作業コピーに適用 | git fetch→merge(git pull) |
svn commit | 変更をサーバ側に適用 | git push |
svn status | 現在の状況をみる | git status |
svn log | 履歴を見る | git log |
svn add {file/dir} | {file/dir}を管理に加える(予告) | git add |
svn revert {file/notice} | {file}を拾ってきた時点の状態にまで戻す {notise}予告を取り消す | |
svn delete {file/dir} | {file/dir}を削除する 次回コミットで確定される | git rm |
svn move {f/d-A} {f/d-B} | {f/d-A}を{f/d-B}にムーブ | git mv |
svn copy {f/d-A} {f/d-B} | {f/d-A}を{f/d-B}としてコピー ブランチやタグを作成 |