ノウハウ

今さら聞けない!Gitで行うバージョン管理方法

Time 2023年6月5日

 

ファイルのバージョン管理をしておらず、「間違って過去のファイルを上書きしてしまった」「その結果、大事なデータを消してしまった」という経験のある方は比較的多いのではないでしょうか。

 

ひとりもしくは少人数での開発であれば、わざわざバージョン管理システムを導入しなくても、リカバーすることは出来るかもしれません。しかし、大規模なプロジェクトとなれば開発に関わるメンバーは大人数となるため、ファイル管理を徹底しなければ、プロジェクトを円滑に進めることが難しくなります。そのため、バージョン管理システムの導入がまだという企業は、早急にシステム利用を考えなければなりません。

 

そんなバージョン管理システムのひとつに「Git」と呼ばれるものがあります。Gitを活用してバージョン管理を行い、業務効率化を図る企業は非常に増えているものの、バージョン管理に疎い企業などの場合、「Gitって何ができるのかまだよくわからない」という方もいることでしょう。

 

この記事では、Git初心者に向けてGitで行うバージョン管理方法について説明していきたいと思います。加えてGitのインストール方法、初期設定方法についても紹介していますので、ぜひ参考にしてください。

 

Gitって何?

Gitとはプログラムソースコード等の変更履歴を記録するための分散型バージョン管理システムを言います。

 

Linuxのカーネルのソースコードを管理するためのシステムとして、2005年にLinuxの生みの親であるリーナス=トーバルズが開発をスタートさせました。現在は日本人エンジニアの濱野純氏によってメンテナンスが行われています。

 

Gitを利用すればファイルをいつでも更新履歴として保存できるため、更新履歴をたどって過去に編集したファイルに戻ることが可能ですし、どこを編集していたか過去の編集との差分を把握することができます。

 

CMSで有名なWordPressもページ編集では過去履歴からファイルを復元できますが、それと同様なものということであれば理解できる人もおおいのではないでしょうか。

 

