4 ms·
As the maintainer of FreshBSD.org, git gives me headaches regarding what to do with branch naming. SVN and even CVS include branch information on each commit,
by Freaky 6y ago
As the maintainer of FreshBSD.org, git gives me headaches regarding what to do with branch naming.
SVN and even CVS include branch information on each commit, but git couldn't care less - it's up to you to infer it by unspecified means if you really care.
It's telling that the conversion metadata includes tags indicating the SVN path identifying the branches a given commit was made from - because this otherwise wouldn't be available. In principle I can just use that, but I still need a reliable solution for new commits.
Not convinced I'll find one.
- cnst 6y agoIsn't the reason for the problem is that multiple branches and tags may have any given commit? Same as in CVS? It seems like the problem is the UI that assumes that only a single branch may have any given commit. --- BTW, whilst at it, any chance you can fix search by user-id? Currently freshbsd.org/search?project=freebsd&committer=phk doesn't produce the expected results.
- Freaky 6y agoNo. The problem is that to git, a branch is just a reference to the commit currently at the tip of that branch - the rest of the commit graph is completely anonymous sans its position in that graph. Where in SVN it's implicit in the paths a commit touches and in CVS it's a specific field in the RCS metadata for a commit, in Git it's a big graph problem it isn't overly interested in solving. And yes, people keep asking about the legacy username thing - I'll get to it :)
- xxpor 6y agogit name-rev?
- Freaky 6y agoOnly handles a single symbolic name per commit, and doesn't necessarily pick one that's meaningful in that sense. It's what I'm trying to get away from. e.g. projects/aio_writev has 8 commits, but if name-rev is allowed to name that branch, it'll gleefully use it to name thousands of commits to main as well.