2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【MC1.12Modding】環境構築編 - バージョン管理(Gitローカルリポジトリ編)

Last updated at Posted at 2024-08-20

環境構築編リンク

バージョン管理とは

バージョン管理とは、要は「便利なセーブデータ管理ツール」です。

駄文

飛ばす

 ボス戦の前や重要イベントの前で分けてセーブしておきたいという気持ちは誰にでもあります。プログラミングではいつ重大イベント(バグる・動かなくなる)が発生するかは分からないので、できればいつでもたくさんセーブデータを作成したいです。
 ですが、データを分けて保存し、ちゃんと管理するというのは結構面倒なため、

  • セーブデータ.xlsx
  • セーブデータ - コピー.xlsx
  • セーブデータ - コピー (1).xlsx
  • セーブデータ - コピー (2).xlsx
  • セーブデータ - コピー (1) - コピー.xlsx
  • セーブデータ - コピー(最新版).xlsx
  • セーブデータ - コピー(改定版2).xlsx
  • セーブデータ - コピー(最新版) - コピー.xlsx

こうなってしまっては目も当てられません。また、プログラマになら通じる例えになりますが、古いコードをいつまでもコメントアウトして残し続けるせいでソースコードが見づらかったりコメントと区別がつきづらかったり…
 これをツールの力で解決するのが「バージョン管理」です。どれが最新のデータか分かるのはもちろん、時系列や各データの差分を簡単に取得できる機能などがあります。さらに、各セーブデータに対して、「何が変わったのか」や「今ここが○○の状態」のような短いコメントを残せます。
 そんなかなり強い便利ツールなのですが、いかんせん使うのに心理的・技術的なハードルが高く、使えずに不便な状態で生活しているプログラマが多数生息しているのが現状です。ビックリするほど快適で、二度と手放せなくなるほどの力を持っているのでぜひ本記事で慣れてみましょう。

要するに、ファイルの更新履歴をちゃんと管理しようということです。

本記事の内容

一言で表すなら、「Gitのローカルリポジトリを作ってコミットする」です。
実を言うと、本記事の内容はModdingに必須ではありません。
ですがシンプルに超便利なので少しだけでも使えるようになることをお勧めします。

今回Gitというバージョン管理ツールを使いますが、そのせいでたくさんのGit用語が出てきます。
詳細な解説や用語説明は他に譲りますが、超最低限の用語解説を以下に置いておきます。

  • 「コミット」 = セーブデータ ← 重要
  • 「コミットする」 = セーブする ← 重要
  • 「コミットメッセージ」 = セーブデータに付けメモ書き ← ちゃんと書こう
  • 「ロールバック(する)」 = セーブデータの時点からやり直す ← できないと不便
  • 「リポジトリ」 ← 正直覚えなくていい(全セーブデータの保管場所)

目次

実は1.と2.でGitの環境構築自体は終了ですが、それ以降で実際に触ってみて便利さを体感してみましょう。

1. Gitリポジトリの作成

よく分からずにただ従うだけで問題ありません。
(感覚的には「Gitを有効にする」という感じです。)

メニューバーのバージョン管理>Git リポジトリの作成をクリックします。
image.png

普通はプロジェクトのあるフォルダが既に選択されているのでそのままOKを押します。
image.png

大抵の人(Git for Windows等がインストールされてない人)はこの後エラーになりますので、以下の折り畳みを参照してください。

エラーが出て失敗した

Git for Windowsをインストールします。
といっても、Intellij IDEAが全部代行してくれるので1クリックで十分です。
image.png

ダウンロード進行中…
image.png

インストール完了のメッセージが出たらOKです。
image.png

1.の最初から再びトライしてください。

Gitリポジトリの作成が完了すると、プロジェクトビューのファイルやフォルダの名前に色が付きます。
image.png

2. 初期状態をコミット

Gitが使えるようになったので初期状態をまずセーブデータに保存しちゃいましょう。

Gitビューを開きます。
左のサイドバーの一番下、枝分かれアイコンのボタンです。
image.png

これがGitビューです。
何も無いなあ程度の感想でOKです。
image.png

続いてコミットビューを開きます。
左のサイドバーの上から2番目、玉に横一本棒が貫いているアイコンのボタンです。
ちなみに、一番上のフォルダアイコンは今表示しているプロジェクトビューになります。
image.png

コミットビューを開いたら、上部の変更内のバージョン管理外ファイルにチェックを付け、下部にお好みのコミットメッセージを書きましょう。
image.png
私は「最初のコミット」と書いてみました。

コミットメッセージが書けたらコミット!
image.png

初回コミット時のみ名前とメールアドレスの入力が必要です。
空欄にすると怒られます。
image.png

コミット完了!
下のGitビューを見ると、今作成したコミットが追加されていることがわかります。
image.png
何やら右下に警告が出ていますが、これはどうしようもないので無視です。
エラーじゃないのでセーフ

3. やらかす

ここまででGitを使う準備ができました。
ここからは実際にGitの力を体感してみましょう。

まずはプロジェクトビューに戻ります。
左のサイドバーの一番上、フォルダのアイコンです。

starter直下にgradle.propertiesという大事なファイルがあります。
ダブルクリックで開いてみましょう。
image.png
中身を見てみると分かるわかる通り、Mod名やパッケージ名、マイクラやForgeのバージョン等大事な設定を記したファイルです。
Modを作成する際に必須の超重要ファイルです。

ではこれを削除してみましょう。

プロジェクトビューでgradle.propertiesをクリックし、Deleteキーを押します。
gradle.propertiesを右クリックして削除を選んでも可)

