第20章 Git フックおよびリモート Git リポジトリーの統合


Git フックは、git commitgit push などの Git イベントの前後に実行するバッシュスクリプトです。Business Central では、Git フックを使用して、イベントが発生するたびに、リポジトリーが指定のアクションをトリガーするように設定できます。Git フックの詳細は、Customizing Git Hooks を参照してください。

Business Central と、リモート Git リポジトリーを統合するには、post-commit の Git フックを使用します。こうすることで、Business Central とリモートリポジトリーの間のコンテンツの複製を自動化できます。たとえば、Business Central プロジェクトに加えた変更をリモートの Git リポジトリーに複製する、リアルタイムのバックアップストラテジーを実装できます。

注記

Business Central は、post-commit の Git フックのみをサポートします。

post-commit の Git フックは、コミットするたびに同期操作として実行します。Business Central は、コミット後の Bash が完了するまで待機して、リポジトリーでの他の書き込み操作が行われないようにします。

20.1. post-commit の Git フックの作成

post-commit の Git フックスクリプトファイルを作成して、そのファイルに含まれるコードを実行するか、Java プログラムなどの別のファイルからコードを実行できます。

手順

  1. post-commit Git フックファイルを作成します。

    $ touch post-commit
    Copy to Clipboard Toggle word wrap
  2. post-commit ファイルのパーミッションを 755 に設定します。

    $ chmod 755 post-commit
    Copy to Clipboard Toggle word wrap
  3. 以下のように、#!/bin/bash と必要なコードを post-commit ファイルに追加します。

    • すべての変更をリモートリポジトリーにプッシュするには、以下のコマンドを実行します。

      #!/bin/bash
      git push origin +master
      Copy to Clipboard Toggle word wrap
    • メッセージをログに記録するには、以下を実行します。

      #!/bin/bash
      echo 'Hello World'
      Copy to Clipboard Toggle word wrap
    • 別のファイルのコードを実行するには、以下を実行します。

      #!/bin/bash
      java -jar _EAP_HOME_/bin/.niogit/<SPACE>/<PROJECT_NAME>.git/hooks/git-push.jar
      Copy to Clipboard Toggle word wrap
      注記

      post-commit の Git フックを使用して Java コードを実行するには、以下の Java ライブラリーを使用する必要があります。

      • JGit: 内部の Business Central Git リポジトリーと対話するのに使用します。
      • GitHub API for Java: GitHub との通信に使用します。

      post-commit の Git フックと Java コードの例に関する情報は、Business Central post-commit Git Hooks Integration を参照してください。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat