Christian Ebert avatar Christian Ebert committed e8f8c60

Prevent crecording a merge

Comments (0)

Files changed (2)

+# HG changeset patch
+# User Christian Ebert <blacktrash@gmx.net>
+# Parent 261a07b3040722c06987d4bff64aa146aeb554e3
+Abort when trying to crecord a merge
+
+Analogous to feb2a58fc592 in main.
+
+diff --git a/crecord/__init__.py b/crecord/__init__.py
+--- a/crecord/__init__.py
++++ b/crecord/__init__.py
+@@ -24,7 +24,8 @@
+     You will be shown a list of patch hunks from which you can select
+     those you would like to apply to the commit.
+ 
+-    '''
++    This command is not available when committing a merge.'''
++
+     dorecord(ui, repo, commands.commit, *pats, **opts)
+ 
+ 
+diff --git a/crecord/crecord_core.py b/crecord/crecord_core.py
+--- a/crecord/crecord_core.py
++++ b/crecord/crecord_core.py
+@@ -36,6 +36,12 @@
+         In the end we'll record interesting changes, and everything else will be
+         left in place, so the user can continue his work.
+         """
++
++        merge = len(repo[None].parents()) > 1
++        if merge:
++            raise util.Abort(_('cannot partially commit a merge '
++                               '(use hg commit instead)'))
++
+         if match.files():
+             changes = None
+         else:
 typo.diff
 no-debug-translate.diff
+abort-merge.diff
 # Placed by Bitbucket
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.