[PATCH 1 of 2 phases] phases: Embryo of documention for the phase topic
pierre-yves.david at logilab.fr
pierre-yves.david at logilab.fr
Tue Jan 10 18:46:45 UTC 2012
# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at logilab.fr>
# Date 1326221047 -3600
# Node ID 9b6069f654f15658f9bd6101a2675208fa77d41b
# Parent 81c8a9bc7c0776543fee04e7ad7729daa6f2537d
phases: Embryo of documention for the phase topic
This a basic content taken from the mercurial/phase.py documentation. A more
exaustive and consistent is to be written later.
the main reason to create this first version is that several command an message
refer to it.
diff --git a/mercurial/help/phases.txt b/mercurial/help/phases.txt
new file mode 100644
--- /dev/null
+++ b/mercurial/help/phases.txt
@@ -0,0 +1,34 @@
+Basic Concept
+=============
+
+A 'changeset phases' is an indicator that tells us how a changeset is
+manipulated and communicated. The details of each phase is described below,
+here we describe the properties they have in common.
+
+Like bookmarks, phases are not stored in history and thus are not permanent and
+leave no audit trail.
+
+First, no changeset can be in two phases at once. Phases are ordered, so they
+can be considered from lowest to highest. The default, lowest phase is 'public'
+- this is the normal phase of existing changesets. A child changeset can not be
+in a lower phase than its parents.
+
+These phases share a hierarchy of traits:
+
+ immutable shared
+ public: X X
+ draft: X
+ secret:
+
+local commits are draft by default
+
+Phase movement and exchange
+============================
+
+Phase data are exchanged by pushkey on pull and push. Some server have a
+publish option set, we call them publishing server. Pushing to such server make
+draft changeset publish.
+
+Note: old client behave as publish server with Draft only content
+- other people see it as public
+- content is pushed as draft
More information about the Mercurial-devel
mailing list