複数のワークスペースを使っているときに稀に「ワークスペースAにあるチャンネルを、ワークスペースBに移動したい」という希望が出ると思います。
普通のチャンネルであれば、簡単に「チャンネルを移動」できるんですが、generalチャンネルは移動できないんですね…。今回はgeneralチャンネルも含めて全部のチャンネルを移動してほしい、という依頼があったので、ちょっとやり方をまとめてみました(共有チャンネルは別ワークスペースで見れるのでもちおん対象外です)
最初は不安があるかもしれませんが、チャンネルのメンバーの移行だったりとか、同名チャンネルの処理仕方などはインポート時に細かく設定できるので、まずはエクスポートしましょう。
まずはエクスポート

Slackの管理画面に移動し、メニューから「設定と権限」を選択します。エクスポートなのにまずこの項目を選ぶところから難易度が高いw

「設定と権限」画面に移動すると、画面上部タイトルの右側に「データのインポート/エクスポート」というボタンがあるのでこれをクリック

そうすると「データのインポート」画面に遷移するので、画面内にある「エクスポート」タブをクリック

「エクスポート」タブをクリックするとこんな画面になります。まず「日付範囲をエクスポートする」というプルダウンから、エクスポートしたい範囲を指定しましょう。

範囲を設定してエクスポートボタンをクリックするとこんな画面になります。ここまで来たらいったんブラウザを閉じてもOKです。エクスポートが完了するとSlackに登録しているメールアドレス宛と、Slack上でもSlackBotがその旨をしらせてくれます。

SlackBotがこんな感じで教えてくれました。「エクスポートページ」のリンクをクリックすれば、管理者画面のエクスポートページへ遷移させてくれます。

エクスポートページに移動すると、上記のような記載があるので「ダウンロードを開始する」というリンクをクリックすると、エクスポートされたデータがダウンロードされます。データはZIPファイル形式でダウンロードされます。
これでいったん、データのエクスポートは完了です。
データをインポートする
エクスポートが終わったらインポートしましょう。

「データのインポート」画面で、インポートタブの中に表示されている「Slack」という部分の「インポート」ボタンをクリックします。

そうするとこんな画面になるので「ファイルを選択」ボタンから先ほどダウンロードしたZIPファイルを選択し「インポートを開始する」ボタンをクリックします。

そうするとインポートが始まります。エクスポートのときと同じようにブラウザはいったん閉じて大丈夫です。また通知してくれます。
ただインポートのときはSlackbot通知はなくてメールのみ…。なんでだろうか…。

インポートが終わるとこんな内容のメールが届きます。迷わず「インポートを続行する」ボタンをクリックしましょう。インポートの設定画面へ遷移します。

インポートの設定は大きく2つです、ユーザーとチャンネルの処理。
ここではまずユーザーの設定をします。移行先のワークスペースに移行元のワークスペースのユーザーがいれば全部自動で同一のユーザーとみなしてくれます(マッピングしてくれます)が、そうではないケースもありますよね。その場合どういう処理をするのか、というのをここで選択します。
- 可能な場合にはユーザーをマッピングし、残りをマニュアルで設定する
- 自動マッピングするけど、マッピングできないユーザーは一つ一つどうするか設定してね、ということです。
- ユーザーを作成して招待する
- マッピングできない場合は、そのユーザーにメール飛ばして招待するよ、という意味です。
- 誰も招待せずに解除されたユーザーを作成する
- これはちょっと意味がわからない…
- ユーザーを作成せず、メッセージはボットメッセージとして残す
- これはメッセージはインポートするけど、そのメッセージは誰が発言したものなのかがわからなくなりますよってことです。マッピングできなかったユーザーの発言は全部Slackbotの発言になっちゃいます。
- ユーザーをスキップし、そのメッセージをインポートしない
- これはマッピングできなかったユーザーも、そのユーザーの発言も全部インポートしないよってことです。
次はチャンネルのマッピングの設定です。

こんな風になっていると思います。同じ名前のチャンネルがあると基本統合されてしまうので注意しましょう。generalとrandomは基本どのワークスペースにも存在していますが、これは統合されちゃうと全然違う会話が1つのgeneralチャンネルとかに含まれてしまうことになります。

上記のように「新しいパブリックチャンネルを作成する」という選択がされていれば、同じ名前でも統合されません。インポートされる側のチャンネルに通し番号(例えばgeneralだったらgeneral 2)が自動で振られて新ワークスペースにマージされます。
これで「変更を保存する」ってのをクリックすると

こういう確認画面に行きますので確認してから、画面下部にある

「はい、このインポートを続行します」をクリックしましょう。
エクスポートよりもインポートのほうが時間がかかる傾向があるので、別の作業でもしてましょう。インポート完了すればまたメールで教えてくれます。

これでインポートも完了です。
最後に移行されたチャンネルを確認して、ちゃんと過去ログやユーザーが移行できるかどうか確認してみましょう。
ごくまれに一部のメッセージが移行できていなかったみたいなことが起きるみたいです。その場合はエクスポートとインポートによるチャンネル移行ではなく、普通のチャンネル移行をしてみるとうまくいくことが多いみたいです。
注意事項
インポートとエクスポートで移行すると、基本的なログは移行されるものの
- 移行前のワークスペースにアップロードしたファイル
- チャンネルに設定したリマインダー
は移行されないのでご注意ください。