Because you would not want to write the whole git history starting from the commit you want to stash this info one everytime you want to stash additional info …
Appending information to the commit itself creates a new commit and all the commits that are based on the commit will also have to change consequently.
Yeah, git notes are AFAIK stashed into their own hidden branch, referencing the original commit by its hash. That is, the git note points to the commit, not the opposite.
Kind of. The structure is the same and you can check it out if you want, but it's actually a 3rd directory under "refs" - the other two being "heads" (branches) and "tags". That avoids special-casing with trying to hide branches or conflicting with a branch name a user might make.
Because you would not want to write the whole git history starting from the commit you want to stash this info one everytime you want to stash additional info …
Appending information to the commit itself creates a new commit and all the commits that are based on the commit will also have to change consequently.
Ah; so notes don't impact the commit hash? That is a solid reason.
Yeah, git notes are AFAIK stashed into their own hidden branch, referencing the original commit by its hash. That is, the git note points to the commit, not the opposite.
Kind of. The structure is the same and you can check it out if you want, but it's actually a 3rd directory under "refs" - the other two being "heads" (branches) and "tags". That avoids special-casing with trying to hide branches or conflicting with a branch name a user might make.