LoginSignup
20
20

More than 5 years have passed since last update.

svnコマンドから探すgitコマンド

Last updated at Posted at 2014-04-21

以下で、<N>, <M> はリビジョン番号 (gitではコミットのハッシュ値)。なお、gitでは、リビジョン番号を書くべき場所でブランチ名を書くとそのHEADのリビジョン番号を書いたのと同じ意味になる (例外あり) 。

ローカルリポジトリに関する操作:

svnコマンド gitコマンド
このディレクトリの下だけをcheckout/switch/update/mergeなど 基本できない (1.7 からは sparse checkout である程度対応)
svn export <URL> git archive -o <FILE> HEAD (zip/tarへ出力)
svn commit git commit -a
svn add <PATH> git add <PATH>
svn mkdir <PATH> ディレクトリの下のファイルをadd (空のディレクトリなら、.gitignore などのファイルを作って add)
svn delete <PATH> git rm <PATH>。ブランチ/タグを削除する場合はgit branch -D <NAME>git tag -d <NAME>
svn copy <PATH1> <PATH2> 自分でコピーしてgit add <PATH2>。ブランチ/タグを作る場合はgit branch <NAME>git tag <NAME>
svn move <PATH1> <PATH2> git mv <PATH1> <PATH2>
svn status git status
svn log git log
svn diff git diff HEAD
svn diff -r <N> git diff <N>
svn diff -r <N>:<M> git diff <N>..<M>
svn patch <FILE> git apply <FILE>
svn merge <URL>[@<N>] git merge <N>
svn merge -c <N> git cherry-pick <N>
svn merge -c -<N> git revert <N>。push前なら、 git rebase -iで該当するコミットをskip
svn resolve <PATH> git add <PATH>
svn revert <PATH> 全体を戻すならgit reset --hard HEAD。ファイルを選んで戻すならgit checkout HEAD <PATH>
svn switch <URL>[@<N>] 他のブランチへ移動するならgit checkout <NAME>。古いリビジョンへ移動する場合、無名ブランチを使うならgit checkout <N>、現在のブランチのHEADを変えるならgit reset --hard <N>

リモートリポジトリに関する操作:

svnコマンド gitコマンド
svn checkout <URL> git clone <URL> して、触りたいブランチを git checkout <NAME>
svn commit git push
svn update git pull (これは git fetch して git merge と同じ)。または git pull --rebase (これは git fetch して git rebase と同じ)。

svnリポジトリに関する操作:

  • 特に初心者は、merge は svn のコマンド (git svn ではなく) で行ったほうが無難 (fast-forward や svn:mergeinfo の問題がある)
svnコマンド gitコマンド
svn checkout <URL> git-svn clone -r [<N>:]HEAD --preserve-empty-dirs [--stdlayout] <URL>
svn commit git-svn dcommit
svn update git-svn rebase
20
20
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
20
20