CSVからのデータのインポート

Jira にバンドルされている Jira Importers プラグインを使用すれば、カンマ区切り形式 (CSV) ファイルからデータをインポートできます。外部の課題トラッカーから Jira に移行する際に便利です。

CSV ファイルは表形式のデータを表すテキスト ファイルで、表形式のデータを処理するほとんどのアプリケーション (Microsoft Excel、データベース等) でサポートされています。

CSV インポート機能を使用することで、構造化された表形式 (CSV を推奨) としてデータをエクスポート可能な外部の (課題トラッキング) システムからデータをインポートできます。

(info) アトラシアンのメイン ウェブサイトでは、ユーザーがこの外部の課題トラッキング システムから Jira に移行する主な理由のいくつかを紹介しています。

CSV によるインポートのプロセスは、次のステップからなっています。

  1. CSV ファイルの準備下記 )。
  2. CSV ファイル インポート ウィザードの実行下記 )。
    • インポートのプロセスで個々のフィールドやフィールド値のマッピングを選択できます。
    • CSV インポート ウィザードの最後に、CSV 設定ファイルを作成するオプションが表示されます。これには、CSV インポート ウィザードを通じて行った設定が含まれます。これは、本番システムでインポートを実行する前にテスト用 Jira サーバーで CSV ファイルのインポートをテストする必要がある場合に便利です。

(warning) 注意:

  • 他の課題トラッキング システムから Jira にデータをインポートする場合、いくつかの方法を利用できます。課題トラッキング システムによっては、このような方法の 1 つを使用する方が、システムから CSV ファイルにデータをエクスポートしてそれを Jira にインポートするよりも適切な場合があります。使用中の課題トラッキング システムが「他の課題トラッカーからの移行」ページの一覧に含まれている場合、そのページに紹介されている、課題トラッカーから Jira にデータをインポートするための方法をお試しください。
  • この機能に関するバグ レポートや改善案がある場合、Jira Importers plugin プロジェクトをご利用ください。

このページの内容:

CSV ファイルを準備する

Jira Importers プラグインは、CSV ファイルが Microsoft Excel 形式の CSV ファイルに基づいているものと想定します。フィールドはコンマで区切られ、文字どおりに扱われる必要のあるコンテンツ (コンマや改行/「キャリッジ リターン」そのもの) は、引用符で囲まれます。

(info) Microsoft Excel と OpenOffice の場合、セル内の値を引用符で囲む必要はありません。これらのアプリケーションでは、自動でこの処理が行われます。

CSV ファイルの要件

「適正に構造化されている」ことに加えて、CSV ファイルには次の要件があります。

各 CSV ファイルには、要約列を持つ見出し行が存在しなければならない

CSV ファイル インポート ウィザード (後述) は、CSV ファイルの見出し行を使用して、CSV ファイルの 2 行目以降のデータを Jira のフィールドにマッピングする方法を決定します。

見出し行には、句読点が含まれないようにします (各列を区切るコンマは除く)。そうしないと、インポーターは正しく機能しない可能性があります。

見出し行には「要約」データの列が含まれていなければなりません。

コンマ (列/フィールドのセパレーターとして) は省略できない

たとえば、以下は有効です。

Summary, Assignee, Reporter, Issue Type, Description, Priority
"Test issue", admin, admin, 1, ,

しかし、以下は無効です。

Summary, Assignee, Reporter, Issue Type, Description, Priority
"Test issue", admin, admin, 1

CSV ファイルで Jira データ構造をカプセル化する

複数行にまたがるデータをキャプチャーする

