GitHubで複数のプロジェクトを1つのGitHubリポジトリで管理する手順について備忘録的に投稿します。
[.git]フォルダーは1つで十分
プロジェクトの構成で、どうしても異なるIDEで編集する複数のプロジェクトで1つのアプリを制作する場合があります。
私の場合は、ChromeExtensionのNative Messagingを使った拡張機能で発生します。Chromeから呼び出されるコンソールアプリのような外部プログラムはC#で作る場合が多いので、Visual Studio。
ChromeExtensionはJSON/JavaScriptのようなテキストやスクリプト系の言語なので、Visual Studio Codeで編集するので2つのプロジェクトを作成することになります。
今までは別のプロジェクト名で作成して、GitHubへもそれぞれのリポジトリを作成して管理していました。
GitHubのリポジトリが増えてくると処理が煩雑になりそうなので、1つのリポジトリにまとめて管理する方法を調べてみました。
結論的には、GitHubに1つのリポジトリを作成して、複数のプロジェクトをまとめて管理が可能でした。
まずは、リモート側になるフォルダー構成を変更します。私の場合はこんな感じに変更しました。
このフォルダー構成を、そのままGitHubに作ります。まとめて管理できるのでルートのフォルダー内に1つの[.git]を作成するだけのシンプルな構成になります。
GitHubで管理する手順
フォルダー構成を編集したら、次の手順で管理が可能になりました。
1. GitHubでルートになるリポジトリを1つ作成します。
(今回は[GitHubアカウント/FindExplorer]で作成)
2. 特定のフォルダーやファイルを除外するための[.gitignore]を作成してルートフォルダーに保存します。
# C#
bin/
obj/
*.user
*.suo
# Visual Studio
.vs/
# VSCode
.vscode/
3.[コマンド プロンプト]などで次のGitコマンドを実行します。
cd ...\FindExplorer
git init
git add .
git commit -m "initial (extension + native host)"
git remote add origin https://github.com/GitHubアカウント/FindExplorer.git
git push -u origin master
作成したリポジトリに、ルート以下のフォルダーやファイルがアップロードされ、最初のコミットが完了します。
また、それぞれのフォルダーをVisual StudioやVSCodeで編集した履歴がルートフォルダーの[.git]で管理されるようになります。
まとめ
今回は短い記事ですが、GitHubで複数のプロジェクトを1つのGitHubリポジトリで管理する手順について書きました。
リモート側のフォルダー構成を変更して、1つのルートフォルダーにまとめてルートフォルダーに[.git]を配置することで、複数のプロジェクトをまとめて管理ができました。
複数のプロジェクトを1つのリポジトリで管理したい人の参考になれば幸いです。
スポンサーリンク
最後までご覧いただき、ありがとうございます。

