【Git編】テックキャンプエキスパートで教えてくれなかったこと

「テックキャンプエキスパートで教えてくれなかったこと」、第2回目です。

前回はコーディング規約についてでした。今回はGitです。

バージョン管理システムとしてのGit、そしてもはや誰もが知ってるGitHub。
このGitの使い方に関しても、テックキャンプエキスパートと実務に入ってからで違いに苦しみました。

キーワードは

「GitHub Desktop」

「Gitコマンド」

というものでした。

今回は実際に、テックキャンプでは何を学んで何を学ばなかったかを紹介していきます。

スポンサーリンク

テックキャンプエキスパートで教えてくれなかったGit?

テックキャンプでのコード管理では「GitHub Desktop」というソフトを使います

↓こんな感じ

このツール、たった3ヶ月で「Gitって何?」から、謳い文句である「即戦力エンジニア」まで育てるにはいいと思っています。

というのも、一番の特徴でもあるのですが、

「コミット→プルリクエスト」までの流れがボタン一つで出来てしまうから。

実際に自分も

「Gitって何だ?全然分からん」という所から「GitHub Flow」に慣れていったのはこのソフトのおかげかもしれません。

最初からターミナルでコマンド直打ちなんてやらせれていたら早々に挫折していたはずです。

しかし、このソフトは簡単に使えるが故に大きな穴があります。

それは

「コミット→プルリクエスト」以外の流れ以外が身につかない。

「git reset ,revert, stash」 などなどの細かい操作が出来ない。

という2つの欠点でした。

テックキャンプではGitの基本的な概念やGitHub Flowは叩き込まれますが、その他の作業は基本的にカリキュラムでは取扱いません。独学の世界になります。

このGitHub Desktopで慣れきった自分は、ターミナルから入力するgitコマンドが全然使いこなせず、入社後苦労しました。

入社後は?

「Git操作って何らかのソフト使ってやるものじゃないの?」と、思い込んでた自分。

ところがどっこい、弊社では何も使っていませんでした。

普通に皆さんGitコマンドを叩いてました。

「やだ、ターミナルこわい・・・」

「よく分からねえコマンド打ってファイル吹っ飛んだらどうしよう・・・」

というような、最初は抱きがちなCUI恐怖症な所がありました。

そんな事もあり、コマンドには極力触らずGitHub Desktopに慣れきっていた自分は、入社後に必死でGitコマンドの勉強をする羽目になります。

基本的なGitでの作業の流れは把握していたものの、先述した細かい作業(rebase,revertなど )については一から勉強しました。

勉強していく内に、テックキャンプではやってこなかったrebaseやrevert,checkoutのようなコマンドを使いこなせるほうが実務では大事なんだな、と段々気付いてきます。

その成果もあり、今ではGitコマンドを扱えるようになってきました。

しかしやはり学習コストが掛かるのは事実です。

エキスパートコース3ヶ月の間にこれを詰め込むには是非があると思います。
やはりこういうものは慣れが大事です。

「即戦力エンジニア育成」を謳うのであれば、テックキャンプエキスパートのカリキュラムに盛り込んでおいたほうがいいのでは?と今頃思ったりします。

まとめ

「取っ付きにくいGitコマンドだが、結局は最初のうちに勉強しておいたほうが良い。」

Git博士になると意外と重宝されたりするかも。

最後に、自分が良いと思ったGit解説を色々紹介します。

Git初心者向け

git pull と git pull –rebase の違いって?図を交えて説明します!
http://kray.jp/blog/git-pull-rebase/

  • タイトルは「pullと pull -rebaseの違い」となっているが、そこに至る過程を一から説明してくれている。とても分かりやすい良い記事。絵がかわいい。

Git初心者に捧ぐ!Gitの「これなんで?」を解説します
http://kray.jp/blog/git-why-explanation/

  • こちらはcommitのなんで?から解説付きです。絵がかわいい。

コミットを間違えた!

【git】git pushを取り消す
http://tweeeety.hateblo.jp/entry/2015/06/10/215753

  • git resetコマンドのパターン別方法
  • git push -fはあんまり使わないと思うけど知識として

Git で コミットを無かったことにする方法 (git revert の使い方)
http://akiyoko.hatenablog.jp/entry/2014/08/21/220255

  • revertの説明。マージを取り消す方法も

git revertで複数コミットを巻き戻す方法
http://blog.shibayu36.org/entry/20100517/1274099459

  • 複数のコミットを一つのコミットで戻す方法。便利

コミットを修正する

6. rebase -i でコミットを修正する
https://www.backlog.jp/git-guide/stepup/stepup7_6.html

よく使うrebase -iの説明。
よく使いよくやり方を忘れるのでよく見る。

Gitで◯◯がしたい!✕✕が出来ない!

逆引きGit | サルでもわかるGit入門
https://www.backlog.jp/git-guide/reference/

逆引きリファレンス。
こういう時どのコマンド打つんだっけ?という疑問はここを見て探せば大抵解決する

おわり