<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tools/git-repo.git/project.py, branch v2.48</title>
<subtitle>Mirror of gerrit.googlesource.com/git-repo</subtitle>
<id>https://git.enea.com/cgit/tools/git-repo.git/atom?h=v2.48</id>
<link rel='self' href='https://git.enea.com/cgit/tools/git-repo.git/atom?h=v2.48'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/'/>
<updated>2024-10-07T18:44:19+00:00</updated>
<entry>
<title>sync: Always use WORKER_BATCH_SIZE</title>
<updated>2024-10-07T18:44:19+00:00</updated>
<author>
<name>Josip Sokcevic</name>
<email>sokcevic@chromium.org</email>
</author>
<published>2024-10-07T17:33:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=454fdaf1191c87e5c770ab865a911e10e600e178'/>
<id>urn:sha1:454fdaf1191c87e5c770ab865a911e10e600e178</id>
<content type='text'>
With 551285fa35ccd0836513e9cf64ee8d3372e5e3f4, the comment about number
of workers no longer stands - dict is shared among multiprocesses and
real time information is available.

Using 2.7k projects as the baseline, using chunk size of 4 takes close
to 5 minutes. A chunk size of 32 takes this down to 40s - a reduction of
rougly 8 times which matches the increase.

R=gavinmak@google.com

Bug: b/371638995
Change-Id: Ida5fd8f7abc44b3b82c02aa0f7f7ae01dff5eb07
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/438523
Commit-Queue: Josip Sokcevic &lt;sokcevic@google.com&gt;
Tested-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
</content>
</entry>
<entry>
<title>project: Handle git sso auth failures as repo exit</title>
<updated>2024-10-03T20:47:50+00:00</updated>
<author>
<name>Josip Sokcevic</name>
<email>sokcevic@chromium.org</email>
</author>
<published>2024-10-03T20:32:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=f7f9dd4deb3b92bf175a0411dac60e7b6fdd9cfa'/>
<id>urn:sha1:f7f9dd4deb3b92bf175a0411dac60e7b6fdd9cfa</id>
<content type='text'>
If a user is not authenticated, repo continues execution and it will
likely result in more of the same errors being printed. A user is also
likely to SIGTERM the process resulting in more errors.

This change stops repo sync if any of repositories can't be fetched to
Git authentcation using sso helper. We could extend this to all Git
authentication

Change-Id: I9e471e063450c0a51f25a5e7f12a83064dfb170c
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/438522
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
Tested-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Commit-Queue: Josip Sokcevic &lt;sokcevic@google.com&gt;
</content>
</entry>
<entry>
<title>project: run fetch --refetch on unable to not parse commit</title>
<updated>2024-10-03T17:40:37+00:00</updated>
<author>
<name>Josip Sokcevic</name>
<email>sokcevic@chromium.org</email>
</author>
<published>2024-10-02T18:05:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=cfe3095e500cef69e312c3b7700d77515070b262'/>
<id>urn:sha1:cfe3095e500cef69e312c3b7700d77515070b262</id>
<content type='text'>
Similarly to e59e2ae757623e64f625a9cdadf1c2010ef82b34, handle missing
gc'ed commits by running `git fetch --refetch`.

R=jojwang@google.com

Bug: b/360889369
Bug: b/371000949
Change-Id: I108b870b855d3b9f23665afa134c6e35f7cd2830
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/438461
Reviewed-by: Joanna Wang &lt;jojwang@google.com&gt;
Tested-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Commit-Queue: Josip Sokcevic &lt;sokcevic@google.com&gt;
</content>
</entry>
<entry>
<title>Disable git terminal prompt during fetch/clone</title>
<updated>2024-09-26T22:10:36+00:00</updated>
<author>
<name>Josip Sokcevic</name>
<email>sokcevic@chromium.org</email>
</author>
<published>2024-09-26T21:55:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=621de7ed127f2adb39ed1f0747383ac2afc4d075'/>
<id>urn:sha1:621de7ed127f2adb39ed1f0747383ac2afc4d075</id>
<content type='text'>
git fetch operation may prompt user to enter username and password.
This won't be visible to user when repo sync operation since stdout and
stderr are redirected. If that happens, user may think repo is doing
work and likely won't realize it's stuck on user's input.

This patch disables prompt for clone and fetch operations, and repo will
fail fast.

R=gavinmak@google.com

Bug: b/368644181
Change-Id: I2efa88ae66067587a00678eda155d861034b9127
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/438001
Reviewed-by: Nasser Grainawi &lt;nasser.grainawi@linaro.org&gt;
Tested-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Commit-Queue: Josip Sokcevic &lt;sokcevic@google.com&gt;
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
</content>
</entry>
<entry>
<title>project: Copy and link files even with local branches</title>
<updated>2024-09-19T00:11:52+00:00</updated>
<author>
<name>Brian Norris</name>
<email>briannorris@google.com</email>
</author>
<published>2024-09-17T22:53:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=b577444a90e29558ff4222c2ed9e43aeaf3d2c44'/>
<id>urn:sha1:b577444a90e29558ff4222c2ed9e43aeaf3d2c44</id>
<content type='text'>
In the winding maze that constitutes Sync_LocalHalf(), there are paths
in which we don't copy-and-link files. Examples include something like:

  cd some/project/
  repo start head .
  # do some work, make some commit, upload that commit to Gerrit

  [[ ... in the meantime, someone addes a &lt;linkfile ...&gt; for
     some/project/ in the manifest ... ]]

  cd some/project/
  git pull --rebase
  repo sync