Gitでは自身のローカル環境(ローカルリポジトリ)で編集したファイルをリモート環境((リモートリポジトリ)にアップすることで、複数人で同じファイルを編集することができます。その際、他の人が編集したファイルを更新(上書き)しようとするとアラートが発せられ、衝突を避けられるといった機能が備わっているので安心してファイル編集を行える点が特徴です。

 

バージョン管理はなぜ必要?

バージョン管理とは、使用しているファイルに対し「いつ」「誰が」「どこを」変更したのかについて記録を残し管理することをいいます。バージョン管理が必要と言われるようになった背景には、大規模プロジェクト等で複数人が同じファイルを編集する機会が増えたことで、前述のような「ファイルの上書き(先祖返り)」をしてしまうことが多くなっていることがあるようです。

 

バージョン管理の対象となるファイルはさまざまで、ソースコードやドキュメント、画像ファイル、動画ファイル、音楽ファイルなどさまざまな形式のファイルを管理することができます。

 

Gitは分散型バージョン管理システム

先ほどGitは「分散型バージョン管理システム」であるとお伝えしましたが、そもそも分散型バージョン管理システムとはどのようなものを言うのでしょうか。

 

分散型バージョン管理システムとは、メインサーバを保有せず、編集権限を持つ誰もがそれぞれリポジトリを設置、他社のリポジトリと共有することができるシステムをいいます。普段は自分のローカルリポジトリを使って作業を行い、タスクが完了した段階でリモートリポジトリにアップロードしてマージするというのが、複数人で作業をする場合のGitの使い方です。

 

なお、分散型バージョン管理システムにはほかに「Mercurial」といったものがあります。

 

集中型バージョン管理システムもある

一方、分散型バージョン管理システムの対極に、集中型のバージョン管理システムといったものが存在します。

 

集中型バージョン管理システムとは、リポジトリは1つに集約されており、共同リポジトリから編集を行うソースコードを落として編集し、編集を終えたらもとの共同リポジトリに直接反映するかたちをと取ります。集中型バージョン管理システムは1つのリポジトリに編集内容をまとめていくので、管理は非常にシンプルです。しかし、編集作業自体は複雑となってしまい、衝突が起きやすいのが難点です。また、オフライン環境だと変更管理できない点もネックです。

 

集中型バージョン管理システムには、「SVN」「CVS」といったものがあります。

 

GitHubとは違う点に注意

Gitについて調べていると、GitHubという言葉に出会うことがあります。

 

このGitHubとは、世界中の開発者が、自ら作成したプログラムソースコードやデザインなどを保存したり公開したりすることができるサービスをいいます。GitとGitHubの違いですが、Gitがバージョン管理システムであるのに対し、GitHubはGitを使ったホスティングサービスである点が異なります。

 

Gitで知っておくべき用語

さてここからは、Gitを利用するうえで知っておくべき用語、知っておくと便利な用語について見ていきたいと思います。

 

リポジトリ

先ほどから再三登場している「リポジトリ」という言葉ですが、英語では「repository」、「倉庫」または「貯蔵庫」といった意味を持ちます。Gitにおけるリポジトリとは、ファイルを保管する場所または、ファイル編集を行う場所を指す言葉です。

 

このリポジトリですが、Gitでは「ローカルリポジトリ」と「リモートリポジトリ」の2つが存在します。

 

ローカルリポジトリは自分のPC上にあるファイル保存場所を指し、リモートリポジトリとは、専用のサーバに設置された共有のファイル保存場所を指します。

 

Gitでは、ローカルリポジトリとリモートリポジトリの間を行ったり来たりしながらファイル編集を行っていきます。普段の作業はローカルリポジトリでとなり、編集が終了したファイルはリモートリポジトリにアップする流れとなります。

 

Gitの主要コマンド

次にGitで使用する主要コマンドについて簡単に説明しておきましょう。

 

commit

git commitとは、編集したファイルをGitに登録するコマンドのことです。Gitのリポジトリに編集内容を保存するためにはこのgit commitを行う必要があります。ファイルの編集だけを行ってgit commitを行わなければGitに登録されません。

 

push

git pushとは、リモートリポジトリにコミットした履歴を更新させるためのコマンドのことです。Git pushを実行することでリモートリポジトリに変更した履歴がアップロードされ、ローカルリポジトリと同じ状態に更新されます。

 

pull

git pullとは、リモートリポジトリにある最新データをローカルのブランチに統合するコマンドのことです。git pullはgit fetch、git merge、FETCH_HAEDのショートハンドとして動作します。

 

add

git addとは、作業ディレクトリ内で行われた変更をインデックス(ステージングエリア)に追加するコマンドのことです。ファイルをステージングエリアに追加したのちgit commitコマンドでコミット、git pushコマンドでリモートリポジトリにアップするといった流れになります。

 

Gitのインストール方法

Gitを利用するためにはまず、Gitをインストールしなければなりません。

 

ここではWindows版のGitのインストール方法について順を追って説明していきます。

 

インストール手順

まずは「git for windows」の公式サイト(URL:https://gitforwindows.org/ )にアクセスして、Downloadボタンを押しましょう。

 

ダウンロードしたインストーラーをクリックし、起動します。

 

 

起動するとセットアップ画面が展開されます。内容に同意したらNextをクリックします。

 

 

Gitにインストール先を指定します。特に変更しなくても問題ありませんので、Nextをクリックして先に進みましょう。

 

 

こちらも、そのままNextをクリックして先に進みます。

 

 

そのままNextをクリックして先に進みます。

 

 

エディタを選択します。使用するエディタを選択してNextをクリックします(任意のものを選択しましょう)。

 

 

下の、「Override the default branch name for new repositories」にチェックを入れてNextをクリックします。

 

 

真ん中の「Git from the command line and also from 3rd-party software」にチェックを入れてNextをクリックしましょう。

 

 

「Use bundled OpenSSL」にチェックを入れてNextをクリックします。

 

 

「Use the OpenSSL library」 にチェックを入れてNextをクリックしましょう。

 

 

「Checkout Windows-style, commit Unix-style line endings」にチェックを入れてNextをクリックしましょう。

 

 

「Use MinTTY (the default terminal of MSYS2)」にチェックを入れて、Nextをクリックしましょう。

 

 

「Default (fast-forward or merge)」にチェックを入れて、Nextをクリックしましょう。

 

 

「Git Credential Manager」にチェックを入れて、Nextをクリックしましょう。

 

 

両方にチェックを入れ、Nextをクリックしましょう。

 

 

チェックボックスは、空の状態のままInstallをクリックしましょう。

 

 

これでInstrallが完了しました。Finishを押すと終了です。

 

Gitの初期設定

続いてGitの初期設定を行っていきます。インストールされたGitの中から「Git Bash」をクリックしましょう。そうすると以下のような画面が登場します。

 

 

この画面を使って初期設定を行います。初期設定で行うのはユーザー名とメールアドレス設定です。

 

以下の画面でコマンドを入力、ユーザー名およびメールアドレスを設定しましょう(画面は一例です。それぞれご自身で設定したものを入力してください)。設定後、「git config user.name」および「git config user.email」を実行し、設定した内容が表示されたら初期設定は完了です。

 

 

 

まとめ

以上、Git初心者に向けたGitで行うバージョン管理方法やGitのインストール方法・初期設定方法についてご紹介しました。Gitは最初の段階では難しい用語が飛び交うため、とっつきにくいかもしれませんが、ふたを開けてみるとそれほど複雑でないことがわかっていただけたかと思います。

 

バージョン管理システムは、企業や作業者の業務効率を飛躍的に高めるツールのひとつです。デザイナーやプログラマーの方は、現在使用していなくても今後のプロジェクトで使用する機会があるかもしれませんので、ぜひ本記事を参考にGitの基本知識の習得だけでなく、環境構築まではできるようにしておきましょう。

 

 

マムズラボについて

マムズラボは、実務経験3年以上を有するプロフェッショナルが集まるクリエイティブ・マーケティングチームです。生活者目線と確かな経験・スキル、そして1,000名以上の圧倒的なリソースで貴社の課題解決を実現します。

プロジェクト実績

お問い合わせ先

仕事のご依頼・ご相談はこちらから