コーダーにGitは必要?覚えるのは5つの操作だけでいい

※本記事にはプロモーション(広告)が含まれます。

「コーダーにGitは必要ですか」という質問をよく見かけます。学習中の人にとっては、覚えることが1つ増えるかどうかの分かれ目なので、切実だと思います。

私はWeb制作に14年関わり、数十社の現場を見てきました。その経験から結論を書きます。

目次

結論:案件によるが、覚えないと入れない現場がある

正確に言うと、こうなります。

  • 個人・小規模の制作案件:Gitが不要なケースは今もある
  • 制作会社やチーム開発の現場:ほぼ必須。使えないと参画の候補に入らない
  • エージェント経由の常駐案件:使える前提で話が進むことが多い

つまり「必要かどうか」ではなく「どの現場に行きたいか」で決まります。そして単価が高いのは、たいてい必須の側です。

覚える範囲は思っているより狭い

Gitを敬遠する人の多くは、覚える量を過大評価しています。コーダーが日常的に使う操作は限られています。

実務で毎日使うのはこれだけ

  1. 最新の状態を取ってくる(pull)
  2. 変更をまとめて記録する(add / commit)
  3. 作業用の枝を作る(branch / switch)
  4. 変更をチームに共有する(push)
  5. 取り込んでもらう依頼を出す(プルリクエスト)

この5つで大半の日常業務は回ります。まずここだけを確実にできるようにしてください。

たまに必要になるもの

  • 変更を取り消す(間違えてコミットしたとき)
  • 競合を解消する(同じ行を複数人が触ったとき)
  • 過去の状態を見る(いつ壊れたかを調べるとき)

この3つは、必要になった時点で調べれば間に合います。最初から全部覚えようとすると挫折します。

コーダーがGitで詰まるポイント

1. 競合(コンフリクト)が怖い

いちばん多い挫折理由です。ただし競合は壊れたわけではなく、判断を求められているだけです。どちらの変更を残すかを決めれば終わります。

怖いのは競合そのものより、慌てて適当に解消して両方の変更を消してしまうことです。分からなければ手を止めて聞く。これが正解です。

2. CSSは競合しやすい

コーダー特有の事情です。複数人が同じCSSファイルを触ると、競合が頻発します。

対策は現場のルールに従うことです。ファイルを分ける、担当範囲を分ける、こまめに最新を取り込む。私が入った30名規模の現場では、このあたりが細かく決められていました。

3. コミットの単位が分からない

「どこまでやったらコミットするのか」で迷う人が多いです。目安はこうです。

「この変更だけ取り消したい」と後から思う可能性がある単位で区切ります。1ページ分の実装、1つのバグ修正、といった粒度が扱いやすいです。

4. 画像やデザインファイルの扱い

Gitはテキストの差分管理が得意な仕組みなので、画像やデザインデータは相性が良くありません。これらをどこで管理するかは現場ごとに決まっているので、勝手に判断せず確認してください。

現場では「技術力」より「事故を出さないこと」

ここが実務の本質だと思っています。

私が入った30名規模で制作を回している現場では、最優先されていたのは技術の高さではありませんでした。レギュレーションを守ることと、事故を出さないことです。

Gitで言えば、こういうことです。

  • 作業前に最新を取り込む
  • 指定されたブランチ名の規則に従う
  • 他人の作業を勝手に上書きしない
  • 分からない操作は実行する前に聞く

難しいコマンドを知っていることより、この4つを守れることのほうが評価されます。

実務での1日の流れに当てはめると

操作を単体で覚えるより、作業の流れのなかで見たほうが理解が早いです。制作会社の現場でよくある1日はこうなります。

朝:最新を取り込む

作業を始める前に、他の人が入れた変更を取り込みます。ここを飛ばすと、あとで大きな競合になります。私が見てきた事故の多くは、この一手を省いたことが原因でした。

着手前:作業用の枝を切る

