<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tools/git-repo.git/docs, branch v2.57</title>
<subtitle>Mirror of gerrit.googlesource.com/git-repo</subtitle>
<id>https://git.enea.com/cgit/tools/git-repo.git/atom?h=v2.57</id>
<link rel='self' href='https://git.enea.com/cgit/tools/git-repo.git/atom?h=v2.57'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/'/>
<updated>2025-07-01T23:11:50+00:00</updated>
<entry>
<title>sync: support post-sync hook in &lt;repo-hooks&gt;</title>
<updated>2025-07-01T23:11:50+00:00</updated>
<author>
<name>Kenny Cheng</name>
<email>chao.shun.cheng.tw@gmail.com</email>
</author>
<published>2025-06-02T13:55:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=82d500eb7aa93f9bff66a4358a08d2ba2d599550'/>
<id>urn:sha1:82d500eb7aa93f9bff66a4358a08d2ba2d599550</id>
<content type='text'>
Add support for a new hook type "post-sync" declared in the manifest using
&lt;repo-hooks&gt;. This allows executing a script automatically after a successful
`repo sync`.

This is useful for initializing developer environments, installing project-wide
Git hooks, generating configs, and other post-sync automation tasks.

Example manifest usage:

  &lt;project name="myorg/repo-hooks" path="hooks" revision="main" /&gt;
  &lt;repo-hooks in-project="myorg/repo-hooks" enabled-list="post-sync"&gt;
    &lt;hook name="post-sync" /&gt;
  &lt;/repo-hooks&gt;

The hook script must be named `post-sync.py` and located at the root of the
hook project.

The post-sync hook does not block `repo sync`; if the script fails, the sync
still completes successfully with a warning.

Test: Added `post-sync.py` in hook project and verified it runs after `repo sync`

Bug: b/421694721
Change-Id: I69f3158f0fc319d73a85028d6e90fea02c1dc8c8
Signed-off-by: Kenny Cheng &lt;chao.shun.cheng.tw@gmail.com&gt;
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/480581
Reviewed-by: Scott Lee &lt;ddoman@google.com&gt;
Reviewed-by: Gavin Mak &lt;gavinmak@google.com&gt;
</content>
</entry>
<entry>
<title>Update internal filesystem layout for submodules</title>
<updated>2025-02-04T16:07:49+00:00</updated>
<author>
<name>Kaushik Lingarkar</name>
<email>kaushikl@qti.qualcomm.com</email>
</author>
<published>2024-12-17T20:49:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=cf9a2a2a76b332c89fef40e47f7ddb4e8c817ab9'/>
<id>urn:sha1:cf9a2a2a76b332c89fef40e47f7ddb4e8c817ab9</id>
<content type='text'>
Change the bare checkout directory for submodules from 'subprojects'
to 'modules'. Git expects bare submodule checkouts to be in the
'modules' directory. If old subproject directories are found, they
will be migrated to the new modules directory. This change is the
first step in ensuring Git can understand repo's submodules to some
extent.

Change-Id: I385029f1bb55d040616d970d6ffb4bb856692520
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/444881
Tested-by: Kaushik Lingarkar &lt;kaushikl@qti.qualcomm.com&gt;
Reviewed-by: Josip Sokcevic &lt;sokcevic@chromium.org&gt;
</content>
</entry>
<entry>
<title>docs: smart-sync: split out &amp; expand details</title>
<updated>2025-01-31T03:17:24+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2025-01-31T00:11:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=dfdf577e98f6e9b13a3236767316863b3a995c01'/>
<id>urn:sha1:dfdf577e98f6e9b13a3236767316863b3a995c01</id>
<content type='text'>
The existing documentation on smart-sync behavior is a bit light on
details, and out of date wrt what the code actually does.  Start a
dedicated document and fill it out more.

Change-Id: I1a8a3ac6edf9291d72182ad55db865035d9b683e
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/450002
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Josip Sokcevic &lt;sokcevic@chromium.org&gt;
</content>
</entry>
<entry>
<title>Add REPO_SKIP_SELF_UPDATE check in sync</title>
<updated>2024-10-28T17:46:25+00:00</updated>
<author>
<name>Fredrik de Groot</name>
<email>fredrik.de.groot@haleytek.com</email>
</author>
<published>2024-10-22T12:14:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=ebdf0409d289b1133d5d95c8e06c30709902f1f0'/>
<id>urn:sha1:ebdf0409d289b1133d5d95c8e06c30709902f1f0</id>
<content type='text'>
The command _PostRepoFetch will try to self update
during repo sync. That is beneficial but adds
version uncertainty, fail potential and slow downs
in non-interactive scenarios.

Conditionally skip the update if env variable
REPO_SKIP_SELF_UPDATE is defined.

A call to selfupdate works as before, meaning even
with the variable set, it will run the update.

Change-Id: Iab0ef55dc3d3db3cbf1ba1f506c57fbb58a504c3
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/439967
Tested-by: Fredrik de Groot &lt;fredrik.de.groot@haleytek.com&gt;
Commit-Queue: Josip Sokcevic &lt;sokcevic@google.com&gt;
Reviewed-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
</content>
</entry>
<entry>
<title>manifest: add optional base check on remove and extend</title>
<updated>2024-10-28T16:55:10+00:00</updated>
<author>
<name>Fredrik de Groot</name>
<email>fredrik.de.groot@haleytek.com</email>
</author>
<published>2024-09-09T13:54:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=303bd963d57936873f62c7b61a885911afc46788'/>
<id>urn:sha1:303bd963d57936873f62c7b61a885911afc46788</id>
<content type='text'>
This adds an optional, built-in checker for
guarding against patches hanging on wrong
base revisions, which is useful if a lower layer of
the manifest changes after a patch was done.

