Git,Githubの使い方まとめ

2019年5月26日プログラミング

Gitによるソースのバージョン管理

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

私は今、Rubyを使用してアプリケーション開発をしていまして、Ruby on railsチュートリアルを進めていく中で初めて「Git」に出会いました。

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

アプリケーション開発に欠かせないGit

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

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

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

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

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

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

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

Gitを使ったバージョン管理の仕組み

Gitを使ったバージョン管理の流れとしては、ローカルで編集したソースをローカルリポジトリにコミットし、その後リモートリポジトリにプッシュします。

もっと詳細に説明すると、ローカルリポジトリにコミットする前に、『ステージングエリア』と呼ばれるエリアにコミット対象ソースの追加を行います。

ステージングエリアとは

ステージングエリアは、『ローカルリポジトリにコミットする直前の準備エリア』です。ステージングエリアに追加された修正後ソースがコミット対象ということです。

ステージングエリアへの追加・削除は自由に行うことができ、コミット対象ソースを確定するための準備エリアとしての位置付けを担っています。

Githubへの登録

まずはGithubへの登録を行いましょう→Github

初期設定

Githubへの登録が済んだら、初期設定を行います。
ターミナルを開いて、以下の情報(ユーザーネームとメールアドレス)を設定しましょう。

git config --global user.name "Githubに登録したユーザ名"
git config --global user.email Githubに登録したメールアドレス

Gitへの登録内容を確認します。

git config user.name
git config user.email

ローカルリポジトリ作成(Git init)

まず、Gitを使うにあたって、プロジェクトのディレクトリにローカルリポジトリを作成します。(リポジトリはソースファイルの履歴を記録する台帳のようなものだと考えましょう)

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

cd アプリケーションディレクトリ
git init

上記コマンドを実行すると『.gitディレクトリ』が作成されます。
これがローカルリポジトリであり、この中にGitのバージョン管理に必要なファイルが作成されます。

後述するgit add,commitコマンドによって作成される『インデックスファイル』『コミットファイル』等がそれにあたります。

ステージングエリアに追加する(git add)

作成したローカルリポジトリで、バージョン管理を行う対象を選びます。
前述した『ステージングエリアに対象のソースを追加すること』にあたります。

git add ファイル名

これで指定したファイルがバージョン管理対象になります。
また、ステージングエリアに追加する際、対象のファイルは全て『インデックスに追加』されます。

ローカルリポジトリに登録する(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

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

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