<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tools/git-repo.git/docs, branch v1.12.2</title>
<subtitle>Mirror of gerrit.googlesource.com/git-repo</subtitle>
<id>https://git.enea.com/cgit/tools/git-repo.git/atom?h=v1.12.2</id>
<link rel='self' href='https://git.enea.com/cgit/tools/git-repo.git/atom?h=v1.12.2'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/'/>
<updated>2013-01-29T01:09:21+00:00</updated>
<entry>
<title>Add missing manifest format documentation</title>
<updated>2013-01-29T01:09:21+00:00</updated>
<author>
<name>David Pursehouse</name>
<email>david.pursehouse@sonymobile.com</email>
</author>
<published>2012-11-27T13:20:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=4e46520362e4c75ae7809c74f3d1c21e86852ee8'/>
<id>urn:sha1:4e46520362e4c75ae7809c74f3d1c21e86852ee8</id>
<content type='text'>
Documentation of the "sync-j", "sync-c", "sync-s" and "upstream"
attributes is missing/incomplete.  Add it.

Change-Id: I74977f819f603c520ef3818f85c3b51399cd2b94
</content>
</entry>
<entry>
<title>Represent git-submodule as nested projects, take 2</title>
<updated>2012-11-19T18:45:21+00:00</updated>
<author>
<name>Che-Liang Chiou</name>
<email>clchiou@google.com</email>
</author>
<published>2012-01-11T03:28:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=b2bd91c99b9435cf950ecf8efbb8439f31d3fcbc'/>
<id>urn:sha1:b2bd91c99b9435cf950ecf8efbb8439f31d3fcbc</id>
<content type='text'>
(Previous submission of this change broke Android buildbot due to
 incorrect regular expression for parsing git-config output.  During
 investigation, we also found that Android, which pulls Chromium, has a
 workaround for Chromium's submodules; its manifest includes Chromium's
 submodules.  This new change, in addition to fixing the regex, also
 take this type of workarounds into consideration; it adds a new
 attribute that makes repo not fetch submodules unless submodules have a
 project element defined in the manifest, or this attribute is
 overridden by a parent project element or by the default element.)

We need a representation of git-submodule in repo; otherwise repo will
not sync submodules, and leave workspace in a broken state.  Of course
this will not be a problem if all projects are owned by the owner of the
manifest file, who may simply choose not to use git-submodule in all
projects.  However, this is not possible in practice because manifest
file owner is unlikely to own all upstream projects.

As git submodules are simply git repositories, it is natural to treat
them as plain repo projects that live inside a repo project.  That is,
we could use recursively declared projects to denote the is-submodule
relation of git repositories.

The behavior of repo remains the same to projects that do not have a
sub-project within.  As for parent projects, repo fetches them and their
sub-projects as normal projects, and then checks out subprojects at the
commit specified in parent's commit object.  The sub-project is fetched
at a path relative to parent project's working directory; so the path
specified in manifest file should match that of .gitmodules file.

If a submodule is not registered in repo manifest, repo will derive its
properties from itself and its parent project, which might not always be
correct.  In such cases, the subproject is called a derived subproject.

To a user, a sub-project is merely a git-submodule; so all tips of
working with a git-submodule apply here, too.  For example, you should
not run `repo sync` in a parent repository if its submodule is dirty.

Change-Id: I4b8344c1b9ccad2f58ad304573133e5d52e1faef
</content>
</entry>
<entry>
<title>Minor documentation formatting and grammatical fixes</title>
<updated>2012-11-13T23:54:43+00:00</updated>
<author>
<name>David Pursehouse</name>
<email>david.pursehouse@sonymobile.com</email>
</author>
<published>2012-11-13T23:52:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=9f3406ea4635e0f8cef1d0ec4dbfe6b1554375d6'/>
<id>urn:sha1:9f3406ea4635e0f8cef1d0ec4dbfe6b1554375d6</id>
<content type='text'>
Change-Id: Iaac6377c787b3bb42242780e9d1116e718e0188d
</content>
</entry>
<entry>
<title>Fix documentation reference to local_manifest.xml</title>
<updated>2012-11-13T23:54:04+00:00</updated>
<author>
<name>David Pursehouse</name>
<email>david.pursehouse@sonymobile.com</email>
</author>
<published>2012-11-13T23:51:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=b1525bffae609455331d8587c14d22a5f58e203b'/>
<id>urn:sha1:b1525bffae609455331d8587c14d22a5f58e203b</id>
<content type='text'>
Documentation of the remove-project element still refers explicitly
to local_manifest.xml.

Change it to the more generic "a local manifest".

Change-Id: I6278beab99a582fae26a4e053adc110362c714c2
</content>
</entry>
<entry>
<title>Make load order of local manifests deterministic</title>
<updated>2012-11-13T20:05:32+00:00</updated>
<author>
<name>David Pursehouse</name>
<email>david.pursehouse@sonymobile.com</email>
</author>
<published>2012-11-13T19:53:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=52f1e5d9111c586624de48b5f705e10b67d109b3'/>
<id>urn:sha1:52f1e5d9111c586624de48b5f705e10b67d109b3</id>
<content type='text'>
Local manifest files stored in the local_manifests folder are loaded
in alphabetical order, so it's easier to know in which order project
removals/additions/modifications will be applied.

