git(ギット)って、プログラミング初心者には、いつ、どう使うのかイマイチ分かりにくいですよね。
40代でプログラミングを学び始めた私は、Progate(プロゲート)でGitを学びました。
操作は理解できたのですが、実際にどんなふうに使いこなすかが、どうも分かりませんでした。
私のように、Gitがスッキリしないという人のために、Gitの役割と基本の使い方を解説します。
Gitとは、ワードの変更履歴機能のようなもの
Gitはバージョン管理システム。
「そういわれてもよく分からない」という方は、Gitは、ワードの変更履歴機能のようなもの、とお考えください。
ワードファイルの変更履歴機能なら、変更箇所ごとに履歴が表示されて便利ですよね。
このワードの変更履歴機能のプログラミング版が、Gitだと考えてください。
開発をすすめるにつれて、ファイルには新たなコードが加わっていきますよね。
すると、以前どう書き換えたか、分からなくなっていってしまいます。
Gitを使わなければ、コードをすべて残しておかねばなりません。
別ファイルにしておくこともできますが、容量がどんどん大きくなっていってしまいます。
それに、どの部分が変わったかを確認するのも一苦労。
Gitを使えば、今のファイルのどこがどう変更されたかという履歴がすぐ分かるのです。
Gitがすごいのはローカル環境でもバージョン管理できるところ
そもそもバージョン管理システムは、Gitが広まる前から存在していました。
複数人で同じものを作っていく場合には、だれが何をしたか、分かるシステムが必要だったのです。
ですが以前のシステムは、ネットワーク上だけで管理を行うものでした。
一方、Gitは「ローカル環境」と「リモート環境」の2か所に分けて変更履歴を管理できます。
Gitによって各開発者はローカル環境上で自分用に変更履歴を管理しつつ、必要に応じてリモート環境でも変更履歴を共有することができるようになりました。
Gitを使うメリットを3つあげてみます
Gitを使うメリットは、次のような点です。
- 変更履歴を自分用に残しておける
- 変更履歴を他の人と共有できて開発が進めやすい
- 手軽にバージョンを戻したりできる
複数人で開発を進める予定がなくても、Gitを使う価値はアリ。
「どんなものだろう」と思ったら、まずは自分用に使ってみましょう。
GitとGit Hubの違いも知っておくと恥ずかしくない!
なおGitとGit Hub(ギットハブ) は混同されることがあるので、ちょっとだけ違いを説明します。
- Git:バージョン管理システム
- Git Hub:Gitの変更履歴内容を共有できる場所
つまり、Gitを使ったプラットフォームがGit Hubです。
Gitの使い方 ~ファイルの共有方法
ここまでで「Gitが前より分かってきた!」と思っていただいたら、うれしいです。
ここからは、Gitの使い方を紹介します。
- OSはWindowsを使った説明となります。
- WindowsでGitを使うためには、Git for Windowsをインストールしておきましょう。
実行するコマンドは、次の流れです。
1 | git init | レポジトリ作成 |
---|---|---|
2 | git add ファイル名前 | ファイルを選択 |
3 | git commit -m 'メッセージ' | ファイルにメッセージをつける(オプション) |
4 | git remote add origin URL | リモートレポジトリを登録 |
5 | git push origin master | リモートレポジトリにファイルを登録 |
① Git Bashを起動
バージョン管理をしたいソースが入ったフォルダを右クリックして、Git Bashを起動します。
②リポジトリを新規作成する
変更履歴管理をする場所(リポジトリ)を新規作成します。
下記コマンドを入力してください。
1 |
git init |
③共有したいファイルを追加する
共有したいファイルを選択します。
1 |
git add ファイル名 |
④ファイルにメッセージをつける
もしメッセージを付けたい場合には、次のように入力します。
messageの内容はお好きなように変えてください。
1 |
git commit -m 'message' |
⑤リモートリポジトリを新規作成する
リモートリポジトリににファイルを登録します。
Git Hubにログインし、右上の「New repository」をクリックします。
リポジトリ名を適当につけます。
public(公開用)か private (非公開)のどちらか選びます。
その下のチェックマークは、とりあえず何もつけないで大丈夫です。
公開するときなど、Readmeファイルを付けたいときは、下記にチェックをいれます。
⑥リモートリポジトリを追加する
次に、下記のコードを入力します。
https://には、⑤で作成したリポジトリのURLをいれましょう。
1 |
git remote add origin https:// |
「【origin】 という名前で、リモートリポジトリを追加する」という意味です。
この後、origin という名前を指定することで、https://で指定したリモートリポジトリに変更を保存したり、参照したりすることができるようになります。
なお他の名前で作ってもOKなのですが、originがデフォルト名としてよく使われます。
英語の豆知識origin は「原点」という意味があります。形容詞系は、original(オリジナル)。
なおGit Bashは通常のコピペのショートカットが効きません。コードをコピーしたいときは、GitBash上で右クリックをして「Paste」を選ぶか、Shift+Insertキーを押しましょう。
⑦リモートリポジトリにファイルを登録する
それでは、いよいよファイルの登録です。
1 |
git push origin master |
上記をGit Bashに登録しReturnキーを押します。
Git Hubにログインし、左側のメニューから、⑤で作成したリポジトリをクリックします。
登録したファイル名が表示されているのを確認してください。
もしファイルに変更を加えた場合、上記の②から同じ手順を踏めば、リモートリポジトリ上も更新できます。
Gitの基本の使い方 ~枝分かれ機能
Gitには、枝分かれ機能もあります。
開発を途中で分岐させるときに便利です。
枝分かれを作るには、branchコマンドを使います。
1 |
git branch ブランチ名 |
英語の豆知識
branch(ブランチ)とは、まさに枝という意味。
会社の支店という意味でも使われます。
枝分かれした後のリポジトリを使う場合には、checkoutを行います。
1 |
git checkout ブランチ名 |
Gitの基本の使い方 ~そのほかの便利なコマンド
他の便利なコマンドは、次のとおり。
ファイルをダウンロード
ファイルをダウンロードするには、次のコードを入力します。
1 |
git pull origin master |
ファイルの状態を表示
1 |
git status |
変更があったファイルは緑色に表示されるので、すぐに分かります。
メッセージの一覧を表示
1 |
git log |
これまでのメッセージの一覧が表示されます。
違いを表示
1 |
git diff |
git add の後に行うと、ファイルの変更点が表示されます。
Gitはやっぱり不便だなと思う人へ:Source Treeを使いましょう
ざっとGitについて解説してみましたが、スッキリしましたか?
「コマンド入力って、なんだかやっぱり面倒」と感じませんか?
そんな方におすすめしたいのは、Git をコマンドなしで使えるツール【Source Tree】。
実は私も今、こちらを使っています。
Source Treeはこちらからダウンロードできます。
普通のツールのように、視覚的にファイルを操作出来て、非常に便利。
Git Hub連携もできますし、自分用にローカルで使うこともできます。
もしGitは面倒だと思ったら、試してみて下さい。
さいごに
今回のまとめ
- Gitはバージョン管理ツール
- ワードの変更履歴のように、細かく変更履歴を管理できる
- Gitはローカルとリモート2か所で変更履歴管理ができる
- Git Hubとは、Gitの変更履歴の内容を共有できる場所
- Gitの基本の使い方を解説
- コマンド入力が苦手な人はSource Tree がおすすめ
今回はGitが何か?と基本の使い方を解説しました。
一人で開発を行う場合には必須ではありません。
ただバージョン管理を行っておくと、何か起こったときに過去のバージョンにすぐ戻せたりと、開発が進めやすくなります。