スライドショースライドショースライドショー

初心者でもわかる!Gitの基本的な使い方!

この記事ではGitにはじめて触れる方に向けて、Gitとは何かについて解説します!Gitは今や多くの開発現場で使われているソースコードのバージョン管理システムです。

Gitそのものについて今一度確認したい。
Gitの簡単な使い方についてを知りたい。

といった方に向けてこの記事では、

  • Gitとは
  • GitとGitHubとの違い
  • Gitの様々な機能

について解説していきます。これからGitを始めたい方も、機能をおさらいしたい方も、ぜひこの記事をご覧ください!

Gitとは

まずはGitそのものについてを知っておきましょう。Gitは、ソースコードのバージョンを管理するためのツールです。複数人で開発をする場合は、誰が、いつ、どの部分を、どのように変更したのか、分からなければなりません。

そこでこのGitを使ってバージョンを管理することで、開発をしやすくします。もちろん一人で開発をする場合でも、Gitは便利に使うことが出来ます。

ある機能を加えたり、修正を行った段階ごとにGitで記録をしていくことで、あのときの状態に戻したい!と思った場合も簡単に戻すことが出来ます。

Gitにはローカルリポジトリリモートリポジトリと呼ばれる2つのリポジトリがあり、このリポジトリに変更した履歴をどんどん追加していきます。

各自のマシンにはローカルリポジトリがあり、ここに変更を追加したあと、一つのサーバーにあるリモートリポジトリを、ローカルリポジトリと同じ状況にします。

そうすることで、複数人で開発をしている場合でも、同じソースコードを扱いながら作業が出来るようになります。

GitとGitHubの違い

ここでよく名前を見るGitHubとの違いについても見ていきましょう。Gitは先程も解説したように、分散バージョン管理システムというツールそのものでした。

このGitをベースとした、皆が書いたコードを自由に見たり、修正すべき部分を指摘しあったりすることが出来るWebサービスがGitHubです。

GitHubにはフォークプルリクエストという2つの特徴的な機能があります。

フォークでは、他人が書いたコードのリモートリポジトリを、自分のリモートリポジトリにコピーすることが出来ます。また、プルリクエストは開発者のローカルリポジトリでの変更を、他の開発者に知らせる機能です。

この2つの機能によって、開発に加わりたいリモートリポジトリがあれば、それをフォークしてローカルリポジトリでコードを編集、さらにフォーク元のリモートリポジトリにプルリクエストを送ってコードを見てもらうという流れが出来上がります。

これによって、オープンソースなコードを開発するスピードがとても早くなります

Gitの機能

それではGitHubのベースになっているGitについて、その機能を見ていきましょう。

クローン

クローンをするとリモートリポジトリをコピーしてローカルリポジトリを作ることが出来ます。誰かが作ってあったり、これから開発する準備として用意されたリモートリポジトリをクローンすることで、実際の開発に取り組むことが出来ます。

自分でリポジトリを作らない場合は、このクローンが最初の作業になることも多いです。詳しくはこちらの記事をご覧ください。

コミット

クローンが出来たら、コードを削除したり、追加したりすると思います。その変更したコードに一区切りがついたら、次はコミットをしましょう。コミットは、ローカルリポジトリに変更したファイルを保存することを言います。

コミットするファイルはインデックスと呼ばれる部分に登録されるのですが、クライアントによってはコードに変更を加えると自動的に登録されます。

コミットにはコミットメッセージと呼ばれる、どこをどのように変更したのかを記録するメッセージが必要になります。基本的には、

変更内容のタイトル
(空行)
変更をした理由

といったようにコミットメッセージを追加しておきます。詳しくはこちらの記事をご覧ください。

プッシュ

先程コミットしたファイルは、ローカルリポジトリの中に保存されている状態です。ローカルリポジトリで保存した内容をリモートリポジトリに保存するためにはプッシュをしましょう。

プッシュを行うことで、リモートリポジトリで変更した内容と、ローカルリポジトリの内容を同じものにすることが出来ます。詳しくはこちらの記事をご覧ください。

マージ

ここで一旦、マージとは何かについて確認しましょう。マージとはブランチとともによく使われる操作になります。

ブランチと呼ばれる変更履歴の一連の流れがあり、それぞれ別のブランチの変更履歴を、一つのブランチにまとめてしまうことをマージと言います。マージをすると両方のブランチに残していた変更履歴がどちらも反映されます。

詳しくはこちらの記事をご覧ください。

プル

先程プッシュされて最新の状態になったリポジトリにあるコードを、また誰かに開発してほしい場合、すでにそのローカルリポジトリがあれば、プルをしてもらいましょう。プルをすることでローカルリポジトリとの差分を取得することが出来ます。

ただし、プルでは差分を取得するだけでなくマージをしてしまうので、マージをしたくない場合は後述するフェッチを使いましょう。詳しくはこちらの記事をご覧ください。

フェッチ

先程のプルを使うと差分をマージしてしまうということがわかりました。そこでフェッチを使うと、リモートリポジトリの内容をマージせずに確認だけをすることが出来ます。

確認してマージをしたい場合は、もう一度プルをすることでマージをすることが出来ます。詳しくはこちらの記事をご覧ください。

まとめ

この記事ではGitとは何か、GitとGitHubの違い、Gitの基本的な操作についてを解説しました。Gitについてなんとなくは分かって頂けたでしょうか?

特に、GitとGitHubとの違いは初心者が引っかかりやすい部分でもあるので気をつけましょう。またGitの操作についても、それぞれのコマンドについては侍エンジニア塾の記事で公開しているので、ぜひご覧ください!

LINEで送る
Pocket

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通して、プログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

cta_under_btn

書いた人

ryo

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説