Git/Subversionコマンド対応表
SubversionのコマンドとGitコマンドの対応早見表です。 Subversionに慣れていることを前提としています。
| Subversionコマンド | Git/Cogitoコマンド |
|---|---|
| svnadmin create repo | git-init (注1) |
| svn import url | git-add. && git-commit |
| svn checkout url | git-clone url |
| svn diff | less | git-diff |
| svn status | git-status |
| svn update | git-pull |
| svn add file | git-add file |
| svn rm file | git-rm file |
| svn mv file | git-mv file |
| svn commit | git-commit -a または加えて git-push url (注2) |
| svn log | less | cg log |
| svn checkout -r tag | git-checkout rev (注3) |
| svn blame file | git-blame file |
| svn copy trunkurl tagurl | git-tag tag |
| svn copy trunkurl branchurl | git-branch branch (注4) |
| svn switch branchurl | git-checkout branch(注4) |
| svn merge -r N:M url | git-merge branch |
こうしてみると、 svn と git のコマンド体系は非常に似ていることが分かりま すね。Subversion 使用者は Git を比較的自然に覚えられるのではないでしょうか。
注1
git-init を実行すると、カレントディレクトリに .git というディレクト リが作成されます。 Subversion とは異なり中央集権のレポジトリを作成する必要はあ りません。 cg init を実行したその場所があなたのレポジトリです。
なお、git-init コマンドは以前 git-init-db コマンドでした。 古いバージョンの git の場合は git-init-db コマンドを実行してください。
注2
Subversionはレポジトリがひとつしかありませんが、Git では各個人がレポジトリを所 有しています(もしかしたら一人でいくつも持ってるかも)。 git-commit -a は自分のレポジトリへコミットするコマンドです。 git-push url は他人のレポジトリへコミットするコマンドです。
注3
git-checkout tag コマンドを実行すると、 HEAD がどのブランチにも存在 しない状態 (no branch) になります。 元に戻すには git-checkout branch として、任意の branch の先頭に移動 しましょう。
注4
cvs では branch の作成とチェックアウトをふたつのコマンドで実行する必要が ありました。git では、上記対応表のように二段階で実行することも可能ですが、 git-checkout -b branch とすることで、ひとつのコマンドで実行すること もできます。
ここから下は少し古い情報です。
以下は、SubversionのコマンドとCogitoコマンドの対応早見表です。 Subversionに慣れていることを前提としています。
| Subversionコマンド | Git/Cogitoコマンド |
|---|---|
| svnadmin create repo && svn import url | cg init (注1) |
| svn checkout url | cg clone url |
| svn diff | less | cg diff |
| svn status | cg status |
| svn update | cg update |
| svn add file | cg add file |
| svn rm file | cg rm file |
| svn mv file | cg mv file |
| svn commit | cg commit または加えて cg push branch (注2) |
| svn log | less | cg log |
| svn checkout -r tag | cg seek rev (注3) |
| svn blame file | git blame file |
| svn copy trunkurl tagurl | cg tag tag |
| svn copy trunkurl branchurl | cg switch -r HEAD branch |
| svn switch branchurl | cg switch branch |
| svn merge -r N:M url | cg merge branch |
こうしてみると、 svn と cg のコマンド体系は非常に似ていることが分かりま すね。Subversion 使用者は Git/Cogito を比較的自然に覚えられるのではない でしょうか。
注1
cg init を実行すると、カレントディレクトリに .git というディレクト リが作成されます。 Subversion とは異なり中央集権のレポジトリを作成する必要はあ りません。 cg init を実行したその場所があなたのレポジトリです。
注2
Subversionはレポジトリがひとつしかありませんが、Git では各個人がレポジトリを所 有しています(もしかしたら一人でいくつも持ってるかも)。 cg commit は自分のレポジトリへコミットするコマンドです。 cg push branch は他人のレポジトリへコミットするコマンドです。
注3
cg seek rev は新たに cg-seek-point というブランチを作ります。 引数なしで cg seek を呼ぶと HEAD ブランチに戻ることが出来ます。
Keyword(s):
References:[Diary/2006-10-04] [SideMenu] [Git] [Diary/2006-10-03]