複数行にまたがるデータを取り込むには、CSV ファイルで二重引用符 (") を使用します。たとえば、インポート時に、Jira は以下を単一レコードの有効な CSV ファイルとして扱います。

Summary, Description, Status
"Login fails", "This is on
a new line", Open

特殊文字を文字どおりに扱う

テキスト部分を二重引用符 (") で囲むと、その範囲の特殊文字を文字どおりに扱うように指定できます。このデータが Jira にインポートされると、これらの特殊文字は Jira のフィールド データの一部として保管されます。特殊文字の例としては、キャリッジ リターン/入力文字 (上記に例示)、コンマなどがあります。

二重引用符を文字どおり扱うようにするには、もう1つ二重引用符を追加して「エスケープ」します。したがって、CSV 値は次のようになります。

  • "Clicking the ""Add"" button results in a page not found error"
    これをインポートすると、次のように Jira に保存されます。
  • Clicking the "Add" button results in a page not found error

複数の値を単一の Jira フィールドに集約する

複数の値を許可する Jira フィールド (修正対象バージョン影響バージョンコンポーネントラベルなど) には、複数の値をインポートできます。これを行うには、マッピングされる Jira フィールドに集約するそれぞれの値について、CSV ファイルで同じ列名を指定する必要があります。指定される列名の数が、マッピングされるフィールドに集約される値の最大数と一致する必要があります。例:

IssueType, Summary, FixVersion, FixVersion, FixVersion, Component, Component
bug, "First issue", v1, , , Component1,
bug, "Second issue", v2, , , Component1, Component2
bug, "Third issue", v1, v2, v3, Component1,

上記の例では、2 番目の課題のコンポーネントフィールドと 3 番目の課題の修正対象バージョンフィールドは、インポート時に、該当する Jira フィールドに複数の値を生成します。

(warning) 複数の値をサポートしている Jira フィールドは限定されていることにご注意ください。CSV インポーターは、単一の値のみをサポートしている Jira フィールドへの複数データのインポートを許可しません。

添付ファイルをインポートする

CSV ファイルから作成された課題には、ファイルを添付できます。これを行うには、CSV ファイル内の「添付ファイル」列で、添付ファイルの URL を指定します。

Assignee, Summary, Description, Attachment, Comment
Admin, "Issue demonstrating the CSV attachment import", "Please check the attached image below.", "https://jira-server:8080/secure/attachment/image-name.png", "01/01/2012 10:10;Admin; This comment works"
Admin, "CSV attachment import with timestamp,author and filename", "Please check the attached image below.", "01/01/2012 13:10;Admin;image.png;file://image-name.png", "01/01/2012 10:10;Admin; This comment works"

(info) 添付ファイルの URL は HTTP と HTTPS プロトコルをサポートしており、Jira サーバーが必ずアクセスできる場所である必要があります。FILE プロトコルを使用して、Jira ホーム ディレクトリimport/attachments サブディレクトリ内のファイルにアクセスすることも可能です。

サブタスクの作成

CSV ファイルで構造をカプセル化することにより、CSV ファイルのインポートを通して課題のサブタスクを作成できます。この操作を行うには:

  • CSV ファイルには追加の列が 2 つ必要です。これらの列の見出しには、課題 ID と 親 ID に類似した名前を付けます。
  • 通常の各課題(非サブタスク課題)の課題 ID 列に固有の(通し)番号が付けられていることを確認します。通常の課題の親 ID  フィールドに値を設定しないでください
  • CSV ファイル内で通常の課題のサブタスクを作成するには、通常の課題に設定された固有の 課題 ID  番号を、サブタスクの親 ID  列で参照します。サブタスクの課題 ID フィールドに値を設定しないでください。

例:

IssueType, Summary, FixVersion, FixVersion, FixVersion, Component, Component, Issue ID, Parent ID, Reporter
Bug, "First issue", v1, , , Component1, , 1, , jbloggs
Bug, "Second issue", v2, , , Component1, Component2, 2, , fferdinando
Bug, "Third issue", v1, v2, v3, Component1, , 3, , fferdinando
Sub-task, "Fourth issue", v1, v2, , Component2, , , 2, jbloggs

上記の例では、4 番目の課題はインポート時に 2 番目の課題のサブタスクになります。この場合、ユーザーは CSV ファイル インポート ウィザードの実行時に、CSV ファイルの "Issue ID" および "Parent ID" フィールドを、それぞれ Jira フィールドの "Issue Id" および "Parent Id" に一致させています。

複数の Jira プロジェクトに課題をインポートする

CSV ファイルのインポートを通じて、1 つの CSV ファイルから複数の Jira プロジェクトにインポートできます。この場合、次の点に留意します。

  • CSV ファイルには他に2つの列が必要です。これらの列の見出しには、プロジェクト名プロジェクト キーに類似した名前を付けます。
  • CSV ファイル内のすべての課題の列で、インポート先の Jira プロジェクト用に適切な名前とキーが含まれていることを確認します。
    (info) プロジェクト名およびキーのデータは、CSV ファイルから特定の Jira プロジェクトに課題をインポートするために必要な最小限の Jira プロジェクト データです。
IssueType, Summary, Project Name, Project Key
bug, "First issue", Sample, SAMP
bug, "Second issue", Sample, SAMP
task, "Third issue", Example, EXAM

上記の例では、1 番目と 2 番目の課題は "Sample" プロジェクト (プロジェクト キーは "SAMP") にインポートされ、3 番目の課題は "Example" プロジェクト (プロジェクト キーは "EXAM") にインポートされます。この場合、ユーザーは CSV ファイル インポート ウィザードの実行時に、CSV ファイルの "Project Name" および "Project Key" フィールドを、それぞれ Jira フィールドの "Project name" および "Project key" に一致させています。

未解決の課題の取り扱い方

解決状況、優先度、課題タイプへのフィールド マッピングについては、Jira で利用可能な値が入った選択リストが提供されます。また、緑色のプラス記号をクリックすると、Jira に存在しない値をすぐに作成できます。

ステータスへのフィールド マッピングについては、Jira で利用可能な値が入った選択リストが提供されますが、新しいステータス値を作成するプラス記号は提供されません。

これらの 4 つのフィールドについては、Jira で使用可能な値のほかに、次の 2 つの特別なオプションが選択リストに用意されます。

  • "空白としてインポート" - これによって、そのフィールドの Jira の値は空白になります。未解決の課題をインポートする場合、解決状況フィールドをマッピングするフィールドを作成し、"Unresolved" の値を "空白としてインポート" に設定する必要があります。
  • "マッピングなし" - これは CSV ファイルの値をそのままインポートします。フィールド値に "マッピングなし" を使用する場合、値がその Jira フィールドで有効でないとインポートが失敗することにご注意ください。ステータスと課題タイプへのフィールド マッピングについては、 "空白としてインポート" オプションを選択した場合、既定値が使用されます。

作業ログ エントリをインポートする

CSV ファイルには作業ログ エントリを含めることができます。例:

Summary,Worklog
Only time spent (one hour),3600
With a date and an author,2012-02-10 12:30:10;wseliga;120
With an additional comment,Testing took me 3 days;2012-02-10 12:30:10;wseliga;259200

消費時間を追跡するには、秒単位を使用する必要があります。

複数選択カスタムフィールドにインポートする

CSV ファイルには、1つの複数選択カスタムフィールドの複数のエントリを含めることができます。例:

Summary,Multi Select,Multi Select,Multi Select
Sample issue,Value 1,Value 2,Value 3

これは、複数の値を持つ複数選択カスタムフィールドにデータを追加します。

カスケード選択カスタムフィールドにインポートする

次の構文を使用すると、カスケード選択カスタムフィールドに値をインポートできます。

Summary, My Cascading Custom Field
Example Summary, Parent Value -> Child Value

「->」セパレーターを使用すると、 階層をインポートできます。

注意: 現在 Jira では CSV を介したマルチレベルのカスケード選択フィールドのインポートをサポートしていません (JRA-34202 - 課題詳細を取得中 ステータス)。

既存の課題の更新

Jira Importers プラグインのバージョン 4.3 から、既存の課題を更新できるようになりました。インポート ウィザードの実行時に課題キーにマッピングする列を CSV ファイルに含める必要があります。指定したキーに対応する課題が存在する場合、その課題は更新されます。例:

issue key,summary,votes,labels,labels
TT-1,Original summary,1,label1,label2
TT-1,,7,label-1,label-2
TT-1,Changed summary,,,
TT-2,Original summary 2,1,label-1,label-2
TT-2,,<<!clear!>>,<<!clear!>>,

最初の行では課題を作成し、2 行目では投票を 7 に設定して、2 つのラベルを追加します。次の行ではサマリが変更されます。課題 TT- 2 は 2 つのラベルとともに作成され、2 行目は特殊なマーカー、 <<!clear!>> によって、これらのラベルを削除します。

(warning) CSV をインポートして、既存の課題を更新する場合、列の値が CSV で指定されていないと、列はリセットされ、既定値に設定されます。

CSV ファイルインポート ウィザードを実行する

開始する前に、Jira データをバックアップします。

  1. Jira 管理者グローバル権限を持つユーザーとしてログインします。
  2. 管理 > システム > インポートとエクスポート > 外部システム インポートを選択します。
  3. CSV を選択して CSV ファイルのインポートページを開きます。
  4. CSV ファイル インポート ページ で、CSV ソース ファイルを選択します。ファイルのエンコード方法および CSV 区切り形式を変更する場合は、詳細な見出しをクリックし、(上のスクリーンショットに示すように) このオプションを表示します。
     (info) 注:
    • ファイルは、ここで指定したファイルのエンコード方法(既定では UTF- 8)を使用してインポートされます。
    • CSV ファイルでコンマ以外の別の区切り文字を使用する場合、CSV 区切り記号フィールドでその文字を指定します。
  5. 設定ファイルがない場合や、新しい設定ファイルを作成する場合は、[既存の設定ファイルの使用] チェックボックスを選択解除したままにします。設定ファイルは、CSV ファイルの見出し行の列名と Jira インストールのフィールド間のマッピングを指定します。
    (info)  注意:
    • このオプションを選択すると、既存の設定ファイルを指定するかどうか尋ねられます。
    • このオプションを選択しない場合、CSV ファイル インポート ウィザードの最後に、以降の CSV インポート (CSV ファイル インポート ウィザードの本ステップ) で使用できる設定ファイルが作成されます。
  6. 次へ ボタンを クリックして、 CSV ファイル インポート ウィザードのプロジェクト マッピングの設定ステップに進みます。
  7. [プロジェクト マッピングの設定] ページで、すべての課題を 1 つの Jira プロジェクト (新規または既存) にインポートするか、最小限の Jira プロジェクト データ (Jira プロジェクト名とキー) を含む CSV ファイルを複数の Jira プロジェクトにインポートするかを選択できます。次のフィールド / オプションを入力します。

    Jira プロジェクトへのインポート

    以下のいずれかを選択します。

    • プロジェクトを選択し、次のいずれかの操作を行います。
      • Jira に存在するプロジェクトの名前 (またはキー) を入力するか、ドロップダウン メニューを使用して既存の Jira プロジェクトを選択します。
      • ドロップダウンメニューから 新規作成 を選択し、表示される 新規プロジェクトの追加 ダイアログボックスで、次の項目を入力します。
        1. 新規プロジェクトの名前
        2. 新規プロジェクトのキー
          (info) これは Jira プロジェクトのすべての課題 ID の接頭辞として使用されます。
        3. プロジェクト リーダー
    • CSVで定義済み。CSV ファイル内のすべての課題に Jira プロジェクト名プロジェクト キー用のデータが含まれていることを確認します。
      (tick) CSV ファイルから複数の Jira プロジェクトに課題をインポートする場合、このオプションが便利です。詳細については、「複数の Jira プロジェクトへの課題のインポート」を参照してください。
    新規ユーザー用のメール識別子 CSV ファイルで指定されている、インポート中に Jira に追加される新規ユーザー用のメール アドレス ドメインを入力します。
    インポートファイルの日付形式 CSV ファイルで使用する日付形式を指定します。Java SimpleDateFormat に準拠した構文を使用します。
  8. 次へ ボタンをクリックして、 CSV ファイル インポート ウィザードの フィールド マッピングの設定ステップに進みます。

  9. [フィールド マッピング設定] ページで、左側の [インポート] 列の下にあるチェックボックスを選択し、選択した Jira プロジェクトにインポートする各 CSV フィールド (CSV ファイルのヘッダー行によって決定) を指定します。
    (info) 注意:

    • 1 つ以上のフィールドに Jira のサマリー フィールド用のデータが含まれている必要があります。

    • ヘッダー行で指定された同じ名前のフィールドが、CSV ファイルに複数含まれている場合、これらのフィールドは CSV ファイル インポート ウィザードによって単一のフィールドに集約にされます。ウィザードのこのステップでは、集約されたフィールドは記号 (warning)によってマークされます。

  10. CSV ファイルで定義されたフィールド (すなわち、前のステップで選択した各 CSVフィールド) に一致させたい Jira フィールドを Jira フィールド列から選択します。CSV フィールドと Jira フィールドのマッチングに関する詳細は、下記の「CSV データを Jira フィールドにインポートするためのヒント」を参照してください。
    (info)  注意:

    • Jira フィールドのいずれかとしてサマリー フィールドを指定する必要があります。これを行うまで、[次へ] ボタンを利用することはできません。

    • CSV ファイル インポート ウィザードで集約した CSV フィールドに対しては、複数の値をサポートする Jira フィールドのみ選択できます。

    • サブタスクをインポートする場合、Jira の Issue ID  フィールドと Parent ID フィールドを CSV ファイルの対応するフィールドに一致させる必要があります。
    • 複数のプロジェクトに課題をインポートする場合、上記のプロジェクトのマッピング設定ステップで CSV で定義済みを選択していることを確認し、Jira の Project Name フィールドと Project Key フィールドを CSV ファイルの対応するフィールドに一致させる必要があります。
  11. CSV ファイルのフィールドのデータの値を Jira にインポートされる前に変更する場合、該当のフィールドの横にある [フィールドの値のマッピング] チェックボックスを選択します。
  12. 次へボタンをクリックして、CSV ファイル インポート ウィザードの値マッピング設定 ステップに進みます。
  13. [値マッピングの設定] ページで、CSV ファイル インポート ウィザードで検出された各 CSV ファイル フィールド値に対応する Jira フィールド値を指定します。
    (info) 注意:
    • CSV ファイルインポート ウィザードの前のステップでフィールド値のマッピング チェックボックスにチェックをつけたフィールドは、このページに表示されます。
    • 値を現状のままインポートしたい場合は、フィールドを空欄のままにしておくか、フィールド内のコンテンツを消去します。

    • 該当のフィールドの横の新しい ... の追加 リンク (例: 上のスクリーンショットに示した新しい課題タイプ "サブタスク"の追加) をクリックして、優先度解決状況課題タイプの新しい値 (CSV ファイルのデータに基づいた値) を Jira で作成できます。

    • ユーザー名ベースの CSV フィールド (報告者または担当者など) のインポートで、CSV ファイル インポート ウィザードの前の手順でこのフィールドの [フィールド値のマッピング] チェックボックスを選択していない場合、インポーターは、CSV ファイルのインポートされるユーザー名を自動的に (小文字の) Jira ユーザー名にマッピングします。
      (info) Jira でユーザー名が定義済みでない場合、[フィールド値のマッピング] チェックボックスを選択しているかどうかにかかわらず、Jira は CSV ファイルのデータに基づいてユーザー名を自動的に作成します。 

  14. CSV データを Jira にインポートする準備ができたら、[インポート開始] ボタンをクリックします。インポーターはインポートの進行に合わせて更新状況を示し、インポートが完了すると、正常完了したことを示すメッセージを表示します。
    (info) 注意:
    • インポートで問題が生じた場合(または関心がある場合)、詳細ログのダウンロードリンクをクリックして、CSV ファイルのインポート処理に関する詳細情報を表示します。
    • この手順を通じて使用した設定と同じ(または類似の)設定で、別の CSV ファイルをインポートする必要がある場合は、設定を保存 リンクをクリックして、CSV 設定ファイルをダウンロードします。この設定ファイルは、CSV ファイルインポート ウィザードの最初のステップで使用できます。

これで、CSV データを Jira に正常にインポートできました。ご不明な点や、問題が生じた場合は、アトラシアン サポートにご連絡ください。

CSV データを Jira フィールドにインポートするためのヒント

データを CSV ファイルから特定の Jira フィールドにインポートする場合に役立つヒントを以下に示します。

Jira フィールド

インポート時の注意

Project

CSV データはプロジェクト単位でインポートされます。対象として既存の Jira プロジェクトを指定できますが、指定しない場合、インポート時にインポーターが自動的に新規プロジェクトを作成します。

Summary

これは唯一の必須フィールドです。

Issue Key インポートされた課題の課題キーを設定できます。対象のキーの課題がすでに存在する場合、その課題は更新されます。

コンポーネント

単独の列に各コンポーネントを入力することで、複数のコンポーネントを持つ課題をインポートできます。

影響バージョン

単独の列に各バージョンを入力することで、複数の「影響バージョン」を持つ課題をインポートできます。

修正バージョン

単一の列に各バージョンを入力することで、複数の「修正バージョン」を持つ課題をインポートできます。

Comment Body

単独の列に各コメントを入力することで、複数のコメントを持つ課題をインポートできます。

Date Created

CSV インポート ウィザードの 2 番目の手順で指定した日付形式を使用してください。

Date Modified

CSV インポート ウィザードの 2 番目の手順で指定した日付形式を使用してください。

Due Date

CSV インポート ウィザードの 2 番目の手順で指定した日付形式を使用してください。

Issue Type

CSV ファイルで指定されていない場合、インポートされた課題には、Jira システムの課題タイプ フィールド値の定義で指定された既定 (1 番目) の課題タイプが設定されます。インポート処理中に新しい Jira 値を作成することもできます。

Labels

以下の方法で複数のラベルが付いた課題をインポートできます。

  • 各ラベルを別の列に入力する
  • すべてのラベルを 1 列内に配置し、スペースで区切る

Priority

CSV ファイルで指定されていない場合、インポートされた課題には、Jira システムの優先度フィールド値の定義で指定された既定 (1 番目) の優先度が設定されます。インポート処理中に新しい Jira 値を作成することもできます。

Resolution

CSV ファイルで指定されていない場合、インポートされた課題には、Jira システムの解決状況フィールド値の定義で指定された既定 (1 番目) の解決状況が設定されます。インポート処理中に新しい Jira 値を作成することもできます。

役立つヒントとして、未解決の課題を取り扱う方法も参照してください。

Status

Jira の既存のワークフロー ステータスにのみマッピングできます。CSV ファイルでステータスが指定されていない場合、インポートされた課題には、Jira システムで指定されている既定 (1 番目) のステータスが設定されます。

Original Estimate

このフィールドの値は、秒数で指定する必要があります。

Remaining Estimate

このフィールドの値は、秒数で指定する必要があります。

Time Spent

このフィールドの値は、秒数で指定する必要があります。

Users

担当者または報告者フィールドの値として、インポーターに Jira ユーザーを自動で作成させることも可能です。

  • ユーザーは、Jira のアクティブなアカウントとして作成されます。ユーザーは Jira への初回のログイン時にパスワードをメールで通知してもらう必要があります。
  • 実名でないユーザーは、メールアドレス (ログイン名) の "@" 文字の前の部分を Jira でのフルネームとして取得します。
  • 外部のユーザー管理機能を使用している場合、インポートのプロセスで Jira ユーザーを作成することはできません。代わりに、作成が必要な新規ユーザーの一覧がインポーターによって提供されます。インポートを開始する前に外部のユーザー リポジトリでユーザーを作成する必要があります。
  • ユーザー数制限付きライセンス(例: パーソナルライセンス)で、必要なユーザー数が制限数を超える場合、インポートは停止されます。作成できないユーザーのリストを示すページが表示されます。
  • 担当者および報告者がマッピングされない場合、ユーザー名は作成されません。
Watchers ウォッチャーに指定されたユーザーが CSV ファイルに含まれているが、Jira には存在しない場合、このユーザーはインポートされません。特定の課題のウォッチャーとしてインポートする前に、ユーザーを Jira で利用可能にしておく必要があります。

その他のフィールド

他のフィールドをインポートする場合は、特定の Jira カスタム フィールドへのマッピングを行うことができます。Jira にカスタム フィールドが存在していない場合、インポーターは自動的にカスタム フィールドを作成します。カスタム フィールドが日付フィールドの場合、CSV インポーター ウィザードの 2 番目の手順で指定した日付形式を使用してください。

最終更新日: 2019 年 9 月 18 日

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

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