ロゴ | PARAFT [パラフト]
clear
  1. 気になる求人情報にエントリーできる
  2. 柔軟な働き方の企業からスカウトを受け取れる
  3. コメント投稿とめくれバ!投票に参加できる


clear
ロゴ | PARAFT [パラフト]

上記メールアドレス宛に
仮登録完了のお知らせ
メールを送りましたので、内容を確認し
記載されているURLから本登録にお進みください。

もしメールが来なかった場合は

  1. ご入力いただいたメールアドレスが間違っている
  2. お送りしたメールが迷惑メールフォルダに届いてしまっている
  3. 登録済みのメールアドレスである
clear

clear
ロゴ | PARAFT [パラフト]

パスワード再設定

アカウントの登録メールアドレスをご入力ください。パスワードリセット用のメールをお送りします。


clear
ロゴ | PARAFT [パラフト]

パスワード再発行

ご入力いただいたメールアドレス宛に、パスワードのリセットのご案内をお送り致しました。
メールに記載されているURLからパスワードの再発行を行ってください。

メールが届かない場合、ご入力いただいたメールアドレスをご確認いただき、再度パスワードのリセット手続きを行ってください。

パラフト パラフトロゴ

GitHubとはの記事

初心者でもわかる特徴と利用するメリット・使い方【入門編】:r000021003599 | PARAFT [パラフト]

2021.02.10

GitHubとはの記事2021.02.10

GitHubとは?

初心者でもわかる特徴と利用するメリット・使い方【入門編】

keyword: GitHubとは 入門 使い方 初心者 フリーランス

このエントリーをはてなブックマークに追加
GitHubとは、IT現場でシステム開発を担当している人にとって、なくてはならないツールのひとつです。ただ、初心者にとっては、なぜ必要なのかがイメージしにくいかもしれません。本稿では、初心者向けにGitHubの特徴や利用するメリット、GitHubの構造とプログラム管理の概念について解説します。最後に、GitHubの具体的な使い方についても触れますので、GitHubがこれから必要となる方はぜひご覧ください。

2021.02.10 文章 / PARAFT編集部

GitHubとはバージョン管理のWebサービス

GitHubとは、プログラムのソースファイルや仕様書ファイルなどのファイルをバージョン管理するGitというシステムを利用した、無料のWebサービスです。

自分のソースコードやデザインデータなどを作った世界中の人々は、GitHubを利用してデータを格納および公開します。

GitHubでは、保管庫の役割を持つ「リポジトリ」を作成してそこにデータを格納します。

リポジトリは基本的にすべて公開されますが、有料サービスを使うとプライベートなリポジトリを作成することも可能です。

GitHubの特徴


GitHubは、バージョン管理などの基本機能にGitを利用していますが、GitHub独自の機能も備えています。

例えば、Gitは基本的にコマンドラインで利用しますが、GitHubはWebブラウザやデスクトップ用ソフトウェアを使い、画面上で操作を進められます

プロジェクト整理・管理の機能やwiki・タスク管理ツールなど、作業のコラボレーションがしやすい機能も、GitHubならではです。

また、Gitは一人用のバージョン管理システムですが、GitHubは共同作業が前提であり、ソーシャルコーディングができる機能も提供しています。

例えば、他の開発者とソースファイルをやり取りできる機能(フォーク・プル・マージなど)は、ソーシャルコーディングにとても便利です。

GitHubを利用するメリット


GitHubを利用するメリットは、主に以下の3点です。


  • 他人と共同してシステム開発が進められる

  • 複数人でソースを編集する場合に効率が良い

  • 転職時にGitHub情報を提出して技術・能力を評価してもらえる



他人と共同してシステム開発が進められる


他人と共同してチームを組み、協力しながらシステム開発を進められる点は、GitHubを利用するメリットのひとつです。

タスク管理ツールやプロジェクト管理機能など、共同作業をしやすいツールが揃っているので、密にコミュニケーションを取りながら開発を進められます。

複数人でソースを編集する場合に効率が良い


GitHubには、複数の人で同じソースを編集する場合に、便利なコマンドをいくつも用意しています。特に便利なコマンドは、フォーク・プルリクエスト・マージの3種類です。

フォークは、オリジナルのリポジトリ(ソースコード)をコピーして編集する機能で、編集権限のないソースでも編集できます。

オリジナルのソースは編集権限がないため、間違って編集してしまうことはありません。

コピーして編集したソースコードをオリジナルに反映する場合は、プルリクエストを利用します。

プルリクエストは、オリジナルのソース所有者に対して、修正の反映をお願いする機能です。

プルリクエストで編集されたソースコードを受け取ったソース所有者は、編集内容を確認して、オリジナルに反映しても問題ないかどうか検証を行います。

検証の結果、オリジナルソースに反映しても問題ないと判断したら、ソース所有者はマージを使ってオリジナルに編集結果を取り込みます。

