Comments
Patch
@@ -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.
+