Gitでバージョン管理 前バージョンとの比較、置換が超便利!

Gitでバージョン管理していて便利だなと思うのは、前のバージョンのファイルと比較したり、前のバージョンに戻したりできることですね。

変更ファイルには「>」マークが出る

EclipseでGitに登録したプロジェクトのコードを編集すると、前回のコミット時点からコードを編集していますよ、というマークが出ます。

Ss 2013121215583801

ここでは「Hello, Git!」の下に「Welcom Git!」という行を追加しています。
すると、「Package Explorer」のファイルアイコンのところに「>」という表示が出ます。

上位のパッケージやフォルダにも「>」が出ていますね。

コードを編集すると、こんなマークが出るので、どのファイルを編集したか一目瞭然です。

前のバージョンと比較する

この状態で、前にコミットしたときどどれだけコードを編集したのかを確認してみましょう。

「Package Explorer」でファイルを右クリックして、ポップアップメニューを出します。

Ss 2013121215583802

「Compare With」>「Commit…」を選択します。

Ss 2013121215583803

どのバージョンと比較するか選ぶ画面が出ます。
直前のバージョンを選択してボタン「OK」を押しましょう。

すると、エディタ部分がこんな風になります。

Ss 2013121215583804

  • 左側がローカルにあるバージョン (編集したコード)
  • 右側がリポジトリにコミットしたバージョン

になります。

前のバージョンに比べて1行増えていることが簡単にわかります!

こうして編集している箇所がどこなのか一発でわかるので、「コードを編集してエラーが出まくったんだけど、どこをいじったっけ?」といったときに便利です。

必要に応じて、必要な箇所を前バージョンのものに戻す機能もありますが、ここでは比較するところだけ紹介しておきます。

前のバージョンに戻す

エラーが出まくってどうしようもなくなった時、いっその事、前のバージョンに戻すこともできます。

比較するときと同じように、ファイルを右クリックしてポップアップメニューを出しましょう。

Ss 2013121215583805

「Replace With」>「Commit…」を選択。

Ss 2013121215583806

すると、「ファイルを戻してもいいの?変更したところは元に戻っちゃうよ?」なんて聞かれます。

問題なければボタン「OK」をクリックします。

すると、どのバージョンに戻すか選ぶ画面が出てきます。

Ss 2013121215583807

ここでは直前にコミットしたバージョンを選んでボタン「OK」をクリック。

すると・・・

Ss 2013121215583808

コードがコミットしたバージョンに戻りましたね!
追加した行が消えています。

「>」マークも消えています。

これでコミットしたバージョンのファイルに戻りました。

おわりに

コードを編集していると、「前の時からどこをどう編集したんだっけ?」と思うときが出てきますよね。

そういったときにこの比較機能が便利です。

「いっその事前の状態に戻そう」と思ったら、前のバージョンに戻すこともできます。

あと、Eclipseはローカルでも変更点を自動的に保存してくれています。

「Compare With」>「Local History」や「Replace With」>「Local History」を使うことで、ローカルで自動的に保存したものと比較したり、その状態に戻したりもできます。

バージョン管理しているとこういったことができるので、安心してコードを書いたり消したりすることができるんですよね。
ぜひ使ってください。

元大手電機メーカのシステムエンジニア。 詳しくはこのサイトについての「サイト管理者について」をご覧ください。

無料メールセミナー