💨

【3日目】GitHubを理解する。

2023/11/05に公開

https://zenn.dev/yama227/articles/165e035997a0c1

PHPマスターまでのステップ

PHPマスターまでのステップは以下を想定しています。

  1. GitHubを学ぶ
  2. HTML/CSSを学ぶ(ある程度理解はしていますがもう一度)
  3. JavaScriptを学ぶ
  4. PHPを学ぶ

以後、HerokuやLaravelなど学ぶべきものはたくさんあるとのことですが、順番にこなしていきます。

GitHubについて

GitHubとは、開発者が作成したファイルを保存・管理できるWebサービスのこと。

つい先日(だっけ?)Twitterのソースコードの一部が公開されましたが、公開先はGitHubだったのを覚えています。ここから「あー、GitHubってみんながソースコードを自由に見れる場所なんだな」と感じたのも覚えていますので、なんとなくは理解できているはずです。

Gitとの違い

Gitもファイルを保存・管理できるソフトウェアなのですが、GitHubのようにネット上に公開することはできません。

Gitはあくまでもローカル、GitHubはネット上に公開できるようになったサービスだと理解しています。

参照)【GitとGitHubの違い】「Git/GitHub?なんて読むん?」と思っていた初学者の私による初学者のためのアウトプット

GitHubの使い方

「さぁ、GitHubを使うぞ!」と意気込んだのはいいものの、使い方がわからなかったので流れを押さえておきます。

  1. リモートリポジトリを作成する
  2. PCにてファイルを作成する
  3. GitHubにファイルをアップロードする
  4. 自由にダウンロードできる環境を用意する

リモートリポジトリとは、GitHub上でアクセスできる保管庫のようなもので、それぞれのPCにはローカルリポジトリが作成されています。

  • リモートリポジトリ:ネット上でアクセスできる保管庫
  • ローカルリポジトリ:PCからしかアクセスできないクローズドな保管庫

超ざっくりとしたイメージですが、リモートリポジトリがGoodleドライブでローカルリポジトリがPCのフォルダです。(PCのフォルダはネット上からアクセスできませんが、Googleドライブはネット上からアクセスできます。)

ブランチとは

ちょーわかりやすいブランチの説明漫画があったので共有します。

みんなが触れる環境でガーっと開発を進め、もしエラーが出てしまったら全体に影響が出ます。そうならないように切り分けて作業ができる環境を作れる機能がブランチとのこと。

その他覚えておくべき用語)

  • インデックス:ローカルリポジトリに登録する準備をする場所
  • コミット:インデックス後のファイルをローカルリポジトリに登録する作業
  • プッシュ:ローカルリポジトリをリモートリポジトリにアップロードする作業
  • プル:リモートリポジトリをローカルリポジトリにダウンロードする作業
  • マージ:ブランチで行った変更を別ブランチに適用させる作業

GitHubを使ってみる

では実際にGitHubを使ってみます。(((といっても、GitHubに登録するだけで終わりますが

https://github.co.jp/

※昔にアカウントを作成していたらしく、ぬるっとログインできましたww

リモートリポジトリを作成してみる

GitHubでリモートリポジトリを作成してみます。

https://github.com/yama227/test-test

結構サラッと作れました。あとは、画面操作に慣れるだけでGitHubを自由に使えそうです。

ファイルを追加してみる

先ほどのリポジトリにファイルを追加してみます。

https://github.com/yama227/test-test/blob/main/hote.txt

hogeというファイルを追加しました。mainブランチにhogeというファイルを追加した感じですね。

ファイルをアップロードしてみる

先ほどのリポジトリに以下の画像ファイルをアップロードしてみます。

アップロードが完了しました。

https://github.com/yama227/test-test/blob/main/r1280x720l (3).jpeg

※ファイルではなくフォルダをアップロードする際はドラッグアンドドロップでアップロードする必要があります。

ディレクトリを作成してみる

GitHub上にディレクトリを作成してみます。

https://github.com/yama227/test-test/tree/main/yama

ブランチを作成してみる

GitHubでは「main」という名前のブランチがデフォルトで作成されるようになっています。ただ、開発用のブランチ名などをつけて、自社に適した形で開発を進めるべきです。

今回は「dev」という名前のブランチを作成してみます。

https://github.com/yama227/test-test/tree/dev

※「main」を派生元として「dev」ブランチを作成したため、「main」のファイルもトレースされています。が、「dev」の変更が「main」に影響を与えることはありません。

ファイルを比較してみる

ファイルを比較してみます。

https://github.com/yama227/test-test/commit/3d03c32d15503f90ceb291e695b165aca5ba3b07

比較したファイルをZipでダウンロードしてみました。(ここでは貼れないのでZipをダウンロードしたことだけ書いておきます)

Discussion