Help us understand the problem. What is going on with this article?

MATLABでGitを操作しよう (第3回 : チェックアウト "特定のコミットに戻る")

引き続きMATLAB GUIによるGit操作の第3回目

作成環境 MATLAB R2019b

第1回 : プロジェクト作成とGUIの説明
第2回 : git add/git commit
第3回 : チェックアウト "特定のコミットに戻る"
第4回 : ブランチ作成
第5回 : リモートリポジトリとの連携 (git push/git pull)
第6回 : クローンを作成する
第7回 : 応用1
第8回 : 応用2

よく見たら、チェックアウトが抜けていたので、今回はチェックアウト。次回ブランチ作成とさせて頂きます。また、次回はMATLABのAPIを使ってGitとどの様な連携が取れるのか?も紹介予定です。

チェックアウト

① : 特定のコミットに戻る
② : ブランチの切り替え
前者は、「覆水盆に返す」とでも言いましょうか、今回紹介します。
簡単に図示すると次の様なことをMATLAB GUIで実施してみます。
git3_0.png

1.ファイルを更新してコミットを繰り返す

準備として先ず、foo.mとgoofy.mがリポジトリにコミットされている所から話を始めます。
git3_1.png

ここでgoofy.mのファイルを開いてみます。(単なるコメント文のみです)
git3_2.png

次にgoofy.mを編集します。
git3_3.png

Gitのステータスアイコンが青い四角に変わったので、トラッキングしているファイルに変更があったことを意味しています。
git3_4.png

コミットコメントをシンプルに書いて、コミットを実行します。
git3_5.png

再度、goofy.mを編集し、コミットを行います。
git3_6.png

ここまでで、goofy.mは2回変更があったことが、コミットされているはずです。
そこで、「ブランチ」アイコンをクリックしてコミット履歴を確認してみます。
git3_7.png

2.チェックアウト(過去のコミットに戻る)

ブランチブラウザを閉じて、プロジェクトウィンドウで対象となるgoofy.mを右クリックします。
コンテキストメニューから「ソース管理」> 「Gitを使用して元に戻す」をクリックします。
git3_8.png

「ファイルを元に戻す」というウィンドウが起動します。
過去のコミットポイントが一覧で表示されるので、戻したいコミットポイントを選択して、「元に戻す」をクリックします。今回は一番最初の状態に戻してみます。
git3_9.png

goofy.mを開くと、無事に最初の状態に戻っていました。
git3_10.png

3.差分確認

最後に、MATLABの差分ツールを使って、テキストの差分を見てみます。
goofy.mを右クリックし「比較」> 「先祖と比較」をクリックします。

git3_11.png

確かに、チェックアウトしている状態のファイルと最新の状態のファイルのテキスト差分をちゃんと認識していることを確認出来ました。
git3_12.png

誤解の無いように補足すると、Gitはコミット毎にスナップショットを保存しており、ファイル差分を保存しておりません。スナップショット内のファイルからテキストデータを抽出してテキスト差分を表示しています。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした