[PATCH 8 of 8 V12] help: add documentation about bookmark part

Stanislau Hlebik stash at fb.com
Thu Dec 1 13:07:27 EST 2016


# HG changeset patch
# User Stanislau Hlebik <stash at fb.com>
# Date 1479807361 28800
#      Tue Nov 22 01:36:01 2016 -0800
# Node ID 261bc4a0670a47a8fbe8d633f19f92542be4790c
# Parent  dc34527b28959ef96a4e7b23430ad467b5fbf85e
help: add documentation about bookmark part

diff --git a/mercurial/help/internals/bundles.txt b/mercurial/help/internals/bundles.txt
--- a/mercurial/help/internals/bundles.txt
+++ b/mercurial/help/internals/bundles.txt
@@ -92,3 +92,32 @@
 ``HGS1UN`` support was added as an experimental feature in version 3.6
 (released November 2015) as part of the initial offering of the *clone
 bundles* feature.
+
+Bundle2 parts
+=============
+
+Bundle2 may contain many different pieces of information. These pieces are
+called parts.
+
+Bookmarks part
+--------------
+
+This part contains information about bookmarks. Part consists of many entries.
+Each entry describes one bookmark. Entry format:
+
+4 bytes
+  bookmark size
+1 byte
+  boolean. True if node is empty, False otherwise
+20 bytes (optional)
+  node. Present only if previous field is True
+
+Modes:
+
+1. 'ignore' - do not apply any changes to the repo, just decode the passed
+bookmarks. Will be used to list bookmarks in remote repo.
+2. 'diverge' - apply bookmark changes to the repo. Create divergent bookmarks if
+there is a non-fastforward move. Will be used during pull.
+3. 'apply' - apply bookmark changes to the repo. Overwrite current bookmark node
+if there is a non-fastforward move. Will be used during push.
+


More information about the Mercurial-devel mailing list