「このページの実装」「このバグの修正」といった単位で枝を作ります。ブランチ名の付け方は現場ごとにルールがあるので、参画時に必ず確認してください。

作業中:区切りごとに記録する

1日の終わりにまとめて記録するのではなく、意味のある区切りごとに残します。あとから「この変更だけ戻したい」となったときに助かります。

完了後:共有して確認を依頼する

変更を共有し、取り込んでもらう依頼を出します。ここでレビューを受けることになりますが、指摘は人格への評価ではありません。ここを気にしすぎる人が意外と多いので、先に書いておきます。

指摘を受けたら:直して再度共有

この往復が普通です。一発で通ることのほうが少ないと思っておくと、精神的に楽になります。

逆に、Gitが要らない案件もある

正直に書いておきます。次のような案件では、今もFTPでの直接アップロードが使われています。

  • 1人で完結する小規模サイトの制作
  • 既存サイトの軽微な修正
  • 個人事業主・小規模店舗の案件

ただしこれは「Gitを覚えなくていい」という意味ではありません。この層の案件だけを受け続けると、単価の天井が低いままになります。

単価の分布についてはコーダーの単価相場にまとめました。

学習の順番のなかでの位置づけ

私が考える、コーダーが足していく順番はこうです。

  1. HTML/CSS(レスポンシブ含む)
  2. JavaScriptの基礎 — 最大の壁
  3. Git・開発環境 — チーム開発の前提
  4. WordPressなどのCMS構築

Gitは3番目でいい

理由は、1人で使っていても価値が実感しにくいからです。チームで使って初めて意味が分かる道具なので、実案件に入る少し前に触るのが効率的です。

ただし順番が後というだけで、飛ばしていいという意味ではありません。実務経験を積む段階では必ず出てきます。

私はここで遠回りしました

正直に書くと、私はHTML/CSSからJavaScriptに進むまで数年空いてしまいました。開発環境まわりに触れるのも遅かったです。

それでも仕事は続いています。遅くても、順番さえ守れば届きます。実際にかかった期間はコーダーの独学期間に書きました。

学ぶなら「1人で完結する練習」をしない

ローカルだけで練習しても身につかない

Gitは複数人で使う前提の道具です。1人で操作だけ覚えても、実務で起きる問題は経験できません。

おすすめの練習方法

  • 自分のポートフォリオをリポジトリで管理する(日常的に触る環境を作る)
  • ブランチを切って作業する癖をつける(本番用と作業用を分ける)
  • わざと競合を起こしてみる(同じ行を2つのブランチで変更して解消する)

3番目が効きます。安全な場所で1回経験しておくと、実務で慌てません。

Gitを使わない現場に入ったときの注意

FTPで直接アップロードする現場も、実際にはまだあります。その場合に気をつけることを書いておきます。

1. 上書き事故が起きやすい

誰かが作業中のファイルを、別の人が古い状態で上書きしてしまう。これが最も多い事故です。作業前に「今このファイルを触っている人はいないか」を確認するしかありません。

2. 元に戻せない

変更履歴が残らないため、壊したときに戻す手段がありません。触る前にバックアップを取るのが唯一の防御です。面倒でも必ずやってください。

3. 誰が何を変えたか分からない

問題が起きたときに原因を特定できません。自分がいつ何を変えたかを、自分用にメモしておくだけでも状況が違います。

逆に言えば、これらの面倒さがそのままGitを使う理由です。両方を経験すると、なぜ必要とされているのかが腑に落ちます。

面談で聞かれたときの答え方

私はフリーランスエージェントに7社登録しましたが、面談で聞かれたのは経歴・得意分野・週何日働けるかの3点でした。技術テストはありません。

ただし経歴の説明のなかで、開発環境の話は出ます。そのときは正直に、使ったレベルを分けて伝えるのが安全です。

  • 「チーム開発で日常的に使っていました」
  • 「1人での管理には使っていますが、チームでの運用経験はこれからです」

