ローカル&お一人様ではじめるSourceTreeによるGit入門。
連載2回めの前回では「SourceTreeでローカルファイルをリポジトリに指定する」までをご説明しました。
3回目の今回は、指定したリポジトリ(ローカルファイル)の状態をSourceTreeに保存(コミット)するまでを解説したいと思います。
解説にあたり使用しているサンプルフォルダは前回の記事冒頭でご紹介・ご提供しております。必要な方はダウンロードされて下さい。
それでは「SourceTreeでローカルファイルをリポジトリに指定」した状態の続きから見ていきましょう。
※SourceTreeを起動してください。
SourceTreeと「Gitテスト」フォルダの現在の状態
現状で、「Gitテスト」フォルダは、Gitの監視下に置かれています。
この状態はSourceTreeを閉じるまで続きます。
SourceTreeを終了しますと、監視状態も途切れるの?と気になりますが、SourceTreeは次に起動したときに、監視下にあるフォルダについて、自分が持っている最終情報と現在の状態を比較して、変更点を読み取ってくれます。
よって「作業をする際にSourceTreeを起動していないと、Gitの保存情報とフォルダの現状の情報が狂う!!」ということはないです。
しかしそのためにはまず、Git(SourceTree)に「Gitテスト」フォルダ内の状態を、情報として保存してもらわなければなりません。
このための操作を「コミット」といいます。
まずは初期状態をコミットしよう
前回の操作で「Gitフォルダ」をリポジトリに指定して、さっそくファイル変更などしてみたいところですが、まずは現状の状態を最初の履歴として保存(コミット)しておきましょう。
※前述しましたがコミットとは、変更履歴を保存すること、と覚えてください。
今の段階では、Gitには「Gitフォルダ」の状態が何も保存されていません。
フォルダをリポジトリに登録した段階で初期状態を保存してくれてそうな雰囲気ですが、そんなことはないんです。
要はPCのバックアップと同じです。バックアップ処理をしてやらないと、肝心のバックアップファイルが作られないのです。
コミットの手順
それではコミットの手順を見ていきましょう。
現在、「Gitテスト」フォルダの中には「memo.txt」が一つで、「memo.txt」の中身は白紙です。この状態をGitに保存します。
SourceTreeで「ファイルステータス」タブを表示
SourceTreeの画面は、以下の図の様になっているはずです。
もし画面がこのような状態になっていなかったら、一番下のタブが「ファイルステータス」になっているか確認してください。
「ログ」や「検索」になっていると、違う操作画面が表示されます。
「ファイルステータス」タブの画面構成
①はステージングエリアです。ここに移動したファイルが履歴保存(コミット)の対象となります。
②は作業ディレクトリです。リポジトリとして指定した「Gitテスト」フォルダの中身が表示されています。
③には、②のエリアで選択しているファイルの中身が表示されます。
※現状「memo.txt」は白紙なので、何も表示されていません。
さて、②の作業ディレクトリにおいて、「memo.txt」の左側に「?」マークがついていますね。
「これは履歴保存がされてないファイルですよ」と教えてくれるアイコンです。
目的のファイルをインデックスに追加
「memo.txt」を選択した状態で、上の「選択をインデックスに追加」をクリックしましょう。隣のボタン「全てインデックスに追加」でもOKです。
※ファイルをドラックドロップでも移動できます。
ステージングエリアへ、「memo.txt」が移動しました。このエリアに追加されたファイルがコミット(履歴保存)の対象となります。
今回は1ファイルだけなので、何でわざわざこんな手間を?と思えますが、実際の利用シーンではコミット(履歴保存)したいファイルとそうではないファイルがそれぞれ存在することになります。
毎回フォルダ内の全てを保存していたらデータ量が膨大になってしまいますので、選択というステップがあるのは、ありがたい仕様ですね。
次はいよいよ、履歴保存(コミット)を行います。
最初のコミット操作
コミットの操作は、画面の下部エリアで行います。
画像のボカしている範囲には、私の名前とメールアドレスが表示されています。(皆さんの画面では、皆さんの名前とメアドですね)
その下の空欄に、コミット用のコメントを書き込みます。
コメントの記述にルールなどはありませんので、自分がわかる説明文を入れましょう。
このコメント記入は必須です。空欄ではコミットできません。
履歴を見返した時、どのような状態の保存履歴なのかを確認するために必要な情報ですので、あとから読んでもわかる説明文を入れることが大切です。
コメントを書き込んだら、右下のコミットボタンをクリック。
一見なにも変わってませんが、これで初期状態がGitに保存されました。
コミット完了画面とログの確認画面
コミットが完了すると画面はこのように切り替わります。
ファイルなどが消えてしまって、コミットされたかどうか不安になりますね。
ここで一旦、ログ画面を見てみましょう。
一番下のタブを「ログ」に切り替えてください。
上の欄を見ると、先程のコメント内容がGitに保存されているのがわかります。
また下の欄では、この保存を行ったのが誰で何時に実行されたかのログも確認できます。
ボカシを入れてますが、コミットした者のメアドとネーム、コミット時間などの記録を確認することができます。
これで今後様々な変更をおこなっても、いつでもまっさらな初期状態に戻すことができるようになりました。
まとめ
今回は、フォルダの初期状態をGitに保存するために、「はじめてのコミット」を行いました。
拍子抜けするほど簡単だったのではないでしょうか。
本来なら例の黒い画面(コマンドプロンプト)になにやら打ち込んで操作するものだったことを考えると、SourceTreeのようなソフトがあるのはありがたいですね。
次回は「memo.txt」の中身を編集し、SourceTreeでその変更がどのように管理されるかについて見ていきたいと思います。