ソース所有者がはっきり決まっていて、所有者がオリジナルソースの最新版に対して責任を持つというイメージです。

この仕組みにより、人の編集結果を上書きしてしまうというミスを自然と防げます

また、ソースの編集内容を第三者であるソース所有者が確認するためコードレビューとなり、品質面で良い効果がある点も、GitHubを使うメリットといえるでしょう。

転職時にGitHub情報を提出して技術・能力を評価してもらえる


システム開発以外のメリットとしては、転職時に自分の技術レベルや能力をGitHubの内容で伝えることができる点です。

GitHubを提出することで、どのようなプロジェクトに参画し、どのようなソースコードを書いてきたかについて、採用側は自由に確認できます。

特に転職先で求められる技術を用いたソースコードを書いたことがある場合は、積極的にGitHub情報を伝えるといいでしょう。

※2021年1月29日、大手銀行の業務システム用ソースがGitHub上で公開されるという情報漏洩事故が話題になりました。GitHubで公開する場合は、あくまでも個人で作成したソースに限るようご注意ください。

GitHubの構造とプログラムソース管理の概念

GitHubを利用するには、基本的な構造と、プログラムソース管理の概念を理解しておく必要があります。

これらを理解するため、ローカルリポジトリとリモートリポジトリ、コミットとプッシュ、ブランチの概念について見ていきましょう。

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


リポジトリとは、各種ファイルの保管庫のようなものです。

リポジトリの中には、オリジナルのソースファイルがバージョン管理された状態で格納されています。

リポジトリは、指定に応じて最新版や指定のバージョンでソースファイルを取得できる、という仕組みです。

GitHubはインターネット上にあり、GitHub上のリポジトリはリモートリポジトリと呼ばれます。

利用者は、リモートリポジトリからローカルマシンにリポジトリ全体を取得します。

このときローカルマシンに保存されるリポジトリのことをローカルリポジトリと呼びます。

ソースの修正や動作確認などはローカルリポジトリで行い、動作確認をしたソースはリモートリポジトリに反映します。

コミットとプッシュ


ローカルリポジトリでソースを追加・編集するだけでは、正確にいうとローカルリポジトリには反映されません

ローカルリポジトリに最新版として登録し、編集内容をバージョン管理対象とするには、ローカルリポジトリへのコミットが必要です。

コミットでローカルリポジトリに編集内容を反映した後、動作確認などを行ってリモートリポジトリにアップロートする場合は、プッシュを利用します。

プッシュまで行って、初めてリモートリポジトリに編集内容が反映されます。

ブランチの概念


リポジトリは、ソフトウェアのリリースの都合上、枝分かれさせることがあります

枝分かれさせたリポジトリのことはブランチ(木の枝、という意味)と呼び、開発してどんどん更新していきます。

最新版のソースファイルを管理するオリジナルのリポジトリは、トランクと呼ばれます。トランクとは、「木の幹」という意味です。

ブランチの開発が終了し、リリースされた場合は、オリジナルのリポジトリに開発内容を反映し、リリース版の最新ソースを管理します。

ブランチの開発内容をトランクに反映する場合にも、先述したマージ機能を利用します。

ブランチとフォークは、リポジトリをコピーする点では似たところがあり、少し混乱するかもしれません。

両者の大きな違いは、ブランチはあくまでもオリジナルリポジトリの管理下にあり、フォークはオリジナルの管理外になる点です。

ブランチの修正内容のマージは、特にプルリクエストをしなくても可能です。

一方、フォークしたソースの修正内容は、プルリクエストをしないとマージしてもらえません

ブランチの管理やmergeの方法などは、開発プロジェクトごとに決まっているため、そのルールに従いましょう。

GitHubの使い方~リポジトリの作成からソースの反映まで

GitHubの構造とプログラムソース管理の概念を確認したら、実際にGitHubを使ってみましょう。

GitHubを初めて使うことを前提として、以下の順番で使い方を説明します。


  • アカウントの登録とリモートリポジトリの作成

  • ローカルリポジトリ取得

  • ローカルで編集したソースをリモートリポジトリに反映



上記の使い方を一度試すことで、ローカルで修正したファイルをオリジナルのリポジトリに反映する基本の手順が理解できます

アカウントの登録とリモートリポジトリの作成


まずは、GitHubのアカウントを登録します。

以下に示すGitHubのサイトにアクセスしてみてください。

GitHub https://github.co.jp/

すると「GitHubに登録する」というボタンが表示されるのでクリックします。

「Create your account」という画面が表示されるので、Usernameとしてメールアドレスを入力し、Passwordを入力します。

Email preferencesはチェックを入れても入れなくても構いません。

Verify your accountは、ロボットでないことを証明するための質問に答えます。

Verify your accountの質問に正解すると、「Create account」ボタンがクリックできるようになるため、クリックして登録を進めましょう。

