概要
GitHubにリポジトリを公開する前には、コードが動くかだけでなく、公開してよい内容かを確認します。
公開リポジトリに秘密情報をpushすると、ファイルを消しても履歴に残る場合があります。
公開前チェック
| 項目 | 確認すること |
|---|---|
| 秘密情報 | APIキー、パスワード、秘密鍵がない |
| 個人情報 | 住所、電話番号、個人メールがない |
.env | Git管理対象に入っていない |
| 不要ファイル | node_modules、ログ、ビルド成果物がない |
| README | 何のプロジェクトか説明している |
| 実行方法 | インストールと起動手順がある |
| ライセンス | 公開範囲に応じて検討している |
秘密情報チェック
差分や履歴に秘密情報がないか確認します。
git status
git diff --staged
git log --oneline
検索も有効です。
rg "API_KEY|SECRET|TOKEN|PASSWORD|PRIVATE KEY"
rg がない場合は、使える検索コマンドで確認します。
.gitignoreチェック
.env や依存フォルダを除外します。
.env
.env.local
node_modules/
dist/
*.log
.gitignoreは「これから追加されるファイル」を無視する設定です。すでにcommit済みの秘密情報は別対応が必要です。
READMEチェック
最低限、次を入れます。
| 見出し | 内容 |
|---|---|
| 概要 | 何を作ったか |
| 使用技術 | 言語、フレームワーク |
| セットアップ | インストール手順 |
| 起動方法 | 実行コマンド |
| 学習メモ | 工夫した点や詰まった点 |
公開設定チェック
GitHubでは、リポジトリのvisibilityを選べます。
| 設定 | 意味 |
|---|---|
| Public | 誰でも見られる |
| Private | 権限がある人だけ見られる |
学習中で公開に不安がある場合は、まずPrivateで管理し、公開前に内容を整理します。
まとめ
GitHub公開前には、秘密情報、個人情報、不要ファイル、README、実行方法、公開設定を確認します。特に .env やAPIキーは、公開後に消しても履歴に残る可能性があります。push前に git diff --staged と検索で確認する習慣を付けます。
参考リソース
- GitHub Docs: Setting repository visibility
- GitHub Docs: Ignoring files
- GitHub Docs: About secret scanning