summaryrefslogtreecommitdiff
path: root/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/mercurial/help/subrepos.txt
diff options
context:
space:
mode:
Diffstat (limited to 'eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/mercurial/help/subrepos.txt')
-rw-r--r--eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/mercurial/help/subrepos.txt127
1 files changed, 0 insertions, 127 deletions
diff --git a/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/mercurial/help/subrepos.txt b/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/mercurial/help/subrepos.txt
deleted file mode 100644
index bd4e01b..0000000
--- a/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/mercurial/help/subrepos.txt
+++ /dev/null
@@ -1,127 +0,0 @@
-Subrepositories let you nest external repositories or projects into a
-parent Mercurial repository, and make commands operate on them as a
-group. External Mercurial and Subversion projects are currently
-supported.
-
-Subrepositories are made of three components:
-
-1. Nested repository checkouts. They can appear anywhere in the
- parent working directory, and are Mercurial clones or Subversion
- checkouts.
-
-2. Nested repository references. They are defined in ``.hgsub`` and
- tell where the subrepository checkouts come from. Mercurial
- subrepositories are referenced like:
-
- path/to/nested = https://example.com/nested/repo/path
-
- where ``path/to/nested`` is the checkout location relatively to the
- parent Mercurial root, and ``https://example.com/nested/repo/path``
- is the source repository path. The source can also reference a
- filesystem path. Subversion repositories are defined with:
-
- path/to/nested = [svn]https://example.com/nested/trunk/path
-
- Note that ``.hgsub`` does not exist by default in Mercurial
- repositories, you have to create and add it to the parent
- repository before using subrepositories.
-
-3. Nested repository states. They are defined in ``.hgsubstate`` and
- capture whatever information is required to restore the
- subrepositories to the state they were committed in a parent
- repository changeset. Mercurial automatically record the nested
- repositories states when committing in the parent repository.
-
- .. note::
- The ``.hgsubstate`` file should not be edited manually.
-
-
-Adding a Subrepository
-----------------------
-
-If ``.hgsub`` does not exist, create it and add it to the parent
-repository. Clone or checkout the external projects where you want it
-to live in the parent repository. Edit ``.hgsub`` and add the
-subrepository entry as described above. At this point, the
-subrepository is tracked and the next commit will record its state in
-``.hgsubstate`` and bind it to the committed changeset.
-
-Synchronizing a Subrepository
------------------------------
-
-Subrepos do not automatically track the latest changeset of their
-sources. Instead, they are updated to the changeset that corresponds
-with the changeset checked out in the top-level changeset. This is so
-developers always get a consistent set of compatible code and
-libraries when they update.
-
-Thus, updating subrepos is a manual process. Simply check out target
-subrepo at the desired revision, test in the top-level repo, then
-commit in the parent repository to record the new combination.
-
-Deleting a Subrepository
-------------------------
-
-To remove a subrepository from the parent repository, delete its
-reference from ``.hgsub``, then remove its files.
-
-Interaction with Mercurial Commands
------------------------------------
-
-:add: add does not recurse in subrepos unless -S/--subrepos is
- specified. Subversion subrepositories are currently silently
- ignored.
-
-:archive: archive does not recurse in subrepositories unless
- -S/--subrepos is specified.
-
-:commit: commit creates a consistent snapshot of the state of the
- entire project and its subrepositories. It does this by first
- attempting to commit all modified subrepositories, then recording
- their state and finally committing it in the parent repository.
-
-:diff: diff does not recurse in subrepos unless -S/--subrepos is
- specified. Changes are displayed as usual, on the subrepositories
- elements. Subversion subrepositories are currently silently
- ignored.
-
-:incoming: incoming does not recurse in subrepos unless -S/--subrepos
- is specified. Subversion subrepositories are currently silently
- ignored.
-
-:outgoing: outgoing does not recurse in subrepos unless -S/--subrepos
- is specified. Subversion subrepositories are currently silently
- ignored.
-
-:pull: pull is not recursive since it is not clear what to pull prior
- to running :hg:`update`. Listing and retrieving all
- subrepositories changes referenced by the parent repository pulled
- changesets is expensive at best, impossible in the Subversion
- case.
-
-:push: Mercurial will automatically push all subrepositories first
- when the parent repository is being pushed. This ensures new
- subrepository changes are available when referenced by top-level
- repositories.
-
-:status: status does not recurse into subrepositories unless
- -S/--subrepos is specified. Subrepository changes are displayed as
- regular Mercurial changes on the subrepository
- elements. Subversion subrepositories are currently silently
- ignored.
-
-:update: update restores the subrepos in the state they were
- originally committed in target changeset. If the recorded
- changeset is not available in the current subrepository, Mercurial
- will pull it in first before updating. This means that updating
- can require network access when using subrepositories.
-
-Remapping Subrepositories Sources
----------------------------------
-
-A subrepository source location may change during a project life,
-invalidating references stored in the parent repository history. To
-fix this, rewriting rules can be defined in parent repository ``hgrc``
-file or in Mercurial configuration. See the ``[subpaths]`` section in
-hgrc(5) for more details.
-