はじめ
本記事について、GitHubとgitの内容と違いを記載しています。
記事を書こうと考えたきっかけとして、知人との学習を目的として利用したことがきっかけでした。
これは自分自身の勉強用として投稿しているので、間違って認識していることもあるかもしれない
ですが、ぜひ他の人の参考になればと思います。
Gitとは
ソースコードのバージョン等の管理を行う管理システムツールのこと(分散型バージョン管理)
目的として、開発をしやすくしたり、PJを管理しやすくすることが主な目的となる。
利点と欠点
- 作成や編集したコンテンツを共有できる 利点
- GUI操作で操作も難しくない 利点
- コマンドを覚える必要がある 欠点
- 業界や会社によっては全く使用しない 欠点
GitHubとは
Gitを利用して様々なコンテンツを共有・公開・保存ができる共有サービスのこと。
「Git」の「ハブ:拠点・中心・集まり」という意味をもつ。
利点と欠点
- 作成や編集したコンテンツを共有できる 利点
- GUI操作で操作も難しくない 利点
- アカウントを作成するのが面倒 欠点
- サービスのGUIが英語ベースであり、用語などが理解が出来ていない場合は操作が難しい 欠点
用語
-
Push
このPushを実行すると、リモートリポジトリに自分の変更履歴がアップロードされて、リモートリポジトリ内の履歴変更がローカルリポジトリに変更履歴と同じ状態になる。
上記の内容を踏まえると、変更履歴がローカルとリモートで同じ状態になることを指す。 -
Pull
このPullを実行すると、リモート→ローカルを更新する際に行う操作。
リモートから最新の変更履歴をダウンロードしてきて、自分のローカルにその内容を取り込むことができる。 -
Pull Request(プルリク)
GitHubの操作機能の一つ。変更点を通知したり、分かりやすく表示したり、コードに関する内容が記載できる。 -
Clone
cloneはリモートリポジトリをローカルリポジトリへ複製することを指す。
cloneを実行すると、リモートリポジトリの内容を丸々ダウンロードでき、別のマシンにローカルリポジトリとして作成できる。 -
コミット
ファイルやディレクトリの追加や変更を行う際、リポジトリに記憶する時に「コミット」を行う。
コミットを実行するとリポジトリ内で、前回コミットして時の状態から現在までの差分を
記録したコミットを作成される。 -
ブランチ
履歴の流れ分岐して記録していくもの、分岐したブランチは最終的に合体する。
他のブランチの影響を受けないため、同じリポジトリ中で複数の変更を同時に進めてることができる。 -
リポジトリ
サーバのようなもので、ファイルやディレクトリなどを保存や共有する場所のことを指す。 -
ローカルリポジトリ
ユーザ一人ひとりが利用するための、自分の手元のマシン上に配置するリポジトリ。
※ローカルPC(自身)の環境 -
リモートリポジトリ
専用のサーバに配置して複数人で共有するためのリポジトリ。いわばNW上のサーバのようなもの。
※インターネット側の仮想環境etc.....(ほかにも用語があるが、ここでの紹介はこれまで)
GitとGitHubのなにが違うの?
上記でも
GitとGitHubの違いは、Gitはツールのことを指しており、GitHubサービスを指す。
Gitを使用したサービスがGitHubであることから、=
ではないということだ。
基本的にGitを使用しないとGitHubは使用できません。
逆にGitHubを使用せず、Gitは使用できます。
※Googleで調べると色々と出てくると思うので是非調べてく見てください。
まとめ
-
GitとGitHubは
=
ではなく、Gitを使用したサービスがGitHubにあたる - 使用当初はとても混乱する
- コマンドとツールを覚えるのが面倒だが、慣れればとても便利なツール及びサービスである
自分自身もIT業界のインフラ界隈の監視部分で仕事をしているため、Git及びGitHubを使用することはまずありません。存在は認知しているが、使用方法はもとより用途すら理解していないまま利用することになり、勉強するにつれ便利なツールだと実感させられました。インフラ界隈においては今後も利用することはほぼ無いですが、web業界のエンジニアの方はこれがデフォルトだと思おうと羨ましいと感じました。
実際に使用してみて、コマンド入れるのが慣れていないと抵抗感があるかもしれないと感じました。また実際に使用する際、全体のフローが理解できていないと使用時のどのようにすればよいかわからなくなると思います。
以上を踏まえ、まだ触ったことがない人は是非勉強してみてはいかがでしょうか。
今後の転職などを考えると勉強しておいても損はないと思います。本投稿を見ている方は、今後使用する機会があればぜひ色々と触ってみてほしいです。
参考サイト
-
https://github.com/
- GitHubの公式サイト ※アカウント登録が必要
-
https://git-scm.com/
- Gitの公式サイト ※Giインストールと設定が必要