share: be more explicit about the dangers of rollback. stable
authorGreg Ward <greg-hg@gerg.ca>
Wed, 13 Jan 2010 22:05:06 -0500
branchstable
changeset 10256 279c8a73fde1
parent 10255 26fc868cb8b0
child 10257 a9c0d6060827
child 10258 d58d7441b211
share: be more explicit about the dangers of rollback.
hgext/share.py
--- a/hgext/share.py	Wed Jan 06 03:27:15 2010 +0100
+++ b/hgext/share.py	Wed Jan 13 22:05:06 2010 -0500
@@ -14,8 +14,15 @@
     Initialize a new repository and working directory that shares its
     history with another repository.
 
-    NOTE: actions that change history such as rollback or moving the
-    source may confuse sharers.
+    NOTE: using rollback or extensions that destroy/modify history
+    (mq, rebase, etc.) can cause considerable confusion with shared
+    clones. In particular, if two shared clones are both updated to
+    the same changeset, and one of them destroys that changeset with
+    rollback, the other clone will suddenly stop working: all
+    operations will fail with "abort: working directory has unknown
+    parent". The only known workaround is to use debugsetparents on
+    the broken clone to reset it to a changeset that still exists
+    (e.g. tip).
     """
 
     return hg.share(ui, source, dest, not noupdate)