Gitを利用したソースのバージョン管理を説明してみる

今回は「Git」を使ったバージョン管理がテーマです。

僕は今Ruby言語を通してアプリケーションの作成を学んでいまして、Ruby on railsチュートリアルを進めていく中で、初めて「Git」に出会いました。

折角なので、調べてわかったことや、その手順などを記載してみようと思います。

アプリケーション開発に欠かせないバージョン管理

一人で黙々と開発していく分には良いのですが、段々規模が大きくなってくると、複数人で開発することがほとんだと思います。

その場合は各開発メンバーが、ソースファイルのバージョンを最新にして開発する必要があります。

バージョンの差異によるバグを作り込んでしまったり、1つのソースを2人で修正したりすることもあるからですね。

このバージョン管理を正しく、しかも容易く実現してくれるのが「Git」なのです。

「Git」を使うことで、ある断面のソースをリポジトリに登録しておき、いつでもそのバージョンを取り出すことが出来ます。

また、ソースの履歴をコメント付きで保存できるので、前バージョンからのアップデートを容易に理解することが出来ます。素晴らしいですね!

次からは、Gitでどのようにバージョン管理をしていくかを纏めていこうと思います。

Gitの準備(Git init)

Ruby on railsチュートリアルを例として書くと、自分のローカル環境にプロジェクトを作り、そこで開発作業を進めていきます。

Gitを使うにあたって、そのプロジェクトをリポジトリ化する必要があります。

リポジトリはソースファイルの履歴を記録する台帳のようなものだと考えれば良いと思います。

バージョン管理するにあたって、対象のソースファイルが存在するプロジェクト全体を、まずはリポジトリ化しましょう。

ターミナルを使ってプロジェクトディレクトリに移動し、以下のコマンドを実行します。

git init

これでローカルリポジトリの完成です。この段階ではまだローカル環境でのリポジトリを作成したに過ぎません。

真っ白な台帳ができたと考えれば良いと思います。

バージョン管理対象のファイルを選択する(git add)

作成したローカルリポジトリで、バージョン管理を行う対象を選びます。

git add ファイル名

これで指定したファイルがバージョン管理対象になります。これを「インデックスに登録する」と言います。

プロジェクト全体の中で、どのファイルをバージョン管理していきたいか選ぶということですね。仮登録みたいなものだと理解しています。

プロジェクトのソースファイル丸ごとを管理したい場合には

git add -A

と実行すれば良く、プロジェクトディレクトリの中身全てがバージョン管理対象となります。

ローカルリポジトリに登録する(git commit)

選択したファイルを実際にローカルリポジトリに登録し、バージョン管理をスタートさせます。

git commit -m コミットコメント

”コミットコメント”の部分には、修正履歴を入れます。初回登録時は「新規登録」とか「first commit」とかで良いかと思います。

リモートリポジトリを作って共同開発する

ローカルリポジトリで各メンバーが書いたソースファイルを共有するために、リモートリポジトリを作成します。

Githubが有名ですが、railsチュートリアルでは「Bitbucket」を採用しています。

セキュリティの関係からプライベートリポジトリとしたい思惑があり、当時はGithubがパブリックのみ無料で作成できたという背景からBitbucketを採用していたようです。

2019年1月からは、Githubでも無料のプライベートリポジトリを作成できるようになっており、railsチュートリアルも改訂されるかもしれません。

リモートリポジトリでソースファイルを共有する(git push)

Bitbucketにユーザー登録を行なってSSH公開鍵を設定、リモートリポジトリの作成をします(※この辺はまた纏めます)

リモートリポジトリにローカルリポジトリを登録します。

git push -u origin -all

これでリモートリポジトリにアプリケーションを初期構築できました。

今回はここまで。追ってリライトしていきます。