スマートコミットで課題を処理する

プロジェクトのリポジトリを Bitbucket または GitHub で管理していたり、リポジトリの参照や検索に Fisheye を使用していたりする場合、 コミット メッセージでスマート コミットと呼ばれる特別なコマンドを使用することで、Jira Software の課題を処理できます。

以下のことが可能です。

  • 課題にコメントする
  • 課題の時間管理情報を記録する
  • Jira Software プロジェクトのワークフローに定義されているいずれかのステータスに課題を移行する

ソフトウェアのレビューに Crucible を使用する場合、ほかにもアクションを利用できます。Crucible ドキュメントの「Smart Commit を使用する」を参照してください。

スマート コミット コマンドは複数行にまたがることはできません(コマンドでキャリッジ リターンを使用することはできません)が、複数のコマンドを同じ行に追加することができます。以下のを参照してください。

スマート コミット コマンド

スマート コミット メッセージの基本的な構文は次のとおりです。

<ignored text> <ISSUE_KEY> <ignored text> #<COMMAND> <optional COMMAND_ARGUMENTS>

課題キーとコマンドの間にあるテキストは無視されます。

スマート コミット メッセージでは 3 つのコマンドを使用できます。

コメント

説明
コメントの追加

Jira Software

 
構文<ignored text> <ISSUE_KEY> <ignored text> #comment <comment_string>
JRA-34 #comment corrected indent issue
注意
  • コミット実施者のメール アドレスは、対象のプロジェクトでの課題へのコメント追加権限を持つ

    Jira Software

    ユーザーのものと一致している必要があります。

時間

説明 Records time tracking information against an issue.
構文<ignored text> <ISSUE_KEY> <ignored text> #time <value>w <value>d <value>h <value>m <comment_string>
JRA-34 #time 1w 2d 4h 30m Total work logged
注意

この例では、課題に対して 1 週間、2 日、4 時間と 30 分を記録し、課題の [作業ログ] タブに「Total work logged」というコメントを追加します。

  • wdh および m の値には、小数も使用できます。
  • コメントは、comment コマンドを使用しなくても自動的に追加されます。
  • コミット実施者のメール アドレスは、対象のプロジェクトでの課題へのコメント追加権限を持つ

    Jira Software

    ユーザー (課題で作業を記録する権限を持つユーザー)
  • システム管理者が

    Jira Software

    インスタンスでタイム トラッキングを有効化している必要があります。
説明 課題のタイム トラッキング情報を記録します。
構文<ignored text> <ISSUE_KEY> <ignored text> #time <value>w <value>d <value>h <value>m <comment_string>
JRA-34 #time 1w 2d 4h 30m Total work logged
注意

この例では、課題に対して 1 週間、2 日、4 時間と 30 分を記録し、課題の [作業ログ] タブに「Total work logged」というコメントを追加します。

  • wdh および m の値には、小数も使用できます。
  • コメントは、comment コマンドを使用しなくても自動的に追加されます。
  • コミット実施者のメール アドレスは、対象のプロジェクトでの課題へのコメント追加権限を持つ

    Jira Software

    ユーザー (課題で作業を記録する権限を持つユーザー)
  • システム管理者が

    Jira Software

    インスタンスでタイム トラッキングを有効化している必要があります。

ワークフローのトランジション

説明
特定のワークフロー ステータスに

Jira Software

の課題をトランジションします。
構文<ignored text> <ISSUE_KEY> <ignored text> #<transition_name> #comment <comment_string>
JRA-090 #close #comment 本日修正
注意

この例では、課題に対して課題のクローズ ワークフロー トランジションを実行し、コメント「Fixed this today」を課題に追加します。 

この構文にはいくつかの例外があります。

  • Jira 管理者がコメントを必須フィールドに設定している場合、コマンドに #comment を追加しないでください。
  • その他のいずれかのフィールドが必須に設定されている場合、トランジション コマンドは通知なしで失敗します。

