情報応用演習Ⅰ(2024)

VSのGit機能(4/8)

11b-4. 幕間 - ソリューションフォルダを git リポジトリ化する際の注意点

ここで Visual Studio のソリューションやプロジェクトをGitで管理する際の重要な注意事項について説明しておこう.

プロジェクトフォルダに含まれる中間生成物

Visual Sutdio はプロジェクトをビルドする際に,そのプロジェクトの成果物(実行ファイル(.exe, .dll)やコンパイラの中間出力ファイル(.objなど))を プロジェクトフォルダ以下のbinobjといった名前のフォルダ(_)に保存するが, これらの成果物は基本的にバージョン管理の対象に含めるべきではない . リポジトリの管理情報の肥大に繋がるのはもちろんのこと,そもそもこれらの成果物はソースコードから作成可能なものであるためバージョン管理の対象に含める必要はない.

VSでリポジトリを作成した際に自動的に追加されるファイル

今回はVisual Studio の機能を使ってリポジトリを作成しているため,そのような不要なファイルはあらかじめリポジトリへの管理対象外として登録されている(_). 先ほどのgit logコマンドの実行結果を見ると「.gitattributes と .gitignore を追加します。」という履歴が確認できるはずであるが, この .gitignore という名前のファイルがバージョン管理対象外のファイルや場所などを記述するための 除外設定ファイル である1. このファイルの記述方法については下記のページを参考にするとよいだろう.

コマンドラインでGitリポジトリを作成するなどして,そこに Visual Studio のソリューションをなどを設置して,何も考えずに git add . のようなコマンドを 実行した場合は,このような除外対象の設定がなされないので誤って不要な成果物もバージョン管理の対象に含められてしまう場合もあるため注意しよう. このように,リポジトリ内にバージョン管理の対象に含めないファイルが存在する場合には.gitignoreファイルを作成して不要なファイルが登録されないように設定しておく必要がある.

これは Visual Studio に限った話ではなく,Unityなどその他のプロジェクトをGitで管理する際に起こりがちなことであるので注意しておこう. さまざまなビルドツールやプロジェクト用の.gitignoreファイルの例が以下のページにて公開されているため参考にするとよいだろう.

ここまでを理解したら次に進もう.


  1. ちなみに,.gitattributesは個別のファイルやファイルタイプに設定を行うためのファイルで,VSが作成するこのファイルはテンプレートが書き込まれているのみである. ↩︎

Last updated on 2024-06-26
Published on 2024-06-26

Powered by Hugo. Theme by TechDoc. Designed by Thingsym.