Posted at

SVNユーザがGitで躓くポイント


はじめに

長年SVNを使ってきた人からみると、Gitはなかなかとっつきにくい印象を持たれる方が多いように感じます。この記事では、SVNとGitの違いに焦点を当てて、SVNユーザがGitを理解するのに必要なポイントを見ていきます。


Gitで分からないことを調べるとCLI(コマンド)ベースで検索結果が表示される

SVNを使ってる開発者は基本TortoseSVNなどのGUI環境を用いてSVNの操作をしているはずです。ほとんどコマンドを打ってSVNを操作している人はいないと思います。GitでわからないことやGitを学び始めようとした際にGoogleなどで検索すると、コマンドラインでの解説が掲載されていて、「何のことやらわからない」状態になってしまっている人が多いです。


TortoseGitがおすすめ

そういう人には、TortoiseGitがおすすめです。TortoiseGitはTortoseSVNと同じようなGUIで操作できるので、コマンドをいちいち覚える必要がありません。コマンドを覚えるぐらいなら、Gitの概念を覚えることに注力したほうがいいです。

GUIクライアントはほかにもSourcetreeなどあるので自分の気に入ったものを使えばいいです。


リモートとローカルの概念

SVNにはそもそもリモートとローカルの概念がありません。Gitではリモートとローカルに別々のリポジトリが存在するので、そのことを常に意識していないといけません。これは慣れしかないです。


ブランチを切らずにmasterで作業をしている

SVNではGitのように気軽にブランチを切ることができません。しかし、Gitでは作業ごとにブランチを切ることが、当たり前なので、ブランチを切らずに作業して、ほかの作業者のコミットとぶつかることがあります。作業ごとにブランチを切るようにしましょう。


ブランチ戦略を理解できない

ブランチを作ること自体が不慣れなのでなかなか、ブランチのイメージがつかずに、間違ったブランチにマージしたり、masterに直接コミットしたりするSVNユーザがいます。


さいごに

ここまでいろいろ書きましたけれども、やっぱり最後は慣れが必要です。GitをインストールしてGUIクライアントを入れて、ブランチを切ってコミットして、masterにマージする、この一連の流れが理解できたら、ある程度は実務でも使えるはずです。まずはここを目指しましょう。そのあとrebaseなどを勉強して、実際に使ってみるとGit上級者になれます。

「Gitは怖くないよ!!!」