When adding a patch with a new revision using
extend-project or remove-project/project:

          C---D---E patches in project bla
         /
    A---B project bla in manifest state 1

&lt;extend-project name="bla" revision="E" base-rev="B"&gt;

If project bla gets updated, in a new snap ID
or by a supplier or similar, to a new state:

          C---D---E patches in project bla
         /
    A---B---F---G project bla in manifest state 2

Parsing will fail because revision of bla is now G,
giving the choice to create a new patch branch
from G and updating base-rev, or keeping previous
branch for some reason and only updating base-rev.

Intended for use in a layered manifest with
hashed revisions. Named refs like branches and tags
also work fine when comparing, but will be misleading
if a branch is used as base-rev.

Change-Id: Ic6211550a7d3cc9656057f6a2087c505b40cad2b
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/436777
Reviewed-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Tested-by: Fredrik de Groot &lt;fredrik.de.groot@haleytek.com&gt;
Commit-Queue: Josip Sokcevic &lt;sokcevic@google.com&gt;
</content>
</entry>
<entry>
<title>git: raise soft version to 2.7.4</title>
<updated>2024-03-20T21:11:26+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2024-03-20T20:11:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=09fc214a7966a982ab837aedd010e3732c5ed7d1'/>
<id>urn:sha1:09fc214a7966a982ab837aedd010e3732c5ed7d1</id>
<content type='text'>
git-1.9.1 was released in 2014 while git-2.7.4 was released in 2016.
Debian Stretch was released in 2017 and Ubuntu Xenial was released in
2016 which are plenty old at this point.  Both of those include at
least git-2.7.4.

We will start warning users of Debian Jessie (released in 2015 &amp; EOL
in 2020) and Ubuntu Trusty (released in 2014 &amp; EOL Apr 2024) that
they will need to upgrade.

Change-Id: I6be3809bc45968fdcb02cad3f7daf75ded1bb5b1
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/415137
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
</content>
</entry>
<entry>
<title>docs: release: add recent git/python/ssh/debian info</title>
<updated>2024-03-20T19:49:01+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2024-03-20T19:34:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=ae419e1e018a7f668deb69c98fa615f65e660932'/>
<id>urn:sha1:ae419e1e018a7f668deb69c98fa615f65e660932</id>
<content type='text'>
Change-Id: I744360b1bfc816e94b3511f0130abb2c08dedd42
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/415117
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Josip Sokcevic &lt;sokcevic@google.com&gt;
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
</content>
</entry>
<entry>
<title>docs: fix some grammar typos</title>
<updated>2024-01-04T17:19:33+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2024-01-04T17:08:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=138c8a9ff543ce93c0e0a72581b255a0cb136994'/>
<id>urn:sha1:138c8a9ff543ce93c0e0a72581b255a0cb136994</id>
<content type='text'>
Change-Id: Ie1a32cda67f94b0a2b3329b1be9e03dcbedf39cc
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/400917
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>
<entry>
<title>python-support: update with current status &amp; guidelines</title>
<updated>2023-10-14T06:22:53+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@google.com</email>
</author>
<published>2023-10-13T20:25:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=1544afe460b6d206d5494d1970db33e7f8cdfab0'/>
<id>urn:sha1:1544afe460b6d206d5494d1970db33e7f8cdfab0</id>
<content type='text'>
This doc was written back in 2019 when we were planning on the Python 3
migration.  It isn't relevant anymore, and people are reading it thinking
we still support Python 2.  Rewrite it to match current requirements and
to make it clear there is no support for older versions.

Bug: 302871152
Change-Id: I2acf3aee1816a03ee0a70774db8bf4a23713a03f
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/389455
Commit-Queue: Mike Frysinger &lt;vapier@google.com&gt;
Reviewed-by: Aravind Vasudevan &lt;aravindvasudev@google.com&gt;
Tested-by: Mike Frysinger &lt;vapier@google.com&gt;
</content>
</entry>
<entry>
<title>docs: Document .repo_localsyncstate.json</title>
<updated>2023-08-18T18:19:46+00:00</updated>
<author>
<name>Gavin Mak</name>
<email>gavinmak@google.com</email>
</author>
<published>2023-08-16T22:06:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=11cb96030ed5a0c322b5262c10a6af1a70486981'/>
<id>urn:sha1:11cb96030ed5a0c322b5262c10a6af1a70486981</id>
<content type='text'>
Update docs to reflect the new internal filesystem layout.

Bug: b/286126621, b/271507654
Change-Id: I8a2f8f36dff75544f32356ac5e31668f32ddffb3
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/383074
Reviewed-by: Mike Frysinger &lt;vapier@google.com&gt;
Commit-Queue: Gavin Mak &lt;gavinmak@google.com&gt;
Tested-by: Gavin Mak &lt;gavinmak@google.com&gt;
</content>
</entry>
</feed>
