AgentSkillsCN

gitignore-check

在提交前检查.gitignore中应被忽略的文件。“gitignore检查”、“提交前检查”、“确认机密文件”、“gitignore确认”、“需要添加的文件”、“需要忽略的文件”、“gitignore推荐”等指令均可触发。确保机密信息与不必要的文件不会被提交。

SKILL.md
--- frontmatter
name: gitignore-check
description: コミット前に .gitignore に追加すべきファイルをチェックする。「gitignore チェック」「コミット前チェック」「機密ファイル確認」「.gitignore 確認」「追加すべきファイル」「無視すべきファイル」「gitignore 推奨」などで起動。機密情報や不要なファイルがコミットされないように確認。
allowed-tools: [Read, Bash, Glob, Grep]
context: fork
agent: shiiman-git:security-check

Check Gitignore

コミット前に .gitignore に追加すべきファイルをチェックします。

ワークフロー

1. 現在のステージング状態を確認

bash
git status --porcelain

2. チェック対象ファイルの分析

以下のカテゴリでファイルをチェック:

機密ファイル(必須で .gitignore に追加)

パターン説明
.env*環境変数ファイル
*.pem, *.key秘密鍵
credentials.json認証情報
*.secretシークレットファイル
config/secrets.ymlRails シークレット
.aws/AWS 認証情報

一般的に無視すべきファイル

パターン説明
node_modules/npm パッケージ
vendor/依存パッケージ
.DS_StoremacOS システムファイル
Thumbs.dbWindows サムネイル
*.logログファイル
*.tmp, *.temp一時ファイル
dist/, build/ビルド成果物
coverage/テストカバレッジ

IDE 設定ファイル

パターン説明
.idea/JetBrains IDE
.vscode/Visual Studio Code(settings.json は除く)
*.swp, *.swoVim スワップファイル
.project, .classpathEclipse

3. 既存の .gitignore を確認

bash
cat .gitignore 2>/dev/null || echo "(.gitignore が存在しません)"

4. 結果報告

code
## .gitignore チェック結果

### ⚠️ 機密ファイル(コミット禁止)

| ファイル | 状態 | 推奨アクション |
|----------|------|----------------|
| .env | ステージ済 | git reset HEAD .env && .gitignore に追加 |
| credentials.json | 未追跡 | .gitignore に追加 |

### 💡 推奨: .gitignore に追加

| パターン | 理由 |
|----------|------|
| node_modules/ | npm パッケージ(リポジトリに含める必要なし) |
| .DS_Store | macOS システムファイル |

### ✅ 問題なし

機密ファイルは検出されませんでした。

5. 修正提案(機密ファイルがある場合)

bash
# ステージから削除
git reset HEAD {ファイル名}

# .gitignore に追加
echo "{パターン}" >> .gitignore

重要な注意事項

  • ✅ コミット前に必ず実行を推奨
  • ✅ 機密ファイルは絶対にコミットしない
  • ✅ 検出されたファイルは即座に .gitignore に追加
  • ❌ 一度コミットした機密情報は履歴に残る(git filter-branch が必要)