みの雑多ブログ

勉強したことをアウトプットしたり、しなかったり

Gitの基礎の基礎を学んだのでそれをアウトプット

チョット、学んだことをクイズ形式でまとめる。

Gitは何のために使う?

バージョン管理のため。(Gitだけじゃなくて、SVNでも言えるね)
複数人で修正をするときに間違ってほかの人が修正していたのに上書きしちゃう、変更内容を消しちゃうとかやっちゃう。
誰が、いつ、何を変更したとかを管理することで、そういう困ったことを解消するのがバージョン管理。
これ新人にも何回か言ったことあるくらい、基礎の基、でも大切なこと。

Gitは誰が何のために作ったの?

リーナス・トーバルズ - Wikipedia
ワタシハリナックスチョットデキル、のTシャツ着てる人くらいにしか思ってなかったのだけれど、すごい人。(私は無知を恥じません)
この人が、Linuxカーネル開発に使うバージョン管理にいいのねぇな、ってなってGitの前進を作ったらしい。

GitHubは誰が作ったの?Gitの何なの?

Chris Wanstrath - Wikipedia
クリスさんが作ったらしい。Gitラブ(≠GitLab)な人が作ったとか。
GitHubはGitのコードホスティングサービスで、プルリクによって複数人でのオンライン上での開発を実現。
オープンソース開発もしやすくなった功績はすごい!!
他、Bitbucketがあって、非公開リポジトリで使うときに少人数であれば無料で使えるそう。
GitHubは公開であれば、無料、非公開リポジトリは有料ということで。

Gitのバージョンの管理の仕方ってどうやってしているの?

スナップショットで管理している。

もし、差分だったら、、、マージするたびに差分を都度計算する必要がある。
結果、大規模なPJでブランチ切りまくって開発しようにも、計算のたびに時間がかかる・・・
Gitの歴史にちょっと戻って、他のバージョン管理では差分で持っているので、「いいのねぇな」ってなったということ。
そう言われると、すごく納得。
コミット(バージョンの記録)するたびに変更したファイルのスナップショットを保存するということ。