<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tools/git-repo.git/subcmds/upload.py, branch v2.63</title>
<subtitle>Mirror of gerrit.googlesource.com/git-repo</subtitle>
<id>https://git.enea.com/cgit/tools/git-repo.git/atom?h=v2.63</id>
<link rel='self' href='https://git.enea.com/cgit/tools/git-repo.git/atom?h=v2.63'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/'/>
<updated>2026-04-20T08:52:25+00:00</updated>
<entry>
<title>upload: Clarify partial sync message on hook failure</title>
<updated>2026-04-20T08:52:25+00:00</updated>
<author>
<name>Marty Heavey</name>
<email>mheavey@google.com</email>
</author>
<published>2026-04-17T11:14:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=32e7327ca6c420c5117e8b0eaa0219eb8f062d37'/>
<id>urn:sha1:32e7327ca6c420c5117e8b0eaa0219eb8f062d37</id>
<content type='text'>
Demote the partial sync warning from error to info and rephrase it to
be a tip rather than an error. This prevents users from thinking that
a partial sync is the cause of their hook failures when it is often a linting failure.

The message now suggests that a full sync might help if there are
cross-project dependencies, instead of implying it will fix any issue.

Change-Id: I5d8c52b53ac315aa9f145ed069798bf201fa0815
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/574262
Tested-by: Marty Heavey &lt;mheavey@google.com&gt;
Commit-Queue: Marty Heavey &lt;mheavey@google.com&gt;
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
</content>
</entry>
<entry>
<title>Use git_superproject.UseSuperproject() everywhere</title>
<updated>2026-03-19T04:03:07+00:00</updated>
<author>
<name>Jacky Liu</name>
<email>qsliu@google.com</email>
</author>
<published>2026-03-16T05:07:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=0176586544d36d2902d6b8442ea4dc78e7921b8e'/>
<id>urn:sha1:0176586544d36d2902d6b8442ea4dc78e7921b8e</id>
<content type='text'>
Currently somewhere use git_superproject.UseSuperproject(), which checks
both the manifest config and user's config, and otherwhere use
manifest.manifestProject.use_superproject, which only checks the
manifest config. This causes Inconsistent behaviors for users who do not
set --use-superproject when doing repo init but have
repo.superprojectChoice in their git config.

Replace where using manifest.manifestProject.use_superproject with
git_superproject.UseSuperproject() to respect user's config and avoid
inconsistency.

Bug: 454514213
Change-Id: I1f734235cdd67b8a6915f1d05967d1aaa4d03f2a
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/561801
Commit-Queue: Jacky Liu &lt;qsliu@google.com&gt;
Reviewed-by: Mike Frysinger &lt;vapier@google.com&gt;
Tested-by: Jacky Liu &lt;qsliu@google.com&gt;
</content>
</entry>
<entry>
<title>upload: fix FileNotFoundError when no superproject</title>
<updated>2025-06-17T20:31:02+00:00</updated>
<author>
<name>Gavin Mak</name>
<email>gavinmak@google.com</email>
</author>
<published>2025-06-17T19:06:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=f91f4462e6365b5545b39be597dab23619b8d291'/>
<id>urn:sha1:f91f4462e6365b5545b39be597dab23619b8d291</id>
<content type='text'>
Upload gets a FileNotFoundError if not using superproject because it
tries to access the superproject's repo_id before checking if
superproject was actually enabled.

Reorder the logic to check use_superproject first.

Change-Id: I65cd2adab481e799dd7bb75e1a83553ad6e34d8d
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/484401
Tested-by: Gavin Mak &lt;gavinmak@google.com&gt;
Commit-Queue: Gavin Mak &lt;gavinmak@google.com&gt;
Reviewed-by: Mike Frysinger &lt;vapier@google.com&gt;
</content>
</entry>
<entry>
<title>subcmds: delete redundant dest= settings</title>
<updated>2025-05-27T16:26:43+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2025-05-22T18:14:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=06338abe79f1fbef61f7297530ebf11139654d6c'/>
<id>urn:sha1:06338abe79f1fbef61f7297530ebf11139654d6c</id>
<content type='text'>
Add a test to enforce this too.

Change-Id: I80b5cf567aa33db9c24b53428c66d69f9c1d8d74
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/478481
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Scott Lee &lt;ddoman@google.com&gt;
</content>
</entry>
<entry>
<title>upload: Add superproject identifier as push option</title>
<updated>2025-05-05T22:10:49+00:00</updated>
<author>
<name>Gavin Mak</name>
<email>gavinmak@google.com</email>
</author>
<published>2025-05-05T21:13:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=8d37f6147174fe170cc00a1d82b1cc5fe8ec0a7b'/>
<id>urn:sha1:8d37f6147174fe170cc00a1d82b1cc5fe8ec0a7b</id>
<content type='text'>
When uploading, add the root superproject repo as a push option in the
format `-o custom-keyed-value=rootRepo:$HOST/$PROJECT`.

