リポジトリとは?GitやSVN等のバージョン管理システムで使われる履歴保管場所

こんにちは、たびんちゅうプログラマーの中澤です。

今までは個人の開発が多かったのでバージョン管理システムについて全く触れてきませんでした。

しかし、今は1件100万円単位の案件を扱うことも少なくないので、そろそろ共同開発がスムーズに進むバージョン管理システムについて学ばなきゃと思い調べていると、早速「リポジトリ」という単語に困惑し始めています。

GitやSVNなどのバージョン管理システムについて勉強してると、必ず「リポジトリ」という単語に引っかかり、検索して調べている方も多いと思います。

リポジトリを一言で表現すると「保管場所」です。

そんなリポジトリについて深掘りしていきます。

リポジトリとは

データを一元管理する保管場所で、各工程の成果物を管理するのが特徴です。

「各工程の成果物を管理」とは、言い換えると履歴を管理することが可能です。

例えば、複数人で1つのシステムを開発していると、修復が重複したり、別の人が更新したファイルを誤って上書きしてしまうことが多々起きます。

そんな時に、誰がいつ変更したかの履歴があれば修復の重複が起きることはなく、また履歴が管理されていれば誤って上書きしても元に戻すことができるのです。

つまり、リポジトリとはただの保管場所するのではなく、変更した履歴が閲覧可能な保管場所ということです。

リポジトリの種類

リポジトリは使用される状況によって名称が異なります。

下記が有名どころのリポジトリの種類です。

使用される環境 リポジトリ名
Git リモートリポジトリ
ローカルリポジトリ
Linux(yum) yumリポジトリ
大学・研究機関 学術機関リポジトリ

上記のように、リポジトリはそれぞれ名称が異なりますが、基本的な意味は「保管場所」ということです。

Gitのリモートリポジトリとローカルリポジトリ

ここでは一例として、Gitの2つのリポジトリについて説明していきます。

リモートリポジトリ

リモートということで、専用のサーバーで複数人で共有するリポジトリです。

ほとんどの人がリモートリポジトリを活用することになると思います。

Gitのリモートリポジトリをより活用しやすくしたサービスがGithubです。

ローカルリポジトリ

ユーザーのマシン上で使用するリポジトリで、基本的には1人で使用します。

Linuxというコンピューターを管理するソフトウェアを用いて作成することができます。

まとめ

リポジトリとは「保管する場所」という認識で大丈夫です。

プログラミング学習って本当に覚えることばかりで日々勉強ですが、日進月歩していきましょう。

Related

優秀なエンジニア募集

現在、ウェブアプリケーション開発・システム開発の案件を多数保有しており、受託案件希望の優秀なエンジニアを随時募集しております。

そのため、受託希望のエンジニアの方は下記LINE@よりご登録頂き、チャットで簡単な自己紹介をお願いいたします。

使用言語等は指定はありませんので、お気軽にご登録ください。

中澤寛の顔写真

中澤 寛

ラクロスで世代別日本代表になり、旅がしたいというただ一心で、就職せずにとりあえず路上で靴磨きの商売を始める。

その後、独学でプログラミングを学び、ウェブアプリケーション・システム開発を受託で請負、200以上の開発に携わる。

【使用言語】 HTLM・CSS / JavaScript / PHP / Python 。