[Development] Proposal: New branch model
thiago.macieira at intel.com
Wed Jan 23 18:49:46 CET 2019
On Wednesday, 23 January 2019 08:37:57 PST Konstantin Tokarev wrote:
> > Disadvantages:
> > - git history would be a bit wilder, "git branch --contains" would not
> > work
> > - commit messages in some branches would have kind of ugly footer as an
> > effect of "cherry-pick -x"
> Gerrit's Change-Id can be used to track presence of patch in branches of
Yes, but not as easily, since the git branch --contains and git tag --contains
are pure DAG operations. The search you're talking about is a text search
(usually implemented by a regexp search) on the commit message, with no DAG
boundaries. You have to scan all valid branches for a given string.
And then you still have to run git branch --contains on each entry you found
to figure out which branches contain those commits.
So this is scriptable. It's going to be something like 100x slower than today,
but it should still finish within 10 seconds, even on slow machines.
Test in qtbase (Linux):
Run: git rev-list --grep=5d809703aa2d2a08ae7e9610fd42025b081d3d0c --all
Runtime: 0,52s user 0,03s system 99% cpu 0,555 total
Same test on Windows: real 0m0.800s, user 0m0.593s, sys 0m0.171s
(Both machines are Intel Skylakes, and both have SSDs and 16 GB of RAM)
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
More information about the Development