プロジェクトの移行手順

移行の前提・準備

研修終了時に社用PCを返却することに伴い、私物PCでも同じようにプロジェクト(マニュアルサイト、最終課題)を使用できるようにするための移行手順書です。
(この手順では社内貸し出しPCを「社用PC」、個人所有の私物PCを「私物PC」と記載します。)

本コラムではWindows利用者を対象とした移行手順を記しています。
Mac利用者に向けては記事の後半で補足していますので、そちらを参照してください。

前提

  • 社用PCにて、GitHubへ最新の履歴までpush済みであること。
    (移行後に更新した場合もpullで最新状態にできるので、厳密には最新でなくても問題ない)
  • 私物PCのOSがWindowsであること。

事前準備

マニュアルサイトを参考にして、以下の作業を私物PCに実施

  • Eclipseの導入(JDK、Eclipse)
  • GitBashのダウンロード
  • Oracle Databaseのインストール~各スキーマ(スキーマはマニュアル用、最終課題用と必要なものを作成)
  • GitHubで自分のアカウントにログイン

プロジェクトの移行

私物PCに対して実施します。
プロジェクトのclone(=複製)について、CUIとGUIの2パターンを紹介しています。いずれかを選んで行ってください。

プロジェクトをcloneする<CUIの場合>

①Git Bashの準備

プロジェクトを配置したいworkspaceディレクトリをGit Bashで開く
(開き方は「Git」の単元を参照)

②GitHub上のリモートリポジトリより、clone用のURLをコピー

対象のプロジェクトで「▼Code」をクリック
→HTTPSまたはSSHを選択してURLをコピーする (※SSH設定をした場合はSSH、していない場合はHTTPSよりコピーする)

③cloneの実行

Git Bashにて、以下cloneのコマンドを実行

git clone 【②でコピーしたURL】
ls

lsコマンド(カレントディレクトリの中身を一覧表示)の結果から、workspace下に対象のプロジェクトがcloneできたことを確認

④プロジェクトをEclipseにインポート

Eclipseにて
「ファイル」>「インポート」>「フォルダーまたはアーカイブからプロジェクト」



・「インポート・ソース」に、「ディレクトリー」より対象のプロジェクトを選択する
・「プロジェクト・ネーチャーの検出および構成」にチェックを入れる
→「完了」

更新に数分の時間を要する場合があります。特にSpringプロジェクトの方が時間がかかります。
☆「進行状況」ビューにて確認することを推奨

なお、併せてGitリポジトリービューへの読み込みも完了した状態になっています。

⑤developブランチの作成 (※developブランチを作成している場合のみ)

☆研修マニュアル内では案内していませんが、ブランチを作成していた場合は以下を実施する

・Git Bashで対象のプロジェクトに移動する
・developブランチを以下コマンドで作成する

cd 【対象のプロジェクト】
git branch develop


・ブランチの作成を確認したい場合は以下のコマンド

git branch


・developブランチに移動
・developブランチに対してpullする

git checkout develop
git pull origin develop

▼ Git BashとGitHub(リモートとローカル)でデフォルトブランチ名が一致しない場合(masterとmainなど)

→現在のリモートブランチ名の確認
git branch –contains

→Git Bash(ローカル)のデフォルトブランチ名を直す
git branch -m 【変更前のブランチ名】【変更後のブランチ名】

プロジェクトをcloneする<GUIの場合>

下記の参考サイトを元に実施可能
※値は自環境に読み変えて実施すること
GitHub のリポジトリを eclipse に落としてくる(クローンする) – Qiita

DBの移行

SQL Developerによるsqlファイルのエクスポート・インポート(GUI)

ここではSQL Developerを使用してsqlファイルを用いた移行方法を紹介します。

既存のデータをすべてSQL文(テーブルの作成やデータの挿入など)に変換し、「.sql」ファイルに出力することができます。
このsqlファイルを移行先DBで読み込み、すべてのSQL文を実行すれば同じデータ環境を再現できる、といった流れです。

①エクスポート<社用PC

SQL Developerにて
「ツール」>「データベース・エクスポート」


「ソース/宛先」では、
・接続(スキーマ)を選択
・ファイルを選択
 …どこにsqlファイルをダウンロードするかを指定するので、参照からDownloadsフォルダを選択し、わかりやすいファイル名を付けましょう。下図では「backup_ims.sql」としています。

(↓参照からDownloadsフォルダを選択、ファイル名を入力した例。このまま保存をクリックすれば↑の状態になります)



「エクスポートするタイプ」は特に変更せず「次へ」


「オブジェクトの指定」では、テーブルやSEQUENCEといったオブジェクトを選択します。
「参照」をクリックし、
すべて移行することで良ければ「>>」をクリック(右側に移動する)



「データの指定」では
先ほどと同様、上向きの2重矢印のボタンをクリック



「エクスポートのサマリー」にて、「終了」をクリック
出力には数分程度 時間を要します。

以上でファイルのエクスポートは完了です。


エクスポートファイルの受け渡し<社用PC私物PC
エクスポートしたsqlファイルを私物PCに受け渡します。SlackやGoogle Driveなどを経由するといいでしょう。

②インポート<私物PC

SQL Developerにて
「ファイル」>「開く」>該当のsqlファイルを開きます


SQLワークシートとして開かれますので、SQL文をすべて実行します。

※macOSの場合

Eclipse、Git、JDK、(SQL Developer) についてはMac版があり、インストール可能
 ※他のDBMSを選択する場合、同じベンダーの出しているGUIツールが推奨

Oracle Database についてはMacに対応していないため、以下のような方針で各自対応してください。

 案①macOS上に仮想マシン (VirtualBox, VMWareなど) やDockerを導入し、その仮想環境上でLinux版のOracle Database XEを動かす
 …環境を構築するまでの段階が手間取りますが、データベースのデータ移行自体は大きな手間なく実行できます。
  (エクスポートしたSQLファイルをそのまま読み込み可能)

 案②MySQLやPostgreSQLの導入を検討する
 …導入は比較的しやすいものの、コードの修正が必要になる(Entityの自動採番、DB接続関係の設定ファイル)
  エクスポートしたSQLファイルに手を加える必要がある(SQL文は一部DBによる差異があるため)

タイトルとURLをコピーしました