Gitリポジトリに修正単位ごとに分割してコミットする - Visual Studio でのGitリポジトリのステージングを利用する - Visual Studio
Visual StudioでGitリポジトリのステージングを利用する手順を紹介します。
概要
通常、Gitリポジトリにコミットする場合はリポジトリのファイルがすべてコミットされます。SubVersionやCVSのようにコミット時にコミットするファイルを手動で選択する操作は用意されていません。そのため、修正項目ごとにコミットをしたい場合は、一つの項目を修正するごとにコミットする必要があります。複数の修正をした場合、通常のコミットすると、その時点までの修正がまとめてコミットされてしまいます。
Gitでは、複数の修正項目を実施たのち、特定のファイルのみをコミットしたい場合は、ステージングと呼ばれる機能を利用することで、指定したファイルのみをコミットできます。
ステージングの利用手順
Visual Studioを起動し、Gitリポジトリのプロジェクトを開きます。今回は、フォームのコードと、Program.csの2ファイルに変更を加えました。このままコミットすると2つのファイルがコミットされてしましますが、ステージングを利用して、別々にコミットし2回に分けてコミットをします。
[チームエクスプローラ]ウィンドウを表示します。[変更]画面を表示します。2ファイルが変更ファイルになっています。
まず、一度目のコミットで、Program.csファイルをコミットします。[変更]ウィンドウの変更ファイルの一覧から"Program.cs"ファイルをクリックして選択し右クリックします。下図のポップアップメニューが表示されます。メニューの[ステージ]をクリックします。
ステージ設定したファイルが、[段階的な変更]のセクションに追加されます。
コミットメッセージに変更内容を記述します。通常はコミットボタンのキャプションは「すべてをコミット」ですが、ステージングされた場合は、「コミットしてステージング」になります。コミットボタンのドロップダウンメニューもステージング済みをコミットするメニューになります。
コミットボタンを押してコミットします。ステージング済みの[段階的な変更]セクションに追加されたファイルのみがコミットされます。
[同期]画面を表示します。コミットされたアイテムが表示されています。
コミットされたアイテムの要素をダブルクリックすると、コミットの詳細が表示されます。"Program.cs"ファイルのみがコミットされたことが確認できます。
同期を実行してリモートリポジトリに反映します。
残った"FormMain.cs"ファイルをコミットします。
コミットメッセージを記入してコミットします。
コミットが完了しました。
同期を実行してリモートリポジトリに変更を反映します。
著者
iPentecのプログラマー、最近はAIの積極的な活用にも取り組み中。
とっても恥ずかしがり。