Smart Commit と併用可能なカスタムコマンドを確認するには、

Jira Software

課題にアクセスし、利用可能なワークフロー トランジションを確認します。

  1. プロジェクト内の課題を開きます。
  2. ワークフローの表示 (課題のステータスの近く) をクリックします。

Smart Commit は、最初のスペースの前のトランジション名の部分のみを考慮します。したがって、finish work などのトランジション名の場合、#finish と指定すれば十分です。トランジション名に曖昧さが含まれる場合、スペースの代わりにハイフンを使用する必要があります。たとえば、#finish-work などです。

次のように、ワークフローに2つの有効なトランジションがある場合:

  • Start Progress
  • Start Review

アクション #start を含むスマート コミットは 2 つのトランジションのいずれかを意味することになるため、曖昧であると見なされます。これら 2 つのトランジションの 1 つを指定するには、#start-review または #start-progress のいずれかを使用して、使用したいトランジションを完全修飾します。

  • 課題を #resolve コマンドで解決する場合、スマート コミットで解決状況フィールドを設定することはできません。
  • コミット実施者のメール アドレスは、対象のプロジェクトでの課題へのコメント追加権限を持つ

    Jira Software

    ユーザー (課題をトランジションする適切なプロジェクト権限を持つユーザー)


高度な例

単一の課題に複数のコマンド

構文

<ISSUE_KEY> #<COMMAND_1> <optional COMMAND_1_ARGUMENTS> #<COMMAND_2> <optional COMMAND_2_ARGUMENTS> ... #<COMMAND_n> <optional COMMAND_n_ARGUMENTS>

コミット メッセージ

JRA-123 #time 2d 5h #comment Task completed ahead of schedule #resolve

結果

課題 JRA-123に対して、2 日と 5 時間作業を記録し、コメント「Task completed ahead of schedule」を追加して
課題を解決します。

単一の課題に対して複数行にわたる複数のコマンド

構文

<ISSUE_KEY> #<COMMAND_1> <optional COMMAND_1_ARGUMENTS> #<COMMAND_2> <optional COMMAND_2_ARGUMENTS> ... #<COMMAND_n> <optional COMMAND_n_ARGUMENTS>

コミット メッセージ

JRA-123 #comment Imagine that this is a really, and I 
mean really, long comment #time 2d 5h

結果

コメント "Imagine that this is a really, and I" は追加されますが、残りのコメントは削除されます。2 行目の time コマンドに課題キーがないため、作業時間の 2 日と 5 時間は課題に記録されません。つまり、コミット メッセージの各行がスマート コミット構文に準拠している必要があります。

この例では、以下のように設定すると、想定通りに動作します。

JRA-123 #comment Imagine that this is a really, and I mean really, long comment 
JRA-123 #time 2d 5h

複数の課題に対して単一コマンドを使用

構文

<ISSUE_KEY1> <ISSUE_KEY2> <ISSUE_KEY3> #<COMMAND> <optional COMMAND_ARGUMENTS> etc         

コミット メッセージ

JRA-123 JRA-234 JRA-345 #resolve

結果

課題 JRA-123、JRA-234 および JRA-345 を解決。

複数の課題キーはホワイトスペースまたはコンマで区切る必要があります。

複数の課題に対して複数のコマンドを使用

構文

<ISSUE_KEY1> <ISSUE_KEY2> ... <ISSUE_KEYn> #<COMMAND_1> <optional COMMAND_1_ARGUMENTS> #<COMMAND_2> <optional COMMAND_2_ARGUMENTS> ... #<COMMAND_n> <optional COMMAND_n_ARGUMENTS>

コミット メッセージ

JRA-123 JRA-234 JRA-345 #resolve #time 2d 5h #comment Task completed ahead of schedule

結果

