【完全初心者向け】githubとは?わかりやすく簡単に

githubっておいしいの? githubって何がすごいの? gitとgithubの違いが知りたい...

こういった疑問に答えます。

Githubとは「ソースコードをみんなに共有する場所」



みなさんに前提をお伝えします。もしあなたがGitを知らなければ、Githubの前に「Gitの説明」が不可欠です。
そのため、まずGitについて書きます。知っている方は読み飛ばしてくださいね。

Gitとは「バージョン管理システムの1種」



「バージョン管理システムって何?」って方へ、バージョン管理システムとは「コード内容を誰が・いつ・どの部分を編集」したかについて「履歴を残すシステムのこと」です。

Gitの特徴とメリット



まずメリットから

その① : みんなで1つのソースコードファイルを編集できる



6人でこのアプリのコードを完成させたい! → Gitは「全員が上書きを同時にできる仕組み」。

その② : 過去の編集履歴を復元できる



あ、間違えて消しちゃった.. → Gitは履歴を簡単に復元できる。

その③ : 最新データがすぐわかる



みんなで上書きしたけど、どれが最新のコードファイル? → Gitは最新のデータがすぐわかる。

特徴

Gitは分散型で安全(リモートリポジトリ sync_alt ローカルリポジトリ)



分散型が安全である理由は、リモートリポジトリ(サーバ側)のデータが消えてもローカルリポジトリがあることで「データを失わずに済む」ためです。 ローカルリポジトリとリモートリポジトリの説明は下に書きます。

  • ローカルリポジトリ = PCにあるコード置き場
  • リモートリポジトリ = サーバー上1つだけの全員で共有アクセスできるコード置き場


ローカルリポジトリは「PCの持ち主」しかアクセスできませんが、リモートリポジトリは「全員」がアクセスできます。
そして、まさにこの「リモートリポジトリ」のことを「Github」というのです。(厳密にはGithubをもう少し分類できます。ただ、このように捉えて何の問題もありません)下にイメージを載せさせて頂きます。

Githubは「Gitのコード内容の履歴をチームで共有するためのツール」

Githubでできることは?



その① : コードの共有



「みんな!俺が作ったコード見てみてよ」

その② : コードを修正してもらう



「俺が作ったコードもっといい書き方ない?みんな教えて!」

その③ : みんな(世界中)にコードを公開できる



「世界中のみんなにもこのソースコード見せてあげよう!」

ちなみに、コードを全世界に共有できるGithubの仕組みをoss(open source software)といいます



英語ですが、GithubとGitのわかりやすいイメージがありましたので、下に載せます。イメージ作成者に感謝です。

簡単に順を追って説明します。

webアプリ開発を3人でする場合を想像してください。

  • 順序①:まず、Webアプリのソースコードをfile.txtに書きます(あなたのPC)
  • 順序②:次に、file.txtをローカルリポジトリに入れます(あなたのPC/Gitを使う)
  • 順序③:ローカルリポジトリからGithubにfile.txtたちを送ります(3人と共有のため)
  • 順序④:Githubからみんながfile.txtたちを手にいれ、修正します
  • 順序⑤:修正されたコードをあなたがGithubから手に入れます

この順序①から⑤をひたすら繰り返すのです。
実際にこの操作をする場合の具体的なコードは、下の記事に書きました。



おわりです〜。

2023/5/13

【完全初心者向け】githubとは?わかりやすく簡単に

githubっておいしいの? githubって何がすごいの? gitとgithubの違いが知りたい… こういった疑問に答えます。 Githubとは「ソースコードをみんなに共有する場所」 みなさんに前提をお伝えします。もしあなたがGitを知らなければ、Githubの前に「Gitの説明」が不可欠です。そのため、まずGitについて書きます。知っている方は読み飛ばしてくださいね。 Gitとは「バージョン管理システムの1種」 「バージョン管理システムって何?」って方へ、バージョン管理システムとは「コード …

ReadMore

2023/5/11

【完全初心者向け】Python副業の始め方【3ヶ月で達成できる】

Pythonで副業を始めようと考えている人「Pythonで副業の始め方を知りたいけど、いったいどこから手を付けたらいいんだろう…。やる気だけはあるけど、副業を受けるまでの手順がわかりません。具体的な方法を教えてください。」 こういった疑問に答えます 本記事の内容 Pythonで副業をする為に学習すべき分野【3つ紹介】 他言語を習得すべき理由【Pythonでは限界あり】 Pythonで副業を受けやすい分野【3つ紹介】 その① : Webスクレイピング その② : 自動売買 その③ : データ分析 その① : …

ReadMore

2023/5/8

YOUTUBEやるなら知るべき言葉【20つ解説する/簡単に説明】

こんにちは、さろむですブログ歴は「2ヶ月」になりました。2023年の年末まで毎日投稿しようと思います。 【結論】いきなりですが、覚えるべき20つの言葉を書きました FPS (frames per second) プロジェクト シーケンス 調整レイヤー レイヤー カラーマット カット リップル削除 エフェクト トランジション ディゾルブ キーフレーム テロップ レガシータイトル エッセンシャルグラッフィクス ネスト ラベル レンダリング プロキシ エンコード

ReadMore

2023/6/3

【徹底解説】Webマーケティングとは?〜専門用語を体系的に理解しよう〜

マーケティングは “物が売れる仕組みを作ること” と言われます。では、どのように “物が売れる仕組み” を作るのでしょうか。 結論 “消費者とのコミュニュケーション方法” が大事になってくると私は考えます。そこで、そもそも “コミュニュケーション” が何か気になる方へ以下で紹介します。「そんなのどうでもええわ」な人は、下にスライドし …

ReadMore

2024/7/21

タイムマネジメントのコツは「人生の目的から逆算」です【体験談あり】

本記事は3年前の私に向けた記事です。 本記事の内容 時間の攻略法は「目的から逆算する」 「目的から逆算する」を継続する方法 時間の攻略法は「目的から逆算する」 大前提をお伝えします 忙しいは言い訳 バイデン大統領や安倍元総理のスケジュール(以前まで公開されていた)を載せます。彼らは1分単位のスケジュールを365日こなしています。さらに、決して若く体力があるわけでもありません。要は「忙しい」と感じた際「本当に1分単位で忙しいか」を考え直すと「意外と忙しくない」という結論に多くの方が行き着くのではないでしょう …

ReadMore