Hi Dscho, On Thu, Oct 31, 2019 at 11:22:16AM +0100, Johannes Schindelin wrote: > Hi Peff, > > 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`. So how would you envision the workflow for this? Would it be something like, $ git checkout feature-1 $ git branch --edit-description=ref # instead of =config # editor opens up, :wq # is it find to have an autogenerated commit message? $ git show refs/meta/feature-1 commit 80dfea1dc4492aaabc80d23fbaffe86da55ee098 (refs/meta/feature-1) Author: Denton Liu <liu.denton@xxxxxxxxx> Date: 42 seconds ago Update ref description diff --git a/description.txt b/description.txt new file mode 100644 index 0000000..ed03a4b --- /dev/null +++ b/description.txt @@ -0,0 +1 @@ +this is a description I have some open questions about this, though: * Since we're planning on sharing these descriptions with the outside world, how would the ref layout look like? If we're not using the refs/remotes namespace will it make fetching and merging notes harder? I know that collaborating with notes is a pain so how do we avoid making the same mistake? * On the above point, what if local descriptions are at refs/meta/heads/feature-1 while remote descriptions are at refs/meta/remotes/*/feature-1? * What would a merge workflow look like? Would we have wrapper commands for it or do users just have to checkout the description branch themselves? Thanks, Denton > > I now like that idea a lot better than my original notes idea. > > Ciao, > Dscho