すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud DevOps:プッシュルールの設定

最終更新日:May 19, 2025

Codeup は、コミットを標準化するためのカスタムルールによるコミットチェックをサポートしています。プッシュルールの作成方法について説明します。

プッシュルールの作成

  1. 管理者として Codeup にログインし、対象のリポジトリを選択します。

  2. 左下隅にある [設定] をクリックします。

  3. [プッシュルール] をクリックします。image

  4. [プッシュルールの設定] ページで、[プッシュルールの作成] をクリックし、ルールを設定します。

    image

  • コミットの説明: コミットメッセージの正規表現を指定します。

  • コミットメールアドレス: メールアドレスの正規表現を指定します。git config で指定されたメールアドレスが正規表現と一致するかどうかを確認します。

  • ファイル制限: コミットメッセージの正規表現を指定します。

  • 強制プッシュの無効化: 強制プッシュを無効にすることで、コードの上書きやコミット履歴の損失を防ぎます。

    説明

    強制プッシュが無効になっている場合、git push -f コマンドは、ローカルブランチがリモートリポジトリから分岐していない場合にのみコードをプッシュできます。

  • コードオーナーチェック: [チェックルール][制限レベル] を選択します。Codeup は、ログインしているユーザーの情報が git config の設定と一致するかどうかを確認します。

    git config --global user.name "Your name" // あなたの名前
    git config --global user.email "Your email address" // あなたのメールアドレス

    一致しない場合、Codeup は設定に応じてログインしているユーザーに警告するか、プッシュをブロックします。

作成者とコミッターについて

Git では、作成者とコミッターは異なる役割を表します。

役割

定義

設定方法

作成者

実際のコード作成者

git commit --author="Name <email>"

コミッター

git commit または git push を実行する人。

git config user.name/email

主な違い

  • 作成者は変更されない: git cherry-pick または git rebase を使用して履歴を書き換えても、作成者は元の貢献者のままです。

  • コミッターは動的に更新される: すべてのコミット操作で、コミッターは現在のユーザーの設定情報に置き換えられます。

一般的なユースケース

  • 直接コミット: 作成者とコミッターは同じです。

  • プロキシコミット: git commit --author を使用して作成者を指定します。コミッターはコマンドを実行する人 (例: コードレビュー担当者) になります。

  • 履歴の書き換え: git cherry-pick は元の作成者を保持しますが、コミッターは現在のユーザーになります。

ベストプラクティス

  • オープンソースプロジェクト: 誰かのコードを直接使用しない場合でも、--author を使用してそのアイデアを明示的にクレジットします。

  • 企業コラボレーション: 誤帰属を避けるために、コミッターのメール設定を標準化します。

組織レベルのルールを継承する

組織から継承されたプッシュルールは、編集または削除できません。ルールを表示することのみ可能です。変更するには、組織管理者に連絡してください。

チェックルール設定の例

次のスクリーンショットで指定されているチェックルールは、作成者をチェックし、チェックが失敗した場合にのみユーザーに警告することを意味します。image