Add harfbuzz mirror. |
||||
Issue descriptionIn the interest of being able to keep harfbuzz up to date, this is a request to create a harfbuzz mirror at chromium.googlesource.com/chromium/src/third_party/harfbuzz. It would be nice to set this mirror up as much as possible like the existing freetype2 mirror. The repository to mirror is one of (pick your favorite) git://anongit.freedesktop.org/harfbuzz ssh://git.freedesktop.org/git/harfbuzz https://anongit.freedesktop.org/git/harfbuzz.git Auto updating like the freetype2 mirror at https://chromium.googlesource.com/chromium/src/third_party/freetype2/ An ACL setup like the freetype2 setup at https://chromium-review.googlesource.com/admin/repos/chromium%2Fsrc%2Fthird_party%2Ffreetype2 in particular "Access" on "refs/heads/chromium/*" to "Create Reference", "Push", "Push Merge Commit" for a "harfbuzz-committers" group. The "harfbuzz-committers" group should initially contain the following members @chromium.org behdad bungeman drott
,
Jan 31 2018
Is it all right if we mirror from https://github.com/harfbuzz/harfbuzz? This is considerably easier. Also, it's not possible to commit to refs/heads/chromium/* because the mirroring will own refs/heads/* and refs/tags/*. However I can grant you permission to commit to refs/chromium/*.
,
Feb 1 2018
I'm surprised that it's not possible to commit to refs/heads/chromium/* since that's the way https://chromium-review.googlesource.com/admin/repos/chromium/src/third_party/freetype2,access is set up. Perhaps the mirroring is now done differently? In theory refs/chromium/* is do-able, but will refs at this location show up in the ui at chromium.googlesource.com ? For instance, there are currently local 'chromium/' branches which can be seen at https://chromium.googlesource.com/chromium/src/third_party/freetype2/+/chromium/milestone/63 and it's quite nice to be able to see them there. Also, commits to this ref need to be able to be used in DEPS, but I don't believe that depot_tools will pull in anything not in refs/heads/*, refs/tags/*, or refs/branch-heads/* . As a result I suspect that refs/chromium/* is worthless, since we will be able to push refs there, but those refs will never be fetched from the remote by depot_tools, and so we will never see those commits since depot_tools will never fetch them. As a result, I don't think refs/chromium/* is going to work, unless you can convince me that the bots will see commits only ref'ed from there.
,
Feb 1 2018
behdad: what is the current balance of power between https://github.com/harfbuzz/harfbuzz and git://anongit.freedesktop.org/harfbuzz ? Does it matter which we mirror? These two seems to have completely different commit SHAs, so it's not like we can just switch later.
,
Feb 1 2018
> These two seems to have completely different commit SHAs, Do they? The masters of those two are supposed to be the same, and currently are both at c6dbf6e77cae30772ffa110c651cb4287ab3b0dc The fdo one lags behind slightly as it relies on me doing "git pull && git push" regularly. Github is ground truth these days.
,
Feb 2 2018
Thanks for the clarification, it appears that I managed to look at the two (github and fdo) when they were out of sync and didn't verify. Indeed, the commit SHA1s seem to be the same between the two repos. So I think it is fine if we mirror https://github.com/harfbuzz/harfbuzz.git . However, we do still need some means of pushing directly to the new mirror somewhere the bots will find the the commits. While not used very often, such commits are sometimes needed for cherry-picking back specific bug fixes for Chromium branches.
,
Feb 2 2018
There's also https://github.com/googlei18n/harfbuzz that has no use. If you want you can push whatever backfixes etc on branches on that.
,
Feb 3 2018
https://chromium.googlesource.com/chromium/src/third_party/freetype2 is mirrored using a legacy method, the supported method is to set up a copyconfig, which is a feature of Git-on-Borg itself. You can't have both the copyconfig mirror to refs/heads/* and also push to refs/heads/*. You mentioned that you need to be able to cherry-pick fixes for Chromium branches. Then why not just use refs/branch-heads/*? This is what we do on other mirrors. For example, https://chromium.googlesource.com/external/github.com/material-components/material-components-ios has a copyconfig governing refs/heads/* and refs/tags/*, but branch-specific fixes live on refs/branch-heads/*. I've created the mirror using this method: https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz. Let me know if this solution will work for you, and if so, which users should be authorized to push to refs/branch-heads/*.
,
Feb 5 2018
Thanks for the clarification about the difference in mirroring. I have noticed that freetype2 seems to be updated by some 'builder' while others seem to be mirrored by gob. I think refs/branch-heads/* should be workable. I haven't been able to test yet since I don't have permissions. It's unfortunate that these refs don't show up in the web ui at chromium.googlesource.com, though I've opened https://github.com/google/gitiles/issues/127 about that. Thanks for getting this set up. As in Comment #1 it would be nice to have a "harfbuzz-committers" group which should initially contain the following members @chromium.org behdad bungeman drott
,
Feb 5 2018
|
||||
►
Sign in to add a comment |
||||
Comment 1 by bunge...@chromium.org
, Jan 30 2018