デザイナーの私がいよいよgitと向き合うことになった話

designer_git_main.jpg

昨今の開発では、git(バージョン管理)は切っても切れない存在で、
むしろ使っていないほうが珍しい、もはや常識のようなものなのだろうと思う。
(デザイナーでも使っている人は、今では増えてきているのかもしれない)

覚えたらきっと便利。
手放せなくなるくらい良いものだということは、頭ではわかっている。

......わかってはいるが、体が拒否反応を起こす。
そう、なぜならば──

ぶっちゃけ、あの黒い画面が怖い!

コマンドを叩くって何?
やだやだ!わかんないよ~!

......というのが、当時の正直な心の叫びだった。

加えて、忙しいことを理由に「おいおい......ね😅」と、
社内エンジニアからの「そろそろ覚えてくれ~」という圧からも、
うまいこと逃げ続けてきた私。
(新しいことを覚える心の余裕がなかった、というのも正直なところ)

そのうち......いずれは......
と思っていたら、ついにその時が来てしまった。

Webアプリケーションの大型開発である。

デザイナーの私は、デザインおよびコーディングを担当し、
フロントエンドエンジニアにファイルを受け渡す立場。
やはり取り扱うには、gitでのバージョン管理が必須だった。

そこで今回は、
gitやコマンド操作に苦手意識のあったデザイナーの私が、どのようにgitと向き合い、
最低限使えるようになったかの体験記
をまとめてみた。

【目次】

制作環境の変更

本題の前に、今回の開発では制作環境をがらっと一新した。
まずは、エディタをDreamweaverからVSCodeへ変更。

Dreamweaverにもgit機能がないわけではないが、
エンジニアの方々と開発環境を統一することで、
予期せぬトラブルを回避する目的があった。

Adobe CCを使っていることもあり、「せっかくならAdobe製品を使い倒そう」と
長いことDreamweaverを使い続けてきたが、VSCodeを試すには良い機会だったと思う。

VSCodeを使って良かったこと

  • 動作がめっちゃ軽い!
  • 複数のワークスペースを開ける
  • とにかく軽い!
  • 拡張機能が豊富で便利
  • サクサク動く!

......いかにDreamweaverが重かったかを、身をもって実感した。
(起動が遅いし、よくフリーズするし......)

Dreamweaver特有のテンプレート機能なども使っていなかったため、
あとはSSIを使用しているサイトのプレビュー問題が解決できれば、
完全移行できるのでは?と思っている。


──閑話休題。
ここから本題のgitの話に入っていく。

gitで困ったこと ~用語がわからない~

gitには数々の専門用語が存在する。
最初はこの用語を理解するところからスタートした。

※以下は、gitを触り始めた当時の「自分なりの理解・解釈」の用語集です。

リポジトリ

最初に出てきた謎ワード。

「何か特別なもの」だと思っていたが、
gitで管理するための"作業フォルダ一式"
だと分かって、少し安心した。

ディレクトリとほぼ同義。
ただし、履歴がすべて記録される前提の箱、という認識。

ブランチ

一番イメージしづらかった言葉。

「なんでわざわざ分岐させるの?」
と思っていたが、
本線を汚さずに作業するための別ルート
と理解して、ようやく腑に落ちた。

「世界線を分ける」と言われて、
なるほど......?となった記憶がある。

コミット

「保存」とは違うらしい、という時点で混乱。

実際は、
作業の区切りを履歴として残すこと。

「どこまでやったらコミットしていいの?」
が、最初はまったく分からなかった。

ステージング

存在を知らずに、最初につまずいたポイント。

「コミットする前に、この変更を履歴に入れますよ、と指定する場所」
=提出前の確認トレイ
くらいの認識で落ち着いた。

リモート/ローカル

なんとなく分かっているつもりで、 ちゃんと理解できていなかった言葉。

  • ローカル:自分のPCの中
  • リモート:みんなで共有している場所

自分の作業=即共有されるわけではない
と分かってから、事故が減った。

プル/プッシュ/マージ/フェッチ

完全にカタカナ祭り。

最初は呪文にしか見えなかったが、

  • プル:取り込む
  • プッシュ:送る
  • マージ:合体させる
  • フェッチ:最新情報を見に行く

と、動詞として考えるようにしたら、少し楽になった。

プルリク(Pull Request)

「これ、いつ出すのが正解なの?」
という疑問をずっと抱えていた。

作業が一段落したので、
確認&取り込みお願いします、という申請

だと理解してから、心理的ハードルが下がった。

Azure DevOps(Repos / Git)

gitそのものだと思っていたが、実は違った。

gitを使った開発をまとめて管理するための場所。

「ここは道具箱で、gitは中の道具」
という説明で、やっと理解できた。

.gitignore

事件のあとで存在の大切さを知ったファイル。

gitに管理させたくないファイルを指定するためのもの
だと後から知った。

先に知っていれば、
あんなに焦らずに済んだのに......という代表例。

gitで困ったこと ~一番焦ったgit事件~

VSCodeにも慣れてきた頃、
「毎回作業フォルダを開くのが面倒だな」「もっと効率よく作業したいな」
と思い、調べてみたところ、.code-workspace ファイルの存在を知った。

これを作成しておけば、
ファイルを開くだけで作業スペースが設定できる。
とても便利!

......と意気揚々としていたのだが、
作成タイミングが悪かったのか、
リモートファイルをプルした際にコンフリクトが発生したようで、
ローカルのファイルがすべて消え去ったように見えて、
本気で焦った。

結果的に、
.code-workspace など履歴として追跡しないファイルは
.gitignore に記載しておくことで、
gitのトラブルを防げると知った。

gitで困ったこと ~PRの出し方編~(スクショで手順をメモして乗り切った話)

PRの出し方には、細かいルールや手順があり、
頭では理解したつもりでも、いざ出そうとすると
「これで合っているんだっけ?」と毎回不安になる。

一度覚えてもすぐに忘れてしまい、
そのたびにエンジニアさんに
「すみません、PRのやり方教えてください......」

と聞くのも、さすがに忍びなくなり、
今回使用しているAzure DevOpsでのPRの手順を、
スクショを撮りながら自分用にメモすることにした。

  • PRを出す手順
  • セルフ承認のやり方
  • マージ後にVSCodeで何をすればいいか

最低限この3つだけだが、
これがあるだけで安心感が全然違う。

デザイナーって(主語でか)
文字だけの説明よりも、
ビジュアル化されているほうが理解しやすいところがあると思う。

gitも例外ではなく、
「分からない」から
「手順を見ればできる」
に変わったのは、自分の中では大きな進歩だった。

現在の私とgitの関係性

gitを完全に理解した、とはまだ言えない。
ただ、どんなものかは把握できたと感じている。

別の案件でも、
「できればgit環境を構築したい」
と思えるようになったほど、
使えば便利なものだということは身に染みて分かった。

怖いからといって、
便利なものを使わずにいるのは、やはりもったいない。

これからも新しい技術やツールを積極的に取り入れ、
効率よく開発・案件を進められるよう、精進していきたい。


※余談ですが、
デザイナーで「gitも任せて!」という方は、ぜひ弊社へご応募ください。

お気軽にご依頼・ご相談ください

前へ

Copilot Studioでエージェントを思い通りに動かす!成功する指示の書き方ベストプラクティス