Skip to content

原文(日本語に翻訳)

古いgitバージョンで /security-review コマンドが unknown option merge-base エラーで失敗する問題を修正しました。

原文(英語)

Fixed /security-review command failing with unknown option merge-base on older git versions

概要

/security-review コマンドが git diff --merge-base オプションを使用していたため、このオプションをサポートしていない古いバージョンのgitでコマンドが失敗していました。今回の修正により、古いgitバージョンとの互換性が確保され、どの環境でも /security-review コマンドが正常に動作するようになりました。

基本的な使い方

bash
# セキュリティレビューを実行
/security-review

# 修正前(古いgitバージョン):
# error: unknown option merge-base
# fatal: usage: git diff ...

# 修正後:
# → 古いgitバージョンでも正常に動作する

実践例

古いgitバージョン環境でのセキュリティレビュー

bash
# gitのバージョン確認
git --version
# git version 2.25.0  ← --merge-base オプション非対応のバージョン

# 以前は失敗していたが修正後は正常に動作
/security-review

# → コードのセキュリティ問題を分析
# → 潜在的な脆弱性を報告

CIパイプラインでのセキュリティレビュー

yaml
# .github/workflows/security.yml
name: Security Review
on: [pull_request]

jobs:
  security:
    runs-on: ubuntu-20.04  # 古いgitが含まれる可能性のある環境
    steps:
      - uses: actions/checkout@v3
      - name: Run Security Review
        run: |
          # 修正後: 古いgitバージョンでも正常に動作
          claude --non-interactive "/security-review"

企業環境の固定gitバージョンでの使用

bash
# 企業のシステムポリシーで古いgitバージョンが固定されている場合
git --version
# git version 2.20.1

# 修正後: エラーなくセキュリティレビューが実行できる
/security-review

# レビュー結果の例:
# - 認証処理の潜在的な問題を検出
# - SQLインジェクションの可能性がある箇所
# - 環境変数でのシークレット管理の改善提案

注意点

  • --merge-base オプションは git 2.30 以降でサポートされた機能です
  • 修正後は古いgitでも動作する代替コマンドが使用されます
  • セキュリティレビューの品質や機能には影響しません
  • gitのバージョンを確認するには git --version を実行してください
  • 可能であればgitを最新バージョンにアップデートすることを推奨します(セキュリティの観点からも)

関連情報