ノンプログラマーのあなたへ - Gitによるファイル管理のススメ(管理&応用編)
前回の記事「ノンプログラマーのあなたへ − Gitによるファイル管理のススメ(設定編)」では、バージョン管理ツールGitのご紹介とそのインストール方法について書かせていただきました。
本記事では、続編としてGitを使ったファイル管理の具体的な方法をご紹介したいと思います。
まず、前回インストールした Git Gui を起動します。
リポジトリを作成する
バージョン管理をはじめるには、変更履歴の保管場所となるレポジトリを用意しておく必要があることは、前回ご紹介した通りです。
そのために、編集画面の「編集>オプション」メニューで、ユーザ名とメールアドレス欄に自分の情報を入力する必要がありますが、ここまで完了していない場合は、前回の記事を参照して登録して次に進んでください。
「Create New Repository(新しいレポジトリを作る)」をクリックしてレポジトリを作成したいフォルダを選びます。
バージョン管理をする(コミットする)
Gitでのバージョン管理の方法は「.git」ファイルの存在するフォルダ内のすべてのファイルのスナップショットを記録し、各ファイルに変更があった場合は、その都度スナップショットを記録します。
Gitが、変更前と変更後のスナップショットの差分を確認することで、ファイルのバージョンを識別します。
また、ファイルのスナップショットの記録を「コミットする」と言います。
今回はピクチャフォルダに「.git」フォルダを作成しました。
この中のファイル「git-test.txt」が編集対象のファイルだとして、このファイルの一部を変更して保存します 。
「Rescan(再スキャン)」ボタンを押すと、変更したファイル「git-test.txt」が「Unstaged Changes(コミット予定に入っていない変更)」欄に移動します。
ファイル名をクリックすると、右側の画面に変更前と後の差分が表示されます。
赤文字に示された部分が変更前、緑文字で示された部分が変更後です。
このファイルをコミットして、ファイルの更新をスナップショットとして記録してみましょう。
「Stage Changed(変更をコミット予定に入れる)」を押します。
「Staged Changes(ステージングされた(コミット予定の)変更)」欄に「git-test.txt」ファイルが移動し、 コミットする準備ができました。
なお、ファイルの変更箇所のうち一部分のみをコミット対象にしたい場合は、 右側の画面の差分表示部で、該当部分にカーソルが当たった状態で、右クリックメニューから、選択箇所のみをコミット対象に含めることができます。
画面右下の「Initial Commit Message(コミットメッセージ)」欄に、変更の概要を記入します。
ここでは 「height のサイズを変更」と記載することにします。
変更の概要や変更の理由などを記載しておくと、後で第三者が参照した場合でも、もれなく情報を伝えられます。
「Commit(コミット)」ボタンを押します。コミットに成功すると、画面左下に、「Created commit(コミット***を作成しました)」と表示されます。
後は、通常通りにファイルを編集。編集が終わったらGitでコミットしてスナップショットを記録する、という動作の繰り返しです。 コミットをしない場合は、記録が残らないので、「編集したらコミットする」のを癖にしてしまいましょう。
ファイルの変更履歴を確認する
「ファイル>Visualize all Branch History」メニューからこれまでの変更履歴(取得したスナップショットの履歴すべて)を確認してみましょう。
画面の上部にある丸がコミットを示しています。
新しいコミットは上に、古いものほど下に表示されます。
各コミットの隣には、コミットメッセージと、コミット者、コミットの日時が表示されています。
コミットメッセージの上をクリックすると、左下の画面にコミットの詳細情報(コミットメッセージや、ファイルの修正前後の差分)が表示されます。また、右下の画面には、更新したファイルの一覧が表示され、ファイル名をクリックすると 画面の左下の詳細表示に選択したファイルの差分が表示されます。
中段には検索フォームがあり、コミットメッセージなどの一部の文言を入力して、コミットの検索ができます。
初期状態では、すべてのコミット履歴が表示されるので 大量にコミットされたレポジトリを開くときは、時間がかかります。
履歴が多い場合はメッセージ内の文言で絞り込むと良いでしょう。
下段の詳細メニューでは、変更履歴に関する様々な操作ができます。
差分、変更前、変更後の状態を切り替えたり、表示行数を指定したりできます。
また、変更履歴ウィンドウの edit メニューでは、表示の色やフォント、文字表示の長さなどが設定できます 。
Viewメニューでは、変更履歴ウィンドウの表示項目やレイアウトなどが、好みに応じて設定できます。
Gitでの履歴管理は、テキスト形式ファイルの他、どのような形式のファイルでも対応します。
「ファイルを変更したらコミットする」をルーチン化して、変更履歴の管理をシステマチックに行ってみてはいかがでしょうか。
株式会社キャパでは、アプリの企画・開発についてご相談を承っています。
アプリを作りたいので、具体的な提案が欲しい。頭の中にあるアイデアを本当に実現できるのか知りたい。予算内に収まるのか?
などのお客様のご相談に、親身に応じます。
アプリ開発:実績のご紹介