svn
last update:
2013/03/15
Search :
: 0 results
準備
// Xcode インストール
https://developer.apple.com/xcode/ // AppleIDが必要
Xcode > Open Developer Tool > More Developer Tools...
Command Line Tools for Xcode インストール // Homebrewに必要
// Homebrew インストール
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)" // 下記コマンド使用に必要
// Subversion インストール
brew install svn
ステータス
svn --version // バージョン確認
svn info // リポジトリ情報表示
svn status // 変更内容表示
svn log // コミットログ表示
svn log --verbose // コメント表示
svn log --limit [n]// 最新n件表示(コミットした直後の最新は表示されない)
svn log --limit [n] [repository] // 共有された最新n件表示(コミットした直後の最新も表示される)
svn diff -r [commit id(before)]:[commit id(after)] // 差分全表示
svn diff -r [commit id(before)]:[commit id(after)] | awk '/^Index/ {print $NF}' // 差分のあるファイル名のみ表示
svn diff -r [commit id(before)]:[commit id(after)] [file] // 指定ファイルの差分表示
リポジトリ
svn mkdir -m "comment" [repository]/trunk/[dir] // trunkフォルダ作成
svn mkdir -m "comment" [repository]/branches/[branch name] // branchフォルダ作成
svn cp -m "comment" [repository]/trunk/[dir] [repository]/branches/[branch name]/[dir]
// trunkからbranchを切る
svn rm -m "comment" [repository]/branches/[branch name] //不要branch削除
チェックアウト
svn co [repository]/trunk/[dir] [local dir] // trunk チェックアウト
svn co [repository]/branches/[branch name]/[dir] [local dir] // branch チェックアウト
svn co [repository]/trunk/[dir]@[revision num] [local dir]
// 特定 revision num チェックアウト(dirが消えた後に取得する場合、revision numはtrunk直下のlogから参照したものを入れる)
ファイル更新
svn up // アップデート
svn add [file,dir] // 追加登録
svn add * --force // カレント以下全て対象
svn delete [file,dir] // 削除登録
svn status | grep '^!' | awk '{print $2}' | xargs svn delete // カレント以下のステータス'!'のファイル対象
svn revert [file] // ファイル変更の取り消し
svn ci -m "comment" // コミット
マージ
svn merge [repository]/branches/[branch]/[remote dir]
// branchからmerge([local dir]内の最上階層で実行,[remote dir]が[local dir]にmergeされる)
svn merge -r HEAD:[revision num] [local dir]
// revision num の内容に戻す(commitで反映)
svn resolved [C file]
// [C file]を編集した後、競合の中間ファイル[? file]が削除される
切断
find . -type d -name .svn // カレント以下の.svn検索
find . -type d -name .svn -print0 | xargs -0 rm -rf // カレント以下の.svn削除