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 プロジェクトをご利用ください。

On this page:

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 ファイル内の "Attachments" 列で、添付ファイルの 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 フィールド

インポート時の注意

プロジェクト

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

要約

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

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

コンポーネント

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

影響バージョン

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

修正バージョン

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

コメント本文

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

作成日

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

更新日

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

期日

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

課題タイプ

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

ラベル

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

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

Priority

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

ソリューション

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

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

ステータス

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

初期見積り

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

残余見積り

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

消費時間

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

ユーザー

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

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

その他のフィールド

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

Last modified on Mar 12, 2020

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

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