In this case, we never hit a `repo rebase` case, which might have saved
us. Instead, the developer is left confused why some/project/ never had
its &lt;linkfile&gt;s created.

Notably, this opens up one more corner case in which &lt;linkfile ... /&gt; or
&lt;copyfile ... /&gt; could potentially clobber existing work in the
destination directory, but there are existing cases where that's true,
and frankly, those seem like bigger holes than this new one.

Change-Id: I394b0e4529023a8ee319dc25d03d513a19251a4a
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/437421
Reviewed-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Tested-by: Brian Norris &lt;briannorris@google.com&gt;
Commit-Queue: Brian Norris &lt;briannorris@google.com&gt;
</content>
</entry>
<entry>
<title>project: run fetch --refetch onacould not parse commit</title>
<updated>2024-09-12T15:27:12+00:00</updated>
<author>
<name>Josip Sokcevic</name>
<email>sokcevic@chromium.org</email>
</author>
<published>2024-09-12T04:32:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=e59e2ae757623e64f625a9cdadf1c2010ef82b34'/>
<id>urn:sha1:e59e2ae757623e64f625a9cdadf1c2010ef82b34</id>
<content type='text'>
git may gc reachable objects in partial clone repository due to a bug
(report:
https://lore.kernel.org/git/20240802073143.56731-1-hanyang.tony@bytedance.com/
). Until git is properly patched and released, force --refetch iff
"could not parse commit" is part of git output. --refetch will will
ensure that gc'ed objects are retrieved.

Bug: b/360889369
Change-Id: I0fc911c591060f859235dcd8d019881106f0858e
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/437017
Commit-Queue: Josip Sokcevic &lt;sokcevic@google.com&gt;
Reviewed-by: Sam Saccone &lt;samccone@google.com&gt;
Tested-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
</content>
</entry>
<entry>
<title>Add a `--rebase` option to sync command</title>
<updated>2024-08-30T09:08:29+00:00</updated>
<author>
<name>Jeroen Dhollander</name>
<email>jeroendh@google.com</email>
</author>
<published>2024-08-20T08:28:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=c44ad093092f71320c6311cc1fc3de9171f6bd0c'/>
<id>urn:sha1:c44ad093092f71320c6311cc1fc3de9171f6bd0c</id>
<content type='text'>
Previously repo would abort a sync if there were published changes not
merged upstream. The --rebase option allows the modification of
published commits.

This is a copy of http://go/grev/369694 with the merge conflicts
resolved.

Bug: 40014610
Change-Id: Idac8199400346327b530abea33f1ed794e5bb4c2
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/435838
Reviewed-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Tested-by: Jeroen Dhollander &lt;jeroendh@google.com&gt;
Commit-Queue: Jeroen Dhollander &lt;jeroendh@google.com&gt;
</content>
</entry>
<entry>
<title>sync: Fix git command for aborting rebase being called incorrectly.</title>
<updated>2024-08-28T08:56:35+00:00</updated>
<author>
<name>Erik Elmeke</name>
<email>erik@haleytek.corp-partner.google.com</email>
</author>
<published>2024-08-27T14:16:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=4592a63de5e1a9312ce8a37953e233bd49a0ad80'/>
<id>urn:sha1:4592a63de5e1a9312ce8a37953e233bd49a0ad80</id>
<content type='text'>
The argument list was incorrectly destructured so only the first
element of the list was considered a git-cmd, split up by each
character in the string.

Change-Id: Idee8a95a89a7da8b8addde07135354fc506c2758
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/435839
Reviewed-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Commit-Queue: Erik Elmeke &lt;erik@haleytek.corp-partner.google.com&gt;
Tested-by: Erik Elmeke &lt;erik@haleytek.corp-partner.google.com&gt;
</content>
</entry>
<entry>
<title>project: ignore more curl failure modes</title>
<updated>2024-07-02T19:03:54+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2024-07-02T18:52:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=0444ddf78e3026056ee3786119e595909c039ff2'/>
<id>urn:sha1:0444ddf78e3026056ee3786119e595909c039ff2</id>
<content type='text'>
Current clone bundle fetches from Google storage results HTTP/404
and curl exiting 56.  This is basically WAI, so stop emitting
verbose error output whenever that happens.  Also add a few more
curl exit statuses based on chromite history, and document them.

Change-Id: I3109f8a8a19109ba9bbd62780b40bbcd4fce9b76
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/432197
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
Tested-by: Mike Frysinger &lt;vapier@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>
</feed>