後者でも問題ありません。できないことを隠して入るほうが、参画後に苦しくなります。

「この経歴だと、あと何ができると案件の幅が広がりますか」と聞けば、担当者は具体的に答えてくれます。Midworksのような会社に相談すると、提示額と一緒に足りないものが分かります。登録先の比較はフリーランスコーダーにおすすめのエージェントにまとめました。

参画初日に確認しておく5項目

Gitが使える現場に入ったとき、最初に聞いておくと後が楽になる項目です。私はこれを確認しなかったせいで、余計なやり取りが発生した経験があります。

1. ブランチの命名規則

「機能名で切るのか、チケット番号で切るのか」。現場ごとに決まっているので、勝手に決めないでください。あとから名前を変えるのは手間になります。

2. どのブランチから切るか

本番用から切るのか、開発用から切るのか。ここを間違えると、公開してはいけない変更が混ざります。最も事故につながりやすい項目です。

3. コミットメッセージの書き方

日本語か英語か、書式が決まっているか。統一されていると、あとから履歴を追いやすくなります。ルールがあるなら従ってください。

4. レビューの流れ

誰に依頼するのか、承認が何人必要か。ここを知らないと、作業が止まったまま待つことになります。

5. 触ってはいけないファイル

設定ファイルや共通CSSなど、担当外の人が触らない決まりのファイルがあることは珍しくありません。先に聞いておけば事故を防げます。

覚える価値があるのは、Gitそのものではない

最後に、少し引いた話をします。

Gitを覚える本当の意味は、チームで作業する前提の進め方を身につけることだと思っています。

  • 作業を始める前に、他の人の状況を確認する
  • 変更を意味のある単位で区切る
  • 共有する前に、自分の変更を説明できる状態にする
  • 指摘を受けて直す往復を、当たり前のこととして受け入れる

この4つは、Gitを使わない現場でも通用します。そして単価が上がるのは、この進め方ができる人です。

指示どおりに実装するだけだと、代わりが見つけやすいため評価が上がりません。「なぜこの実装なのか」を説明できると、実装者ではなく相談相手として扱われます。

よくある質問

Q. GUIツールとコマンド、どちらで覚えるべきですか

入口はどちらでも構いません。ただし現場で使うツールは指定されることがあるので、片方に依存しすぎないほうが安全です。何が起きているかを理解していれば、ツールが変わっても対応できます。

Q. GitとGitHubは違うものですか

違います。ざっくり言うと、Gitが変更を管理する仕組みで、GitHubなどはそれをチームで共有する場所です。現場によって使うサービスが違うので、こちらも確認事項になります。

Q. 未経験の求人でもGitは求められますか

求められることは増えています。ただし「使えないと即不採用」ではなく「入社後に覚える前提」の現場も多いです。触ったことがある状態にしておけば十分です。

Q. Gitが使えると単価は上がりますか

Git単体で上がるわけではありません。チーム開発の案件に入れるようになることで、結果的に単価帯が変わります。単価の上げ方はコーダーの単価の上げ方にまとめました。

Q. 覚えるのにどのくらいかかりますか

日常業務で使う5つの操作だけなら、数日で形にはなります。難しいのは操作ではなく、チームでの運用ルールに慣れることです。こちらは実案件で覚えるしかありません。

まとめ

  1. Gitは案件によっては不要だが、必須の現場のほうが単価は高い
  2. 日常業務で使うのは5つの操作だけ
  3. 詰まるのは競合・CSSの衝突・コミット単位の3つ
  4. 現場で評価されるのは技術力より事故を出さないこと
  5. 学習の順番はHTML/CSS → JavaScript → Git → CMS

「必要かどうか」で悩む時間があるなら、自分が入りたい現場でどう扱われているかを確認するほうが早いです。エージェントの面談では、案件側が何を求めているかをそのまま聞けます。

他に何を学ぶべきかはコーダーに必要なスキル、WordPressの要否はコーダーにWordPressは必要かにまとめています。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次