Re: git branch --edit-description a custom file

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Phillip,

On Thu, 31 Oct 2019, Phillip Wood wrote:

> On 31/10/2019 10:22, Johannes Schindelin wrote:
> >
> > On Thu, 31 Oct 2019, Jeff King wrote:
> >
> > > On Wed, Oct 30, 2019 at 03:43:28PM -0700, Denton Liu wrote:
> > >
> > > > On Wed, Oct 30, 2019 at 04:28:35PM -0400, Jeff King wrote:
> > > > Dscho brought up in the GGG thread[1] that perhaps we want to treat
> > > > branch descriptions like notes and have them all under something like
> > > > `refs/notes/branches`. This would certainly solve my problem of
> > > > having versioned descriptions and it would probably do it in a much more
> > > > general way than having a versioned included config.
> > > >
> > > > Anyone see any potential problems with this approach?
> > >
> > > I don't think it would be `refs/notes/`, as that is assumed to contain
> > > mappings of object ids (and if I understand correctly, this would be a
> > > mapping of branch names to data.
> > >
> > > You could just have "refs/meta/descriptions/foo" pointing to a blob
> > > which contains the description of "refs/heads/foo". That makes it easy
> > > to edit descriptions, even if you don't like using "git branch
> > > --edit-description".
> >
> > The only problem with this is that it's not really versioned, as it
> > would be hard to go back to previous versions and/or share the history
> > via pushing to a remote repository.
> >
> > But I guess that a very simple pseudo branch would do it, where
> > `refs/meta/<branch-name>` would point to a commit that has a tree
> > with a single file in it: `description.txt`.
>
> Having some way to share branch metadata would be nice. I like the idea of
> using commits so we can merge changes and revert to a previous version. There
> is some previous discussion here [1]. I'd really like to be able to share the
> upstream for a branch between two computers as well. I also use a commit
> containing a tree with a single file stored at refs/todo/<branch> (and fetched
> to refs/remote/<remote>/todo/<branch>) to share todo lists with notes and
> ideas for future commits on branches that I'm working on on more than one
> machine. Having them version controlled so they can be merged has been useful.

And while we're dreaming: it would be nice to discern between "push
upstreams" and "base upstreams". Example: when I work on the
`fix-t5516-flakiness` branch, I target `upstream/master`, but I push to
`dscho`, i.e. my "push upstream" is `dscho/fix-t5516-flakiness`.

Ciao,
Dscho

> Best Wishes
>
> Phillip
>
> [1] https://public-inbox.org/git/1519324188.6391.156.camel@xxxxxxxxxxxxxxxxx/
>
>
> > I now like that idea a lot better than my original notes idea.
> >
> > Ciao,
> > Dscho
> >
> > >
> > > You could also have "refs/meta/descriptions" to point to a _single_ blob
> > > with all of the descriptions. It could even be in the existing config
> > > format. And then you could include it with "[include] blob = ...". That
> > > doesn't exist yet, but it would be easy to add (it was something I had
> > > always considered when writing the config-include code, but there was
> > > never really a good use; and you do have to be careful about pointing to
> > > untrusted blobs). That's a convoluted way to get where you want, but I
> > > wonder if integrating to the existing config system would have any
> > > benefits. I haven't really thought it through.
> > >
> > > (Of course that's also only one step away from having a versioned config
> > > file in your .git directory, but it might possibly be a bit easier to
> > > manage, since it would always be committed).
> > >
> > > That's mostly off-the-top-of-my-head rambling, so please disregard
> > > anything that seems totally off-base. :)
> > >
> > > -Peff
> > >
>
>




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux