On Wed, Sep 14, 2011 at 02:28:52PM +0200, Johan Herland wrote:
On Wednesday 14. September 2011, Matthieu Moy wrote:
quoted
Michael Haggerty [off-list ref] writes:
quoted
I wish that one could annotate a branch (e.g., at creation) and
have the annotation follow the branch around. This would be a
useful place to record *why* you created the branch, your plans
for it, etc. The annotation should be modifiable, because often a
branch evolves in unforeseen ways during its lifetime. Anybody
could read the annotation to get a quick idea of what kind of work
is in progress.
HOWEVER, "git notes prune" will assume that the SHA1 keys are supposed
to identify existing git objects, and will delete any note whose SHA1
key does not identify a reachable git object.
Hence, if you promise to never run "git notes prune" on
refs/notes/branch-descriptions, you could use that ref to store your
branch descriptions keyed by the SHA1 of your branch name.
It seems like notes is the wrong place to encode this. If people
really want this, what if there was a convention where there could be
a separate branch head: ref/heads/META
which contained a directory structure like this:
<e-mail>/key # The developer's GPG key
<e-mail>/<tree>/URL # URL of developer's tree named <tree>
<e-mail>/<tree>/description # Descrition of <tree>
<e-mail>/<tree>/branch/<branch-name> # A description of that branch
etc.
Since it's a separate branch head, the contents can be pushed around
and merged very easily, and there's no danger of the information
getting lost via a garbage collection or prune operation.
If there was an association between a local branch and <e-mail>/<tree>
that it was tracking, then either a modified git core or porcelein
command could get the information from the META tree. It would also
make it easy to fetch a developer's GPG key without having to go to
outside GPG key servers, which is a minor benefit (although maybe
that's not worth it).
- Ted