昔だとプロジェクト本体と自作ライブラリは別フォルダにして管理してました。
理由は別プロジェクトからも利用し、常にプロジェクトからは最新ライブラリを利用したいからです。
VisualStudioやEclipseはその辺が強力なので苦労はしなかったのですが、XCodeやAndroidStudioだと強烈に不便だった記憶。
今はGitが強力なので共通自作ライブラリもプロジェクト外ではなく、プロジェクト内で管理できるので大抵のIDEでは苦労しなくなりました。
Git考えた人ほんと天才だと思います。
さて表題の件、そのままだと下位階層の自作ライブラリはVSCodeのSource ControlにでてくれないのでGitGraphが使えません。
しばらくコマンドラインでGitをしていましたが、間違えそうで怖くなり、この方法にしました。
Gitをコマンドで制御している方はすごいとおもいます。
2025-09-15 追記、まずGit Submoduleを理解しましょう
流石Gitです、下記のように私が悩んでいたことはすでに対処済だったことを知りました・・・。
# 自作ライブラリのリポジトリを当該プロジェクトに組み込むコマンド
git submodule add <repository-url> <path>
上記コマンドだけです。
あとはGitが自動的に分離をしてくれるので、ライブラリを.gitignoreに追加する必要もありませんし(追加済の場合は警告)、何より当該リポジトリとライブラリリポジトリがツリー形式で表示してくれるので可読性が一気に上がります。
下記に記すworkspace.jsへの追記も不要です。
もし、うまく表現されなければ下記の「Source Controlのサブモジュール設定」を確認してください。
ほんとお恥ずかしい・・・。
手順(私は英語版を使用しているので適宜置き換えてください)
- ワークスペースを作成
現在のプロジェクトをワークスペースとして保存します。- VSCodeのメニューから「File」→「Add Folder to Workspace」を選択し、適当な名前で保存します。
自作ライブラリ
フォルダをワークスペースに追加
次に、自作ライブラリフォルダ
をワークスペースに追加します。- メニューの「File」→「Add Folder to Workspace」を選択し、
ライブラリ
フォルダを選びます。
- メニューの「File」→「Add Folder to Workspace」を選択し、
- Git Graphでそれぞれのリポジトリを表示
これで、Git Graph上でもプロジェクトルートとライブラリ
のリポジトリを個別に操作できるようになります。ワークスペースの各フォルダがそれぞれGitリポジトリとして認識され、Git GraphでGUI操作が可能になります。
それでも、Source Controllに表現されない場合
1. Source Controlがサブモジュールを認識しているか確認
通常、VSCodeのSource Controlはサブモジュールも表示するはずですが、表示されない場合は「設定」からサブモジュールの自動認識を有効にしてみてください。
- 設定を開く
VSCodeのメニューから「Preferences」→「Settings」を選びます。 - Source Controlのサブモジュール設定
検索バーで「submodule」と入力し、「Git: Support Submodules」のチェックが入っているか確認します。チェックが入っていない場合は有効にして、VSCodeを再起動してみてください。
2. git.enabled
設定の確認
git.enabled
設定が無効化されていると、GitリポジトリがVSCodeで表示されない場合があります。
- 設定を開く
VSCodeの「Preferences」→「Settings」メニューから設定ウィンドウを開きます。 git.enabled
が有効か確認
検索バーに「git.enabled」と入力し、この項目がオンになっていることを確認します。もしオフであれば、オンに切り替えてください。