当然確認ダイアログが出ます。
安全な削除のチェックは外しておきましょう。
image.png

チェック外し忘れたら…

一手間増えて面倒です。
焦らず削除ボタンを押しましょう。
image.png

ここにあったgradle.propertiesが消えてしまいました。
image.png
この状態ではもうModの起動も作成もできません。
完全にやらかしました。

マイクラの起動をしてみましょう。
image.png

起動に失敗しています。
最重要の設定ファイルが失われているので当然です。
image.png

4. ロールバック

こんな状態になってしまっても、Gitなら安心です。

コミットビューを開いてみましょう。
すると、削除前はなかった変更が増えています。
image.png
どうやらgradle.propertiesを削除したことが記録に残っているようです。

ではファイルの削除を無かったことにしましょう。
コミットビュー上部のボタンの左から2つ目、左からきてUターンするような矢印のボタンをクリックして「ロールバック」をします。
image.png

ロールバックのダイアログが出ました。
戻したいファイルに既にチェックが付いていると思うので、そのままロールバックを押します。
image.png

プロジェクトビューに戻りますと、gradle.propertiesが復活しています。
image.png

マイクラを実行起動してみると…
image.png

この状態でちゃんと起動できるようになりました。
image.png

5. うまくいったらコミット

初期状態に戻る方法はわかりました。ですがこのままではセーブの意味がありません。最初からやり直せるよってだけじゃセーブの役割を果たしていませんね。
当然、強くなった状態でもセーブできる必要があります。

まずはgradle.propertiesをダブルクリック等で開きます。
image.png
中身の1行目にMod名を指定する部分があります。
これを書き換えてみましょう。
書き換え時の細かい注意点などは初心者編で説明します。
バグっても自分で何とかする!というチャレンジャー以外は下の行をそのままコピーして貼り付けてください。

modName = My First Modding!!;

Mod名に全角文字や記号は使わないでください。
ここぞというときにバグります。

modName = という部分は一字一句そろえてください。
少しでも違うとエラーになります。

以下の画像のようにすればOKです。
image.png

ファイ路の中身を書き換えると、何やら像のマークが出てきました。
image.png
実はこのgradle.propertiesを書き換えた際は、Gradleの再読み込みを行う必要があります。
IDEAは気を遣って「一発で再読み込みしてくれるボタン」を表示してくれているのでクリックしましょう。

×押しちゃって消えちゃった…

Gradleビューを開き、The 再読み込み!って感じのボタンを押しましょう。
image.png

ちょっと右下に実行中の処理が出たかと思うとすぐ終了します。
終了後、特に見栄えは変わりませんが心配は不要です。

このままマイクラを起動してMod名が変わったところを見たいのですが、IDEAが古いファイルをキャッシュしているせいで今のままではうまくいきません。

キャッシュのせいで変更が反映されない問題は、ModdingにかかわらずPC上で割と遭遇します。そういうもんです。
素直にキャッシュをクリアする方法を調べましょう。

今回はキャッシュフォルダを削除することで対処します。
buildの中のresourcesの中のmainフォルダを丸ごと消し飛ばしてください。
image.png
(実はbuildフォルダ全体ごと削除しても問題ないが、再生成にすごく時間がかかるので非推奨。)

こんな忠告が出ますが問題ありません。
どうせ自動で再生成されます。
image.png

キャッシュを削除したので、マイクラを実行起動し、
image.png

Mods画面を開き、
image.png

スクロールしていくとMod名がちゃんと変更されています。
image.png

これで油断してはいけません。まだセーブしていないのですから。

「コミット」をします。

コラム:ファイルの保存とコミットの違いって?

いわゆるCtrl+Sのショートカットでおなじみの「ファイルの保存」は上書き保存ですが、「コミット」は別名保存です。
そのため、コミットをすればするほどバックアップが増えていくような状態になります。
コミットは実質バックアップなので簡単に昔の状態を復元できるという理屈です。

コラム終わり

最初にGitビューを出しておくことをお勧めします。
左のサイドバーの一番下です。
image.png

続いてコミットビューを表示します。
左のサイドバーの上から2番目です。
変更を加えたファイル名が青い色で表示されています。
(実はプロジェクトビューでもgradle.propertiesのファイル名が青色になっていたことに気づきましたか?)
image.png

gradle.propertiesをダブルクリックしてみると、どこが編集されたかが一目瞭然な比較ビューが表示されます。
image.png
片方をスクロールするともう片方も連動する親切設計です。

変更内容バッチリだな!と感じたら、コミットするファイル(=gradle.properties)にチェックを入れ、コミットメッセージを書きます。
image.png

最後にコミットボタンを押してセーブ完了です。
image.png

Gitビューを見ると、今しがた行ったコミットが記録されていることがわかります。
image.png
見た目の雰囲気でも見て取れますが、最初のコミットは上書きされて失われたりはせず、積み重なるように両方のコミットが記録されていることがわかります。

実は、Gitビューからコミットをクリックするだけでどのファイルを更新したかわかり、変更内容も遡れたり、さらに一瞬で任意のセーブ時点に巻き戻れる優れモノなのですが、これ以上の説明はまた今度です…

おわりに

一通りGitを実際に体験していただきました。
Gitは必須ではありません。ですが、Gitさえあればいくらでもセーブポイントを作成しておけるので、プログラミングをやる上では、使えるかどうかでヤラカシ時のリカバリ能力に大きな差が出ます。
まあ、便利なので使ってやってください。


環境構築編 - あった方が良い(が今すぐとは限らない)道具等に続く

メインページへ戻る

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?