<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tools/git-repo.git/man, branch stable</title>
<subtitle>Mirror of gerrit.googlesource.com/git-repo</subtitle>
<id>https://git.enea.com/cgit/tools/git-repo.git/atom?h=stable</id>
<link rel='self' href='https://git.enea.com/cgit/tools/git-repo.git/atom?h=stable'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/'/>
<updated>2026-04-09T19:09:28+00:00</updated>
<entry>
<title>manifest: Add `sync-strategy` attribute to project elements</title>
<updated>2026-04-09T19:09:28+00:00</updated>
<author>
<name>Gavin Mak</name>
<email>gavinmak@google.com</email>
</author>
<published>2026-04-01T23:03:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=00991bfb42c4f3b0b7a50aa8f475ac1c8369924b'/>
<id>urn:sha1:00991bfb42c4f3b0b7a50aa8f475ac1c8369924b</id>
<content type='text'>
The only supported sync-strategy is "stateless". The intent is to keep
the local workspace as small as possible by not keeping history during
syncs. This prevents disk space waste for projects with large binaries
where we only care about the current version.

A follow up change will implement the logic.

Bug: 498730431
Change-Id: I84a436a9ca2492893163c6cfda6c28dc62a568f0
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/568462
Tested-by: Gavin Mak &lt;gavinmak@google.com&gt;
Reviewed-by: Mike Frysinger &lt;vapier@google.com&gt;
Commit-Queue: Gavin Mak &lt;gavinmak@google.com&gt;
</content>
</entry>
<entry>
<title>man: refresh after recent changes</title>
<updated>2026-03-10T14:35:40+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2026-03-10T04:07:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=8da56a0cc5e936646b82ebf0e9fa6d61b4ba19c7'/>
<id>urn:sha1:8da56a0cc5e936646b82ebf0e9fa6d61b4ba19c7</id>
<content type='text'>
Change-Id: Ibd60f89406e89255b3284413442b1d9c0ccbfb6d
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/559601
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Jeffery Miller &lt;jefferymiller@google.com&gt;
</content>
</entry>
<entry>
<title>manifest: Introduce `sync-j-max` attribute to cap sync jobs</title>
<updated>2026-02-06T21:32:28+00:00</updated>
<author>
<name>Gavin Mak</name>
<email>gavinmak@google.com</email>
</author>
<published>2026-02-03T20:59:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=a214fd31bd477dda2708ab9f3bc675081ceff696'/>
<id>urn:sha1:a214fd31bd477dda2708ab9f3bc675081ceff696</id>
<content type='text'>
Add a way for manifest owners to limit how many sync jobs run in
parallel.

Bug: 481100878
Change-Id: Ia6cbe02cbc83c9e414b53b8d14fe5e7e1b802505
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/548963
Reviewed-by: Mike Frysinger &lt;vapier@google.com&gt;
Tested-by: Gavin Mak &lt;gavinmak@google.com&gt;
Commit-Queue: Gavin Mak &lt;gavinmak@google.com&gt;
</content>
</entry>
<entry>
<title>Revert "init: change --manifest-depth default to 1"</title>
<updated>2026-01-21T20:32:59+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2026-01-21T14:15:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=5d88972390295e229ee940992cb33ce8cfd39cd5'/>
<id>urn:sha1:5d88972390295e229ee940992cb33ce8cfd39cd5</id>
<content type='text'>
This reverts commit 622a5bf9c2937fbfc631ccc30d5debf74010361d.

CrOS infra is failing to sync code now for some reason.
Until we can investigate further, pull this back out.

Bug: 475668525
Bug: 468033850
Change-Id: I35a8623a95336df1be27ea870afbfc8065609f01
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/545141
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
</content>
</entry>
<entry>
<title>init: change --manifest-depth default to 1</title>
<updated>2026-01-05T14:36:08+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2025-12-11T22:24:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=622a5bf9c2937fbfc631ccc30d5debf74010361d'/>
<id>urn:sha1:622a5bf9c2937fbfc631ccc30d5debf74010361d</id>
<content type='text'>
Most users do not care about the manifest history in .repo/manifests/.
Let's change the default to 1 so things work smoothly for most people
most of the time.  For the rare folks who want the full history, they
can add --manifest-depth=0 to their `repo init`.

This has no effect on existing checkouts.

Spot checking Android &amp; CrOS manifests shows significant speedups.
Full history can take O(10's seconds) to O(minutes) while depth of 1
takes constant time of O(~5 seconds).

Bug: 468033850
Change-Id: I4b8ed62a8a636babcc5226552badb69600d0c353
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/535481
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
</content>
</entry>
<entry>
<title>docs: manifest-format: reformat spec to align the CDATA parts</title>
<updated>2025-12-02T18:43:56+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2025-12-02T15:52:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=08964a16589efd16db7beaa845bc11ec6d89f94c'/>
<id>urn:sha1:08964a16589efd16db7beaa845bc11ec6d89f94c</id>
<content type='text'>
Most of the file was doing this, but we've been inconsistent when
adding new entries.  Realign all of them.

Change-Id: I99ddb3a1e859235b249b6f08731bdadad8086d4e
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/532461
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
</content>
</entry>
<entry>
<title>manifest: Propagate revision attribute through multiple levels of include</title>
<updated>2025-11-26T10:08:44+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>pkj@axis.com</email>
</author>
<published>2025-11-08T05:42:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=3073a9004606eec6e3eff8a6e3260b81cd8f4e02'/>
<id>urn:sha1:3073a9004606eec6e3eff8a6e3260b81cd8f4e02</id>
<content type='text'>
Make sure a revision attribute for an include element is propagated
through multiple levels of manifest includes.

Change-Id: If37d65b0cd47da673719976598175d0eb6b7cbbe
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/525341
Reviewed-by: Mike Frysinger &lt;vapier@google.com&gt;
Tested-by: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Commit-Queue: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
</content>
</entry>
<entry>
<title>manifest, project: Store project groups as sets</title>
<updated>2025-11-26T10:08:07+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>pkj@axis.com</email>
</author>
<published>2025-11-08T01:36:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=75773b8b9d265bc8ef113586be5c3e2d36250983'/>
<id>urn:sha1:75773b8b9d265bc8ef113586be5c3e2d36250983</id>
<content type='text'>
This helps a lot when including common manifests with groups and they
use extend-project.

Change-Id: Ic574e7d6696139d0eb90d9915e8c7048d5e89c07
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/525323
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
Tested-by: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Reviewed-by: Mike Frysinger &lt;vapier@google.com&gt;
Commit-Queue: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
</content>
</entry>
<entry>
<title>project: Use dicts to keep track of copyfiles and linkfiles</title>
<updated>2025-11-26T10:07:35+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>pkj@axis.com</email>
</author>
<published>2025-11-07T23:06:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=412367bfafd9de014cfeb37475e0f97b1f6a2509'/>
<id>urn:sha1:412367bfafd9de014cfeb37475e0f97b1f6a2509</id>
<content type='text'>
This avoids copying/linking the same file/link multiple times if a
copyfile/linkfile element with the same values has been specifed
multiple times. This can happen when including a common manifest that
uses an extend-project element that has a copyfile/linkfile element.

This uses dicts rather than sets to store the copyfiles and linkfiles to
make sure the order they are specified in the manifest is maintained.
For Python 3.7+, maintaining the order that keys are added to dicts is
guaranteed, and for Python 3.6 it happened to be true.

The _CopyFile class and the _LinkFile class are changed to inherit from
NamedTuple to be able to store them in dicts.

Change-Id: I9f5a80298b875251a81c5fe7d353e262d104fae4
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/525322
Reviewed-by: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
Tested-by: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Commit-Queue: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
</content>
</entry>
<entry>
<title>manifest: Make include groups propagate to extend-project elements</title>
<updated>2025-11-26T10:05:48+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>pkj@axis.com</email>
</author>
<published>2025-11-07T22:09:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=47c24b5c4092ce397c94c05d8686c8bcac64fbb2'/>
<id>urn:sha1:47c24b5c4092ce397c94c05d8686c8bcac64fbb2</id>
<content type='text'>
Any groups specified to an include element should propagate to any
extend-project elements and then on to the projects.

Change-Id: I62b95689cc13660858564ae569cbfd095961ecc7
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/525321
Tested-by: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Commit-Queue: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
Reviewed-by: Mike Frysinger &lt;vapier@google.com&gt;
</content>
</entry>
</feed>
