GitHubでソースコードを管理 ~Laravelで動画投稿機能を作る①~

未経験者のためのPHP・Laravel講座

f:id:sakusaku57:20191231015958p:plain

すみません、、、まだ開発には入りません。

今回は、プロジェクト管理をするアプリ「GitHub」を導入していきます。

 

エンジニアになると、ほぼ確実に何かしらのプロジェクト管理ツールを使っています。

(ちなみに私の現場では、「Backlog」というツールが使われています。)

 

未経験の時には、なかなか便利さに気づかないと思いますが、慣れるために使っていきましょう!

就職活動の時もGitHubのURLを見せればアピールになりやすいと思います!

 

GitHubとは何か?

GitHubは、gitを利用したソースコードの管理ツールです。

「あれ?gitってなんだっけ?」という方は、過去記事をご覧ください。

www.maji-peace.com

 

GitHubを使う理由をざっくりと説明すると、

「複数人で開発する時に、直感的に(画面で)ソースコードの管理ができて、効率的に開発を進めていける」からです。

 

まあ、百聞は一見に如かずということで、早速やっていきましょう!

GitHubの登録方法・手順

Build software better, together
GitHub is where people build software. More than 50 million people use GitHub to discover, fork, and contribute to over 100 million projects.

 

  • ログインしたらSign upをクリック

f:id:sakusaku57:20191230200530p:plain

 

  • アカウント作成

ユーザ名など入力して、Select a planのボタンを押します。

f:id:sakusaku57:20191230200832p:plain

 

  • プランを決める

今回は無料プランで行きます。

有料との違いは、共同編集者が3人までだったり、ストレージが500MBだったりという感じです。

f:id:sakusaku57:20191230201552p:plain

 

次のページはアンケートなので、登録してもスキップしても問題ありません。

 

  • メールを確認して登録完了

登録したメールアドレスに確認メールが届いていると思います。

Verify email adressをクリックして登録完了です!

f:id:sakusaku57:20191230202604p:plain

 

GitHubのリポジトリを作成

メールのボタンをクリックすると以下のページに遷移すると思います。

(行けない場合は、URLをgithub/newにすると遷移できると思います)

f:id:sakusaku57:20191230203003p:plain

 

Repository nameは、何のプロジェクトかわかりやすいように「postmovie」にします。PublicとPrivateは「Private」にします。(Publicにすると世界中の誰でも見れるようになります)

他はデフォルトのままにして、画面下の「Create repository」をクリックします。

 

  • Laravelの環境をリポジトリにプッシュ

 

f:id:sakusaku57:20191230232600p:plain

この画面に移動すると思いますので、赤い枠に囲まれたコマンドを打ち込んでリポジトリを作ります。

ターミナルを開いて以下のコマンドを入力してください。

$cd Desktop/app/postmovie //postmovieフォルダに移動
$echo "# postmovie" >> README.md //README.mdファイルに""内のテキストを追記
$git init //gitの初期化(スタートの合図のようなもの)
$git add README.md //README.mdのみをaddしてcommitの準備
$git commit -m "first commit" //自分のPC上のgitにコミット
$git remote add origin https://github.com/{設定したユーザ名}/postmovie.git //GitHubのリポジトリにコミット
$git push -u origin master //GitHubのmasterというブランチにプッシュ(これでGitHubに入りました)
Username for 'https://github.com': //設定したユーザ名を入力
Password for 'https://{設定したユーザ名}@github.com'://設定したパスワードを入力
Branch 'master' set up to track remote branch 'master' from 'origin'.//最後にこれが出ればOK

 

  • GitHubを確認

f:id:sakusaku57:20191230233532p:plain

 

再度、GitHubの画面をみてみてください。

Codeタブを見ると、今回プッシュしたREADME.mdがあると思います。

 

以上のような流れで、開発においてはコードを追加・修正するたびにプッシュしていくことになります。

 

最低限知っておきたいGitコマンド

それでは、これまでに作ってきたLaravelのフォルダである「postmovie」をプッシュする過程で、最低限のGitコマンドを紹介していきます。

 

ファイルをgit管理にするための「git add {ファイル名}」

このコマンドは、ざっくりいうと「addするフォルダ・ファイルをgitの管理にしますよ〜」という意味です。

逆に言えば、「addしないファイルはgit上では管理しない」ことになりますので、最終的にGitHubには登録されないことになります。

また、addをしたファイルのみcommitができるようになります。

 

今回はフォルダにあるすべてをaddしますが、通常はすべてaddすることはなく、修正したファイルだけをaddするのがベターです。

$pwd //postmovieのディレクトリにいることを確認
/Users/{ユーザ名}/Desktop/app/postmovie
$git add . //今のフォルダにある全てをaddする

 

 実際にリポジトリに登録する「git commit(コミット)」

git addするだけだと、リポジトリには反映されません。

例えていうならば、git addで控え室に移動して、git commitで登場というイメージでしょうか。

ちなみに コミットするときには、オプションをつけることができます。

GitHubに登録する流れで入力した「git commit -m」の-mというのは、メッセージを追加するという意味です。

メッセージには、「何をコミットしたのか?」を簡潔に書きます。(オプションのコマンドですが、複数人開発では必須です)

 

このメッセージの仕方は、現場によってルールがありますが、

つまりは「他の人に何のコードを追加・修正したのか?」をわかりやすく説明するためのものです。

$git commit -m "create laravel project" //コメントを追加してコミット

 

リモートリポジトリ(GitHub)に反映するための「git push」

「リモートリポジトリってなんやねん!」ということですが、「自分のPC上じゃない」と考えてもらえばわかりやすいです。

 

git commitしただけだと、自分のPC上のgitにしか反映されません。

これをGitHubで管理したいわけなので、git pushを使います。

$git push origin master //masterというブランチにプッシュする

 

「origin」「master」というワードが出てきました。

「origin」というのはリモートリポジトリのことです。

「master」というのはブランチのことです。

 

ブランチってなんぞや?ということですが、ざっくりと「軸」とイメージしてください。

この軸を分割して管理するのがGitです。

 

開発現場では、「master」で本番用のソースコードを管理。

「master」を元に「develop」というブランチを作り、開発用のソースコードを管理。

「develop」を元に「xxxxx」というブランチを作り、複数人のソースコードをそれぞれ管理。

という風にソースコードを管理していきます。

 

ブランチを作成する「git branch {ブランチ名}」

それでは、開発用にdevelopブランチを作り、developブランチに移動しましょう。

$git branch develop //developブランチを作成
$git checkout develop //developブランチに移動
$git branch //ブランチを確認
* develop
master

*が先頭についているのが、現在いるブランチです。

 

Gitコマンドをもっと知りたい方へ

Laravelの動画機能を作る上でもgitコマンドを使っていきますが、

もっと知りたい方は以下のサイトを参考にして練習してみてください。

 

サルでもわかるGit入門

サル先生のGit入門〜バージョン管理を使いこなそう〜【プロジェクト管理ツールBacklog】
ようこそ、サル先生のGit入門へ。Gitをつかってバージョン管理ができるようになるために一緒に勉強していきましょう!

コメント

タイトルとURLをコピーしました