summaryrefslogtreecommitdiffstats
path: root/manifest.py
Commit message (Collapse)AuthorAgeFilesLines
* Refactor Manifest to be XmlManifestShawn O. Pearce2009-05-291-381/+0
| | | | | | | | We'll soon be supporting two different manifest formats, but we can't immediately remove support for the current XML one that is in wide spread use within Android. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Remove support for the extra <remote> definitions in manifestsShawn O. Pearce2009-05-191-36/+2
| | | | | | | | | These aren't that widely used, and actually make it difficult for users to fully mirror a forest of repositories, and then permit someone else to clone off that forest, rather then the original upstream servers. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Remove unused parsing support for <require commit=""/>Shawn O. Pearce2009-05-191-5/+0
| | | | | | | We haven't supported this in a while, but the parser was still here. Its all dead code, so strip it out. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Add repo manifest -o to save a manifestv1.6.2Shawn O. Pearce2009-03-051-2/+72
| | | | | | | | | This can be useful to create a new manifest from an existing client, especially if the client wants to use the "-r" option to set each project's revision to the current commit SHA-1, making a sort of a tag file that can be used to recreate this exact state elsewhere. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Support <remove-project name="X"> in manifest to remove/replace Xv1.4Shawn O. Pearce2008-11-201-0/+10
| | | | | | | | The manifest files now permit removing a project so the user can either keep it out of their client, or replace it with a different project using an entirely different configuration. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Treat missing attributes as None when parsing the manifestv1.2Shawn O. Pearce2008-11-061-0/+2
| | | | | | Some of our code assumes that a property is None. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Add <add-remote to-project="..."> to inject additional remotesShawn O. Pearce2008-11-061-7/+20
| | | | | | | | | | | This way users can add forks they know about to an existing project that was already declared in the primary manifest. This is mostly useful with the Linux kernel project, where multiple forks is quite common for the main upstream tree (e.g. Linus' tree), a platform architecture tree (e.g. ARM) and a device specific tree (e.g. the msm7k tree used by Android). Signed-off-by: Shawn O. Pearce <sop@google.com>
* Add <remote project-name="..."> attribute within projectsShawn O. Pearce2008-11-061-1/+8
| | | | | | | | | | | | By setting a project-name on a remote nested within a project forks of a project like the Linux kernel can be easily handled by fetching all relevant forks into the same client side project under different remote names. Developers can create branches off different remotes using `git checkout --track -b $myname $remote/$branch` and later `repo upload` automatically redirects to the proper fork project in the code review server. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Add 'repo init --mirror' to download a complete forrestv1.1Shawn O. Pearce2008-11-051-4/+53
| | | | | | | | | | | | | | | The mirror option downloads a complete forrest (as described by the manifest) and creates a replica of the remote repositories rather than a client working directory. This permits other clients to sync off the mirror site. A mirror can be positioned in a "DMZ", where the mirror executes "repo sync" to obtain changes from the external upstream and clients inside the protected zone operate off the mirror only, and therefore do not require direct git:// access to the external upstream repositories. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Assume the manifest branch matches the branch name in GitShawn O. Pearce2008-11-041-6/+7
| | | | | | | | | | | Whatever branch name we checked the manifest out from is the name we want to reflect throughout the rest of the projects, e.g. within the special "m/" remote space. This reduces the difference between different branches within the manifest file. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Cleanup stale manifest migration code from manifest.pyShawn O. Pearce2008-11-041-9/+2
| | | | | | | | | | | Prior to open-sourcing repo we had manifests in two different layouts; one where the manifest was a straight-up git clone, and one where the manifest was our bare repository with symlink work tree format (identical to what our projects use). Only the latter form is created or used by repo at this point, so the transition code to handle the straight-up git clone is not necessary. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Remove import_tar, import_zip and the <snapshot> elementsv1.0.7Shawn O. Pearce2008-10-301-72/+0
| | | | | | | | | | Now that repo relies only on the git data stream (as it is much faster to download through) we don't really need to be parsing the <snapshot> elements within manifest. Its a lot of complex code to convert the tar (or zip) through to a fast import stream, and we just aren't calling it anymore. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Move the Editor configuration out of Manifest's constructorShawn O. Pearce2008-10-291-3/+0
| | | | | | | | This way we can build more than one Manifest instance in memory and not muck around with the Editor configuration each time we build a new instance. Signed-off-by: Shawn O. Pearce <sop@google.com>
* Support user supplied custom .repo/local_manifest.xml filesv1.0.5Shawn O. Pearce2008-10-231-5/+17
| | | | | | | | | | | | | | | | | | | By creating a .repo/local_manifest.xml the user can add extra projects into their client space, without touching the main manifest script. For example: $ cat .repo/local_manifest.xml <?xml version="1.0" encoding="UTF-8"?> <manifest> <project path="android-build" name="platform/build" remote="korg" revision="android-1.0" /> </manifest> Signed-off-by: Shawn O. Pearce <sop@google.com>
* Initial Contributionv1.0The Android Open Source Project2008-10-211-0/+338