Bug: b/401147338
Change-Id: I00230256eb7ae307b03840bb4090c28dc8a0505e
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/472601
Reviewed-by: Josip Sokcevic &lt;sokcevic@chromium.org&gt;
Tested-by: Gavin Mak &lt;gavinmak@google.com&gt;
Commit-Queue: Gavin Mak &lt;gavinmak@google.com&gt;
</content>
</entry>
<entry>
<title>upload: Return correct tuple values in _ProcessResults</title>
<updated>2024-10-31T21:18:53+00:00</updated>
<author>
<name>Josip Sokcevic</name>
<email>sokcevic@chromium.org</email>
</author>
<published>2024-10-31T21:10:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=aada468916936d034a9ac0f0c1e5ebeebd7f3e87'/>
<id>urn:sha1:aada468916936d034a9ac0f0c1e5ebeebd7f3e87</id>
<content type='text'>
Incorrect tuple values were returned with http://go/grev/440221 -
instead of returning (Project, ReviewableBranch), _ProcessResults was
returning (int, ReviewableBranch).

R=jojwang@google.com

Bug: 376731172
Change-Id: I75205f42fd23f5ee6bd8d0c15b18066189b42bd9
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/441121
Reviewed-by: Sam Saccone &lt;samccone@google.com&gt;
Commit-Queue: Josip Sokcevic &lt;sokcevic@google.com&gt;
Tested-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
</content>
</entry>
<entry>
<title>Use full name of the revision when checking dest-branch</title>
<updated>2024-10-28T23:47:08+00:00</updated>
<author>
<name>joehsu</name>
<email>joehsu@google.com</email>
</author>
<published>2024-10-02T12:01:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=f9f4df62e062cccd279867c551a109365b4f380f'/>
<id>urn:sha1:f9f4df62e062cccd279867c551a109365b4f380f</id>
<content type='text'>
The manifest usually doesn't sepecify the revision with the full name
(e.g. refs/heads/REV).
However, when checking if the name of the merge branch, full name is
used on the merge branch.

The CL use full name of revision when comparing it with the merge
branch.

Bug: b/370919047
Test: repo upload on a project with `dest-branch` set
Change-Id: Ib6fa2f7246beb5bae0a26a70048a7ac03b6c5a2f
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/438401
Reviewed-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Tested-by: Joe Hsu &lt;joehsu@google.com&gt;
Commit-Queue: Josip Sokcevic &lt;sokcevic@google.com&gt;
</content>
</entry>
<entry>
<title>subcmds: reduce multiprocessing serialization overhead</title>
<updated>2024-10-23T23:34:34+00:00</updated>
<author>
<name>Kuang-che Wu</name>
<email>kcwu@google.com</email>
</author>
<published>2024-10-22T13:04:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=8da4861b3860c505e39341b4135c21f67569e4d8'/>
<id>urn:sha1:8da4861b3860c505e39341b4135c21f67569e4d8</id>
<content type='text'>
Follow the same approach as 39ffd9977e to reduce serialization overhead.

Below benchmarks are tested with 2.7k projects on my workstation
(warm cache). git tracing is disabled for benchmark.

(seconds)              | v2.48 | v2.48 | this CL | this CL
	               |       |  -j32 |         |    -j32
-----------------------------------------------------------
with clean tree state:
branches (none)        |   5.6 |   5.9 |    1.0  |    0.9
status (clean)         |  21.3 |   9.4 |   19.4  |    4.7
diff (none)            |   7.6 |   7.2 |    5.7  |    2.2
prune (none)           |   5.7 |   6.1 |    1.3  |    1.2
abandon (none)         |  19.4 |  18.6 |    0.9  |    0.8
upload (none)          |  19.7 |  18.7 |    0.9  |    0.8
forall -c true         |   7.5 |   7.6 |    0.6  |    0.6
forall -c "git log -1" |  11.3 |  11.1 |    0.6  |    0.6

with branches:
start BRANCH --all     |  21.9 |  20.3 |   13.6  |    2.6
checkout BRANCH        |  29.1 |  27.8 |    1.1  |    1.0
branches (2)           |  28.0 |  28.6 |    1.5  |    1.3
abandon BRANCH         |  29.2 |  27.5 |    9.7  |    2.2

Bug: b/371638995
Change-Id: I53989a3d1e43063587b3f52f852b1c2c56b49412
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/440221
Reviewed-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Tested-by: Kuang-che Wu &lt;kcwu@google.com&gt;
Commit-Queue: Kuang-che Wu &lt;kcwu@google.com&gt;
</content>
</entry>
<entry>
<title>upload: add a --topic option for setting topic explicitly</title>
<updated>2024-07-01T17:54:19+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2024-07-01T00:12:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=87f52f308c48c11a99cefcc308a0994abeb2a7ff'/>
<id>urn:sha1:87f52f308c48c11a99cefcc308a0994abeb2a7ff</id>
<content type='text'>
Let people specify the exact topic when uploading CLs.  The existing
-t option only supports setting the topic to the current local branch.

Add a --topic-branch long option to the existing -t to align it a bit
better with --hashtag &amp; --hashtag-branch.

Change-Id: I010abc4a7f3c685021cae776dd1e597c22b79135
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/431997
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
</content>
</entry>
<entry>
<title>upload: drop check for uncommitted local changes</title>
<updated>2024-05-14T02:32:27+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2024-05-13T18:27:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=2c5fb84d357d9df797b9186b4dc711cf723cb535'/>
<id>urn:sha1:2c5fb84d357d9df797b9186b4dc711cf723cb535</id>
<content type='text'>
git push, like most git commands, does not warn or otherwise prompt
users when there are local uncommitted changes.  To simplify the
upload logic, and to harmonize repo upload with git push as a more
git-esque flow, stop checking/warning/prompting the user here too.

Change-Id: Iee18132f0faad0881f1a796cb58821328e04b694
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/425337
Reviewed-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
</content>
</entry>
</feed>
