subversion自分用メモ
/home/pekatuu/svnmemo + hoge + hogera | + hogera2 | + fuga + fugaga + fugaga2
ディレクトリ階層がこうなってる。Treeの書き方おかしいとかいうな
この構造をもったリポジトリを作るのだ
リポジトリのルート + hoge + hogera | + hogera2 | + fuga + fugaga + fugaga2
リポジトリつくる
[~/svnmemo]$ svnadmin create ./repository [~/svnmemo]$ ls fuga/ hoge/ repository/
ディレクトリがなかったから勝手に作ってくれる
既存のディレクトリをリポジトリにブチこむ
[~/svnmemo]$ svn import hoge file:///home/pekatuu/svnmemo/repository -m "hogeee" 追加しています hoge/hogera 追加しています hoge/hogera2 リビジョン 1 をコミットしました。
importコマンドは指定したディレクトリ直下のファイル、ディレクトリを再帰的にリポジトリに追加する。"file://"にはリポジトリへのフルパスを書かないといけない
覗いてみる
[~/svnmemo]$ svn list -R file://`pwd`/repository hogera/ hogera2/
はいミスったー!あほーあほー!いわんこっちゃない
とりあえずチェックアウト
[~/svnmemo]$ mkdir wc; cd wc [~/svnmemo/wc]$ svn co file:///home/pekatuu/svnmemo/repository A repository/hogera A repository/hogera2 リビジョン 1 をチェックアウトしました。 [~/svnmemo/wc]$ ls repository/
あほー!
ディレクトリを作る
作業コピー内でする方法と、レポジトリを直接たたくのと二通りある
作業コピー内でほげる
[~/svnmemo/wc]$ cd repository/ [~/svnmemo/wc/repository]$ svn mkdir hoge A hoge
この変更はコミットしたときに有効になる
[~/svnmemo/wc/repository]$ mkdir hoge [~/svnmemo/wc/repository]$ svn add hoge
と同じだと思う
リポジトリを直接ほげる
[~/svnmemo/wc/repository]$ svn mkdir file:///home/kir/g-yamada/svnmemo/repository/hoge -m "made dir" リビジョン 2 をコミットしました。
ディレクトリを移動する
やっとリポジトリ直下にhogeができたので、hogera*を移動する。これにも作業コピー上でするのとリポジトリをほげるのと2通りできる
WCほげ
[~/svnmemo/wc/repository]$ svn move hogera hogera2 hoge A hoge/hogera D hogera A hoge/hogera2 D hogera2
やっぱりこのあとコミットがいる
リポジトリほげほげ
[~/svnmemo/wc/repository]$ REPO="file:///home/pekatuu/svnmemo/repository" [~/svnmemo/wc/repository]$ svn move $REPO/hogera $REPO/hogera2 $REPO/hoge -m "moved" リビジョン 3 をコミットしました。 [~/svnmemo/wc/repository]$ svn list -R file:///home/pekatuu/svnmemo/repository hoge/ hoge/hogera/ hoge/hogera2/
できたぬ
次に勉強すること
マージとかブランチとかたぐとかなんかそんなん