今日のお勉強。180607-git

バージョン管理ツールGit

こわくないGit の続きと、Gitの仕組み を読みました。

 

Git

こわくないGit によると、

・rebaseで作られたコミットは、内容は同じでも別物。

リモートリポジトリにpushした時、内容が同じでも「別物じゃん!」と判断されて拒否されるおそれがある。

・rebaseはmergeの記録は残らないので、mergeする前にrebaseはOKなことも。プルリクエストの時は、rebaseしてから送った方がいいそうです。

・push済みのブランチをリベースしてはならない

 

rebaseは、コミットの歴史を綺麗に整理してくれますが、

どこかで差し支えてしまうおそれがあることを知りました。

 

 

Gitの仕組み では、

・ .git に含まれている大事なものは、Gitオブジェクト、リファレンス、インデックス、ログ、設定。

・gitは大きなツリー構造になってる。

・gitのオブジェクトのIDは、SHA1という関数で作られる(40文字)

 

 

など、色々知ることができました。