Hi Pierre, On Tue, 11 Feb 2020 at 09:47, Pierre Neidhardt <m...@ambrevar.xyz> wrote: > > I think it's a great idea! > > How do we tag locally though? Some trivial <commit, tag> database? > An s-exp file?
Using "git tag". For example, currently the "guix time-machine" only accepts '--commit='<commit>' and because only the released versions are tagged, it is not easy to navigate. Another example is, let consider that I publish a channel with tags, then my collaborators could easily obtain the list of all the tags via "guix tag --list" (or whatever CLI)and then pull to one particular tag and/or time-machine to it etc. Yet another example, today when I play with issues from the mailing list and/or the bug tracker, I often use "guix time-machine" or "guix pull -p /tmp/test" but often I am doing that between "real" day job and often on several days. Then it is boring to search in my shell history which commit or reopen the message or collect in an org file, so I often create a branch and/or tags in my local Guix checkout and I retrieve my information using Git. This extra step using Git is not natural and somehow the Git information is already there hidden under some Guix layer. We could imagine that Guix (optionally) checkouts the complete repo and this Git repo is the database. (Note that Guix already checkouts some more or less large parts or the repo.) And the tags could be exported to a s-exp file, go under version control and shared; with an importer tags. Moreover, aside tagging, we could improve the inferior creation by cutting some "updating time" using e.g., worktree. All the best, simon