If local_manifests.xml exists, it will be loaded before the files in
local_manifests.

Change-Id: Ia5c0349608f1823b4662cd6b340b99915bd973d5
</content>
</entry>
<entry>
<title>Print deprecation warning when local_manifest.xml is used</title>
<updated>2012-11-12T23:19:51+00:00</updated>
<author>
<name>David Pursehouse</name>
<email>david.pursehouse@sonymobile.com</email>
</author>
<published>2012-11-12T18:04:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=5566ae5ddea409279b13e538b513a73062862c3e'/>
<id>urn:sha1:5566ae5ddea409279b13e538b513a73062862c3e</id>
<content type='text'>
The preferred way to specify local manifests is to drop the file(s)
in the local_manifests folder.  Print a deprecation warning when
the legacy local_manifest.xml file is used.

Change-Id: Ice85bd06fb612d6fcceeaa0755efd130556c4464
</content>
</entry>
<entry>
<title>Add support for multiple local manifests</title>
<updated>2012-11-12T23:19:51+00:00</updated>
<author>
<name>David Pursehouse</name>
<email>david.pursehouse@sonymobile.com</email>
</author>
<published>2012-11-12T17:50:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=2d5a0df798b7b16ccf9c17b2435a9640cf0d81c0'/>
<id>urn:sha1:2d5a0df798b7b16ccf9c17b2435a9640cf0d81c0</id>
<content type='text'>
Add support for multiple local manifests stored in the local_manifests
folder under the .repo home directory.

Local manifests will be processed in addition to local_manifest.xml.

Change-Id: Ia0569cea7e9ae0fe3208a8ffef5d9679e14db03b
</content>
</entry>
<entry>
<title>Revert "Represent git-submodule as nested projects"</title>
<updated>2012-10-26T19:24:57+00:00</updated>
<author>
<name>Shawn O. Pearce</name>
<email>sop@google.com</email>
</author>
<published>2012-10-26T19:18:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=cd81dd6403fc8dbe6ec5920c517d9083902c3c1f'/>
<id>urn:sha1:cd81dd6403fc8dbe6ec5920c517d9083902c3c1f</id>
<content type='text'>
This reverts commit 69998b0c6ff724bf620480140ccce648fec7d6a9.
Broke Android's non-gitmodule use case.

Conflicts:
	project.py
	subcmds/sync.py

Change-Id: I68ceeb63d8ee3b939f85a64736bdc81dfa352aed
</content>
</entry>
<entry>
<title>Represent git-submodule as nested projects</title>
<updated>2012-10-23T23:08:58+00:00</updated>
<author>
<name>Che-Liang Chiou</name>
<email>clchiou@google.com</email>
</author>
<published>2012-01-11T03:28:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=69998b0c6ff724bf620480140ccce648fec7d6a9'/>
<id>urn:sha1:69998b0c6ff724bf620480140ccce648fec7d6a9</id>
<content type='text'>
We need a representation of git-submodule in repo; otherwise repo will
not sync submodules, and leave workspace in a broken state.  Of course
this will not be a problem if all projects are owned by the owner of the
manifest file, who may simply choose not to use git-submodule in all
projects.  However, this is not possible in practice because manifest
file owner is unlikely to own all upstream projects.

As git submodules are simply git repositories, it is natural to treat
them as plain repo projects that live inside a repo project.  That is,
we could use recursively declared projects to denote the is-submodule
relation of git repositories.

The behavior of repo remains the same to projects that do not have a
sub-project within.  As for parent projects, repo fetches them and their
sub-projects as normal projects, and then checks out subprojects at the
commit specified in parent's commit object.  The sub-project is fetched
at a path relative to parent project's working directory; so the path
specified in manifest file should match that of .gitmodules file.

If a submodule is not registered in repo manifest, repo will derive its
properties from itself and its parent project, which might not always be
correct.  In such cases, the subproject is called a derived subproject.

To a user, a sub-project is merely a git-submodule; so all tips of
working with a git-submodule apply here, too.  For example, you should
not run `repo sync` in a parent repository if its submodule is dirty.

Change-Id: I541e9e2ac1a70304272dbe09724572aa1004eb5c
</content>
</entry>
<entry>
<title>Allow projects to be specified as notdefault</title>
<updated>2012-09-05T18:46:48+00:00</updated>
<author>
<name>Conley Owens</name>
<email>cco3@android.com</email>
</author>
<published>2012-08-13T20:11:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/tools/git-repo.git/commit/?id=bb1b5f5f863fca0e85764f5b35c117f5724d15c0'/>
<id>urn:sha1:bb1b5f5f863fca0e85764f5b35c117f5724d15c0</id>
<content type='text'>
Instead of every group being in the group "default", every project
is now in the group "all".   A group that should not be downloaded
by default may be added to the group "notdefault".

This allows all group names to be positive (instead of removing groups
directly in the manifest with -default) and offers a clear way of
selecting every project (--groups all).

Change-Id: I99cd70309adb1f8460db3bbc6eff46bdcd22256f
</content>
</entry>
</feed>
