プログラミングの研修では、プログラミング言語と同時にバージョン管理システムも学習します。 チームでシステム開発をするときはバージョン管理システムを利用することが多く、少なくとも私はバージョン管理システムを利用せずに開発している現場に出会ったことがありません。
システム開発をする上で必須といえる知識なので、プログラミング初心者にとっても、プログラミング言語の学習と同じくらいバージョン管理システムの学習が大切なことと同時に学ぶメリットについて説明します。
バージョン管理システムとは?
プログラムのソースコードなどのファイルを「いつ」「誰が」「どのように」「どんな目的」で変更したのかを記録・管理する仕組みです。
簡単にいうと「ファイルを過去の指定した時点に戻して!」と依頼すると、すぐに戻してくれるタイムマシンです。
有名なものにGit(ギット)があり、Gitを利用したGitHub(ギットハブ)は多くのユーザーが利用しているクラウドサービスです。
また、ファイルや変更記録を保持する場所を「リポジトリ」といいます。
メリット
ここではバージョン管理システムをプログラミング学習に取り入れたときのメリットを説明します。
-
プログラムが動かなくなったら動いていた時点まで簡単に戻せる
プログラムを修正していたら動かなくなった。こんな場合は動いていた時点に戻して再度修正しましょう。 -
プログラムの変更点がすぐに分かる
色々と修正していたら、どの部分を修正したのか分からなくなった。バージョン管理システムは今のファイルと過去のファイルの差分を簡単に表示してくれます。 -
実践的なスキルが身に付く
バージョン管理システムは実際の開発現場で必須スキルです。早い段階で利用することでスキルを習得できます。
プログラミング学習をしていて、これらに該当する人は検討してみてください。
バージョン管理システムの学習方法は?
習うより慣れろで、とにかく使ってみるのが一番理解できます。
プログラミング学習で作成した、今後作成するプログラムのソースコードをバージョン管理システムで記録・管理していきましょう。
インターネットが使えるなら GitHub にリポジトリを作って利用するのが簡単です。
使えない場合は自分のPCにリポジトリを作って利用することもできます。
実際に利用することで、まずは最低限必要なコマンドと用語を知ることができます。
失敗は早い方がよい
プログラミング初心者が実際の開発現場で最初のつまずきとして多いのが「バージョン管理システムが上手く使えない」ことです。
実際にチーム開発が始まってからバージョン管理システムを学習しようとすると、時間にせかされて思わぬミスをします(例えば間違ってお客様のソースコードを消してしまうとか・・・)。
そうならないためにも早い段階でバージョン管理システムに慣れておき、安心してチーム開発に参加できる準備をしておきましょう。失敗できる状態でたくさん失敗をしておきましょう。