ライターのナナミです。1人で開発しているならそのままどんどん上書きしたり、日付で管理してもいいのかもしれませんね。複数人での開発や長期の開発では、バージョンがあやふやになってしまうこともしばしば...今回はそんなバージョン管理について、GitとSVNを比較しながら紹介していきます。まとめバージョン管理、どうしてる?バージョン管理の方法って色々ありますよね。その中でも近年人気が出ているのがGitです。Gitとはプログラムのソースコードのバージョンを管理することができるツールの一つです。今や全世界で活用されている、エンジニアには欠かせないツールとなっています。過去、バージョン管理ツールはSVNが主流でしたが、Gitが人気になるにつれてだんだんシェアも下がりつつあるようです。いうことで、今バージョン管理を始めるならGitがおすすめです。その理由は、このあと詳しく紹介していきましょう。Gitでバージョン管理をするメリット・デメリットなぜそんなにGitが人気になったのでしょうか。それはGitが持つメリットが、開発者にとってとても使いやすいものだったからです。どのようなメリットなのか、SVNと比較しながら確認していきましょう!メリットSVNの場合、管理するためのフォルダ(リポジトリ)を、全員で共有して使います。みんな同じサーバーにコミットするということですね。ここにGitでバージョン管理をする大きなメリットがあります。ローカルコミットで個人管理ができるGitではサーバー上にコミットする前に、ローカルでコミットをすることが可能です。自分のパソコンでバージョン管理を行ない、提出するタイミングでサーバー上にコミットするという運用ができるのです。溜めてから全体にコミットする形になるので、不要なコミットを減らすことができますね。コミット不要のファイルを管理しやすいさらにGitでは、コミットする前に一度ファイルをインデックスというものに入れる仕組みがあります。インデックスは、コミットの準備をする場所です。このインデックスに登録されているファイルのみがコミットされます。コミット不要のファイルはインデックスに登録しなければコミットされないのです。事情により一部のファイルだけコミットしておきたいという時、とても便利ですね。GitHubが使えるこれがGit最大の魅力と言ってもいいでしょう。GitHubとは、Gitを使ったWEBアプリケーションです。バージョン管理もそうですが、自身が作ったプログラムの配布などにも使われています。書いたコードのレビューを依頼したりもできるので、自分のレベルアップにも繋がります。Gitを使うなら、ぜひGitHubも活用してみてくださいね!他にもGitの魅力は色々あります。下記の記事でめちゃくちゃ楽しそうに解説しているので、ぜひこちらも読んでみてください。Loverが語る、Gitの魅力とは?デメリットもちろん、メリットばかりではありません。SVNの機能がシンプルな分使いやすいというメリットに対し、Gitは多機能ならではの複雑さがあるのです。Gitについて学ぶ必要があるGitはコマンドでリポジトリを制御することが多いです。コマンドを覚える必要があるということですね。言語のアップデートもめまぐるしい中、新しい学習工数はなかなかネックになるやもしれません。SVNは構築してしまえば割とサクサク使えるツールが色々あるので、手軽さで言ったらSVNに軍配が上がるでしょう。GitHubで非公開にする場合は有料プランGit自体は無料のツールです。Gitで管理しているソースを、GitHubでチームごとに管理する場合、そのままだと全てのユーザーに公開されてしまいます。メンバーを限定して管理したい場合は、有料のアカウントが必要になるので注意しましょう。これらのデメリットを加味しても、Gitでのバージョン管理はとっても便利です。どんな風に使うのかを少し紹介してみますので、ぜひチャレンジしてみてください。Gitでバージョン管理をしてみよう!まずはGitをインストールしておく必要があります。お使いの環境によって手順が異なるので、詳しくは下記の記事などを参考にしてみてください。>>Gitをインストールして、バージョン管理を始めよう!準備ができたら、早速リポジトリの作成から始めていきましょう!リポジトリを作成しようまずは管理するためのリポジトリを作成します。リポジトリとは、管理の対象となるフォルダだと思っていただければOKです。作り方はツールを使った場合とコマンドを使った場合でちょっと違うので、下記の記事などを参考に自分にあった方法で作成してみてくださいね。>>まずはここから!リポジトリの作成方法コミットしてみようリポジトリの準備ができたら、早速コミットしてみましょう。コミットすることで、以降そのファイルのバージョンを管理し続けることができます。比較して差分をとったりできるようになるので、とっても便利です。詳しくは下記の記事で確認してみてくださいね。共有リポジトリにコミット(プッシュ)してみようローカル環境で管理するだけでもいいのですが、複数人でプログラムを管理している場合は共用リポジトリへコミットしたいですよね。この共用リポジトリへのコミットを、プッシュと言います。プッシュするための共用リポジトリの作成方法や、プッシュの方法については下記の記事が詳細に解説しています。併せて確認してみてください。共有リポジトリからファイルをダウンロード(プル)してみよう途中から案件にjoinした場合など、現在の最新データが欲しい時ってありますよね。そんな時は、共用リポジトリからファイルをダウンロードすることができます。このダウンロードをプルと言います。プルの方法は下記の記事で解説しているので、参考にしてみてくださいね。内容が競合した時はコミットしたりした時、場合によっては同僚と同じファイルを更新していて、内容の競合が起きることがあります。そんな時は焦らず騒がず、2つのファイルをマージしていきましょう。マージとは、バージョンが枝分かれしてしまったファイルを一つにまとめ直す作業です。まとめることで、最終的な完成形に近づけていくということですね。マージのやり方は、下記の記事で詳しく解説しています。こちらも併せてご覧ください。>>分かれてしまったファイルを再び一つに!マージのやり方SVNからGitに移行しようここまででGitの魅力は少しでも伝わりましたか?もしちょっと使ってみたいけど、今使ってるSVNをどうしよう...とお悩みでしたら、下記の記事を参考にお引越ししてみるのも手だと思います。>>SVNからGitへ!移行するための手順を解説まとめいかがでしたか?今回紹介したのは、Gitの魅力のほんの一部にすぎません。フリーターを経てフロントエンジニアになる。jQueryなどのコーディングやCMS設計に従事。文系からエンジニアを目指す人にもわかりやすい記事を目指して、日々精進中。体は日本酒でできている。Reserved.現役生徒500名以上が在籍する弊社のプログラミング学習プランをあなたに合わせて最短1分で診断します。