はりうすブログ (のすけのメモ)

はりうす代表 ”のすけ”のブログです

私はサル以下なのか、、、と思ったあなたに。RPGに例えたGitの概念

f:id:hollywis:20200429131839j:plain

ヒトにはもっと良い例えがあるはず!
そんなわけで、サルには理解できないRPGで、誤解を恐れずに例えてみた。

いつも教えるときに例えて説明しているので、自分で整理するためにメモ。


概念だけなので正確には、こっちのGithubが出してるチートシートを確認してね。
https://github.github.com/training-kit/downloads/ja/github-git-cheat-sheet.pdf

git init

メモリーカードの初期化
全てはここから始まる。たまにPhpStormなど便利なIDEは勝手にやってる場合がある

git clone

友達のセーブデータをメモリーカードにダウンロード。cloneから始める場合はinit不要。

git add

セーブするものを選ぶ
(RPGの中の状況のうち、セーブするものを選べる。お金だけとか、経験値だけとか、このキャラだけとか)

git commit

addした状態をメモリーカードへのセーブ

git checkout

セーブデータのロード(読み込み)

git remote

クラウドセーブポイントの設定
メモリーカードではなく、インターネット上のメモリーカードに保存する(bitbucket, githubとか)
何個でも設定できる。

git push

git remoteで設定したインターネット上のメモリーカードに保存。
git commit(手元のメモリーカードに保存)した後にやると、そのデータがネットにもコピーされる。
これで、手元にあるメモリーカードを紛失しても、水に濡らしてもセーブデータは失われない

git pull

インターネット上のメモリーカードカードの状態を
自分のメモリーカードに反映する。
友達が更新していた場合に、ちょくちょく、git pullしてやらないと、自分だけ古いデータで置いてきぼりを喰らう事があるよ。

git branch

セーブデータの系列
条件分岐する箇所で、一旦セーブすると思います。
masterブランチは、メインのセーブデータ。
そのほかのブランチは、サブイベント回収のセーブデータみたいなイメージ。
サブイベントを回収し尽くしたら、masterブランチにマージして、常にmasterブランチのセーブデータに統合させる事ができます!
それを、自分だけじゃなく、友達同士で、協力してサブイベント回収して、masterブランチに統合する事もできる!

git rebase

自分のセーブデータに、別のセーブデータを混ぜる事ができる。
混ぜる作業は手動なので、熟練した技量が必要

git marge

セーブデータを結合する。
git rebaseと似ている。こちらも熟練した技量が必要

git reset

セーブデータを巻き戻す。
無かった事にする。

git revert

差分を打ち消す。差分を部分的に戻す。
お金だけ、前回のセーブデータの状態にするとか、あの街には行かなかった事にするとかできる。

git diff

セーブデータと現在の状態の差分を見れる!
便利!

git stash

現在の差分を一時待避できる。
友達のセーブデータをロードしたい場合、今の自分の変更はrevertするか、stashすることで、初めてロードできるようになる。
何気に使います。

git reflog

自分の冒険履歴を見られる
「右うでを上げた」並の細かさで記録されている。
そして、git reset -hard で、そのログをリプレイできる!その時に戻れる!

git log

過去のセーブデータを閲覧できる
こっちの方が、大雑把な冒険履歴を見れる。

git config

セーブ方針の設定ができる。
この自分の冒険を記録している者の名前は何か?とか、メールアドレスとか。


どんなもんでしょう?

この本超えたかな?ダメか(笑)