gclient sync, git, origin/main vs origin/master

277 views
Skip to first unread message

Nigel Tao

unread,
Jun 25, 2021, 6:57:06 PM6/25/21
to chromium-dev
Chromium depends on third_party/wuffs. Specifically, Skia's mirror
(https://skia.googlesource.com/external/github.com/google/wuffs/) of
Wuffs' github repo (https://github.com/google/wuffs).

I'm trying to update Wuffs to the most recent version
(https://chromium-review.googlesource.com/c/chromium/src/+/2986920).
In the time between now and the last time Wuffs was up-revved, the
default branch in the github repo changed from "master" to "main".

"gclient sync" is failing:

----
$ gclient sync
Syncing projects: 98% (200/203) src/tools/perf/data
src/third_party/wuffs/src (ERROR)
----------------------------------------
[0:00:15] Started.
[0:00:16] Finished running: git config remote.origin.url
[0:00:17] Finished running: git rev-list -n 1 HEAD
[0:00:18] Finished running: git rev-parse --abbrev-ref=strict HEAD
[0:00:21] Finished running: git -c core.quotePath=false diff
--name-only refs/remotes/origin/master
[0:00:21] _____ src/third_party/wuffs/src : Attempting rebase onto
b2b8961126502d2ab00daa20d19a976964c012a3...
----------------------------------------
Error: 133> Conflict while rebasing this branch.
133> Fix the conflict and run gclient again.
133> See 'man git-rebase' for details.

$ cd third_party/wuffs/src/
$ git status
interactive rebase in progress; onto b2b89611
Last command done (1 command done):
pick 2f2bbc6a Rename default github.com branch s/master/main/
Next commands to do (170 remaining commands):
pick cee57bc4 Add some more base.x86_m128i methods
pick b61a8273 Optimize std/adler32 for SSE4.2
(use "git rebase --edit-todo" to view and edit)
You are currently rebasing branch 'master' on 'b2b89611'.
(fix conflicts and then run "git rebase --continue")
(use "git rebase --skip" to skip this patch)
(use "git rebase --abort" to check out the original branch)

Unmerged paths:
(use "git restore --staged <file>..." to unstage)
(use "git add <file>..." to mark resolution)
both modified: internal/cgen/data/data.go

no changes added to commit (use "git add" and/or "git commit -a")
08:43$ git b
* (no branch, rebasing master) b2b89611 wuffs gen -version=0.3.0-beta.3
master 98c66ef7 [ahead 172] wuffs gen
-version=0.3.0-beta.2
----

I could try to fuss around with my local git checkout in
third_party/wuffs/src, but I also obviously don't want to break other
people's local checkouts or require them to do some manual git
intervention when they next sync.

Does @chromium-dev have advice? I don't know if the proper fix
involves changing Chromium files (e.g. DEPS), configuring the Skia git
mirror at https://skia.googlesource.com/external/github.com/google/wuffs/
somehow, or something else.

Dirk Pranke

unread,
Jun 25, 2021, 8:04:44 PM6/25/21
to nige...@chromium.org, Josip Sokcevic, chromium-dev
+Josip Sokcevic 

Are you seeing your error locally, or on bots as well?

If on the bots, the bots in your CL seem happy enough, so I'm not sure what you're seeing.

If locally, I'm guessing you have some weird repo config left over from pre-master/main migration. I'm not sure exactly what'd be wrong, but maybe sokcevic@ can say better.

-- Dirk

--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
    http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAEdON6Yic%2BZaDe_LSgunjOBoGk-TGa%2BxYmaa2Qs2VxFOStf6Mg%40mail.gmail.com.

Nigel Tao

unread,
Jun 25, 2021, 8:44:16 PM6/25/21
to Dirk Pranke, Josip Sokcevic, chromium-dev
On Sat, Jun 26, 2021 at 10:02 AM Dirk Pranke <dpr...@google.com> wrote:
> Are you seeing your error locally, or on bots as well?

Just locally. The CQ seems happy.

Having thought about it some more, I remember that, maybe a year ago,
I was fussing around in the third_party/wuffs/src directory, wasn't
sure exactly how (in terms of git) to undo some local edits, and did a
"git checkout origin/master". That 'worked' for me, in that it got my
local build going again, and I didn't think further about it. But I'm
guessing that my actions silently knocked me off the "gclient sync"
happy path. For the record, I've just checked out a specific revision
instead of "origin/master" ("cd third_party/wuffs/src; git checkout
b2b89611") and now "gclient sync" seems happy.

Since the original problem was a result of my local git modifications,
I'm no longer worried about breaking other people's checkouts if I
submit. As you noted, the trybots are green.

Thanks for the help. Sorry for the noise.

Dirk Pranke

unread,
Jun 25, 2021, 8:49:38 PM6/25/21
to Nigel Tao, Josip Sokcevic, chromium-dev
When in doubt for things like this, I'll usually either delete the dependent repo and fetch it down from scratch, or at least move it aside to fetch a new copy if I have stuff I want to preserve in the local copy.

-- Dirk
Reply all
Reply to author
Forward
0 new messages