1-3. Git / GitHubとは

まず最初に、プログラムの書かれたファイルをソースファイルといいます。プログラムそのものをソース、またはソースコードや単にコードともいいます。

一般的にソースファイルやコードをどのように管理するのでしょうか。結論からいいますと、ExcelやWordのようにどこかのフォルダに保存しておいて都度編集といったことはしません。

プログラムの場合、保存や管理は一般的にバージョン管理システムというものを使います。

本章では、バージョン管理システムの1つであるGit(ギット)を解説し、次にGitのホスティングサービス(ネット上にあるGitを管理するサービス)であるGitHub(ギットハブ)について解説します。

バージョン管理システムの重要性

先ほど出てきた、ExcelやWordなどのドキュメント向けファイルを管理する例を取り上げてみましょう。

Aさんがファイルを新規作成、『ファイルA』とします。
BさんがファイルAをコピー、名称を『ファイルA_back』として
ファイルAを編集します。
CさんがファイルA_backを『ファイルA_back_20210507』と名称を
変更してファイルAを編集します。
Dさんが独自に作っていた『ファイルA』を上書きします。すると
BさんとCさんの苦労が水の泡、BさんCさんはDさんに激怒・・・

この話、笑い話ではなく、実はどの現場にもあり得ることです。

ビジネス系のドキュメントの場合は、多少の変化は問題ない場合があります。例えば行末に空白が1つ付いても激怒する人はそうそういません。

ところがプログラムはそうはいきません。なぜなら、空白が1つ付いただけでとたんに動かなくなる場合があるからです。一般的なドキュメントより、さらに厳密な管理が必要になります。

一般的にプログラミング(というよりシステム開発)において、ソース管理は人手ではなく専用のツールを使います。それがバージョン管理システムです。

Gitはバージョン管理システムの1つ

Gitは先ほど解説したバージョン管理システムの1つです。

バージョン管理システムは他にも多数あります。代表的なものでは、CVSやSVNなどがあります。CVSは古いシステムや言語を扱う現場でしか使っていません。

SVNもGitやGitHubと比較するとデメリットが多く、新たに立ち上がるプロジェクトにおいては採用されることは少なくなりました

よって、本講座でもバージョン管理はGitを使います。

GitとGitHubのちがい

端的にいうと、ソース管理が自分のPC内で完結するか、インターネット上において多数の人がコードを参照・編集できるようにするか、です。前者がGit、後者がGitHubです。

※自分のPC内のことをローカル環境といいます(超重要用語)。

今度はスマートにいうと、ローカルでのバージョン管理はGit、ネット上で管理して多数の人が扱えるようにしたホスティングサービスをGitHubともいえます。

本講座でのGitHubの使い方

本講座ではGitHubは以下のように使います。

ご自身のローカル環境(基礎編ではCloud9ですが)でGitを使ってソース管理
出来上がったらGitHubへ都度clone
質問時、講師がコードをレビュー、返却

実ファイルをslackでやりとり、といったことはしません。

面倒とは思うかもしれませんが、現場はほぼGitHubを使ってソース管理をしていますので、本講座で慣れておくのは必須と思ってください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です