すると、登録したメールアドレスあてにベリファイ用のメールが届くため、メール内の「Verify email address」をクリックしましょう。


ログイン画面に遷移するため、ユーサー名またはメールアドレスと、パスワードを入力してログインしましょう。

ここまでで、GitHubのアカウント登録完了です。

ログインすると、新しいリポジトリを作成する画面が表示されるため、早速リポジトリの情報を入力しましょう。


  • Repository name:リポジトリ名を入力

  • Description:リポジトリの説明(オプションなのえ入力しなくてもいい)

  • Public:無料プランの場合はPublicのみ利用のため、こちらを選択



その他、いくつかチェックボックスがありますが、チェックを入れなくても「Create repository」ボタンをクリックできるようになります。

情報入力が終わって「Create repository」ボタンがクリックできる状態になったら、ボタンをクリックしてリポジトリを作成してください。

作成完了して遷移した画面上部の「Quick setup」の欄に表示される情報は、作成したリポジトリへの接続情報なのでメモするようにしましょう。


  • HTTPS:作成したリポジトリにHTTPS経由で接続するアドレス表示

  • SSH:作成したリポジトリにSSH経由で接続するアドレスを表示



「Set up in Desktop」ボタンを押すとローカルパソコンにインストールして使用できるソフトウェア「GitHub Desktop」のダウンロードページに遷移します。

画面が使いやすいので、ダウンロードからインストールまで済ませましょう。

リモートリポジトリからローカルリポジトリ取得


リモートリポジトリからローカルリポジトリを取得するには、GitHub Desktopを起動して「+」ボタンをクリックします。

すると、Add(既存のローカルリポジトリの追加)・Create(新規ローカルリポジトリの作成)・Clone(リポジトリのクローン)が選べます。

初めてGitHubを使う場合や、新しく作ったリモートリポジトリをローカルマシンにダウンロードする場合はCreateを選択しましょう。

既存のローカルリポジトリに対して、リモートリポジトリの最新版を取り込む場合は、Addを選択してください。

ちなみにCloneとは、自分の所有するリモートリポジトリのコピーをローカルに作成するもので、フォークと似ています。

フォークはリモートリポジトリの所有者が他人である点が、クローンとの相違点です。

いずれかのボタンをクリックすると、ログインユーザーのリポジトリが表示されます。

Createしたいリポジトリを選択して「Create (リポジトリ名)」のボタンをクリックしましょう。

ローカルで編集したソースをリモートリポジトリに反映


ダウンロードしたローカルリポジトリに対して編集を行ったソースを、リモートリポジトリに反映しましょう。

ファイルを編集した後、GitHub Desktopを起動すると画面上部に「Changes」ボタンが表示されます。

「Changes」ボタンをクリックすると、変更したファイルの一覧が表示されます。

「summary」にコメントを入力すると、画面下の「Commit to master」ボタンがクリックできるようになり、クリックするとファイルがコミットできます。

ここまででコミットしたファイルは、ローカルリポジトリに反映された状態です。

コミットしたファイルをリモートリポジトリに反映するには「同期」を行います。

リモートリポジトリとの同期は、画面右上の「Sync」ボタン(最初に同期する際は「Publish」)をクリックするだけです。

同期は、内部的にはリモートリポジトリの最新版を取得(プル)してローカルリポジトリの更新ファイルをプッシュしています。

Webブラウザからリモートリポジトリにアクセスすると、編集内容が反映されていることを確認できます。

WRITER

編集部チーム

PARAFT編集部

フリーランス専門のエージェントPROsheetの活用 GitHubとは、プログラムのバージョン管理を行うWebサービスです。 システム開発の現場では、運用ルールや操作マニュアルなどがありますが、自分でリポジトリを作成するところから実践することで、ツールの全容が理解できます。 GitHubの操作は、システム開発現場で求められるスキルのひとつとして指定されているケースも少なくありません。 自分1人で使っていると、他人と修正が被ったときの操作が理解しにくいので、複数アカウントを作っていろいろ試してみましょう。 IT系の職種としてフリーランスになる人は、PROsheetなどの専門のエージェントを活用することで、フリーランスとしてのスタートアップをサポートしてもらうことができます。案件の獲得方法やご稼働後のサポートを受けることができます。特にIT系の職種の案件が多くなっており、活用することで得られるメリットはたくさんあるので、まずは下記URLから登録面談にてお気軽にご相談ください。 PROsheetの会員登録ページへ飛びます

ー 「生きる」と「働く」を もっと楽しく。
初心者でもわかる特徴と利用するメリット・使い方【入門編】:r000021003599 | PARAFT [パラフト]

CAREER CHANGE

GitHubとは?

RELATED POST

フリーランス向け、週2~5日のお仕事紹介:PROsheet[プロシート] | PARAFT [パラフト]