課題 JRA-123、JRA-234 および JRA-345に対して、2 日と 5 時間作業を記録し、コメントを追加します。
3つの課題すべてにコメント「Task completed ahead of schedule」を追加し、3つの課題すべてを解決します。

複数の課題キーはホワイトスペースまたはコンマで区切る必要があります。

Smart Commit の活用

Jira Software のインスタンスで Smart Commit を使用できるようにするのは簡単です。

ツール接続の説明
Bitbucket Server

Create an application link between Jira Software and Bitbucket Server. See Linking Bitbucket Server to Jira.

Then, enable Smart Commits in Jira Software. See Enabling DVCS Smart Commits.

Fisheye

JIRA Software と FishEye 間のアプリケーション リンクを作成します。「別のアプリケーションにリンクするを参照してください

Then, enable Smart Commits in Jira Software. See Enabling DVCS Smart Commits.

Crucible

Jira Software と Crucible 間のアプリケーションリンクを作成します。別のアプリケーションにリンクする」を参照してください。

Then, enable Smart Commits in Jira Software. See Enabling DVCS Smart Commits.

Bitbucket Cloud

First, link your Jira Software and Bitbucket accounts. See Linking Bitbucket Cloud and GitHub accounts to Jira Software.

Then, enable Smart Commits in Jira Software. See Enabling DVCS Smart Commits.

GitHub

First, link your Jira Software and GitHub accounts. See Linking Bitbucket Cloud and GitHub accounts to Jira Software.

Then, enable Smart Commits in Jira Software. See Enabling DVCS Smart Commits.

ツール接続の説明
Bitbucket Cloud

First, link your Jira Software and Bitbucket accounts. See Connect Jira Cloud to Bitbucket.

次に、Jira Softwareで Smart Commits を有効にします。「Smart Commits の有効化」を参照してください。

GitHub

まず、Jira Software と GitHub アカウントをリンクします。「Jira Cloud を GitHub に接続する」を参照してください

次に、Jira Softwareで Smart Commits を有効にします。「Smart Commits の有効化」を参照してください。

Bitbucket Server

Jira Software と Bitbucket Server 間のアプリケーション リンクを作成します。Bitbucket Server を Jira にリンクする」を参照してください。

次に、Jira Softwareで Smart Commits を有効にします。「Smart Commits の有効化」を参照してください。

Fisheye

Jira Software と FishEye 間のアプリケーション リンクを作成します。「別のアプリケーションにリンクする」を参照してください。

次に、Jira Softwareで Smart Commits を有効にします。「Smart Commits の有効化」を参照してください。

Crucible

Jira Software と Crucible 間のアプリケーションリンクを作成します。別のアプリケーションにリンクする」を参照してください。

次に、Jira Softwareで Smart Commits を有効にします。「Smart Commits の有効化」を参照してください。

注意

  • Smart Commits は、既定の Jira Software 課題キー形式のみをサポートします。この形式では、2つ以上の大文字の後にハイフンと課題番号が続きます (例: JRA-123)。 

  • Git などの DVCS ではユーザーのメール アドレスがコミット データに含まれます。ユーザーはこのメール アドレスをローカル システムで設定します。Smart Commit では、このメール アドレスが Jira Software のユーザー ベース内のメール アドレスの 1 つと正確に一致する必要があります。メール アドレスが Jira Software 内の複数のユーザーと一致する場合、またはユーザーがリクエストした操作の権限を持たない場合、Smart Commit 操作は失敗します。ただし、コミット自体は成功し、課題に表示されます。Smart Commit が期待どおりに機能しない場合、メール アドレスの不一致が考えられます。Smart Commit が失敗すると、Jira Software は Jira Software ユーザーまたは DVCS ユーザー (Jira Software ユーザーが特定できない場合) にメール通知を送信します。稀に、Jira Software にいずれのメール アドレスも存在せず、Smart Commit が失敗しても通知されないことがあります。
最終更新日 2021 年 6 月 9 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.