Show More
@@ -4927,6 +4927,10 b' def resolve(ui, repo, *pats, **opts):' | |||||
4927 | 'use --all to remerge all files')) |
|
4927 | 'use --all to remerge all files')) | |
4928 |
|
4928 | |||
4929 | ms = mergemod.mergestate(repo) |
|
4929 | ms = mergemod.mergestate(repo) | |
|
4930 | ||||
|
4931 | if not ms.active(): | |||
|
4932 | raise util.Abort(_('resolve command not applicable when not merging')) | |||
|
4933 | ||||
4930 | m = scmutil.match(repo[None], pats, opts) |
|
4934 | m = scmutil.match(repo[None], pats, opts) | |
4931 | ret = 0 |
|
4935 | ret = 0 | |
4932 |
|
4936 |
@@ -175,6 +175,18 b' class mergestate(object):' | |||||
175 | raise |
|
175 | raise | |
176 | return records |
|
176 | return records | |
177 |
|
177 | |||
|
178 | def active(self): | |||
|
179 | """Whether mergestate is active. | |||
|
180 | ||||
|
181 | Returns True if there appears to be mergestate. This is a rough proxy | |||
|
182 | for "is a merge in progress." | |||
|
183 | """ | |||
|
184 | # Check local variables before looking at filesystem for performance | |||
|
185 | # reasons. | |||
|
186 | return bool(self._local) or bool(self._state) or \ | |||
|
187 | self._repo.opener.exists(self.statepathv1) or \ | |||
|
188 | self._repo.opener.exists(self.statepathv2) | |||
|
189 | ||||
178 | def commit(self): |
|
190 | def commit(self): | |
179 | """Write current state on disk (if necessary)""" |
|
191 | """Write current state on disk (if necessary)""" | |
180 | if self._dirty: |
|
192 | if self._dirty: |
@@ -85,6 +85,8 b' abort the edit' | |||||
85 |
|
85 | |||
86 | log after abort |
|
86 | log after abort | |
87 | $ hg resolve -l |
|
87 | $ hg resolve -l | |
|
88 | abort: resolve command not applicable when not merging | |||
|
89 | [255] | |||
88 | $ hg log --graph |
|
90 | $ hg log --graph | |
89 | @ changeset: 6:bfa474341cc9 |
|
91 | @ changeset: 6:bfa474341cc9 | |
90 | | tag: tip |
|
92 | | tag: tip |
@@ -37,9 +37,11 b' resolve the failure' | |||||
37 | $ hg resolve -m file |
|
37 | $ hg resolve -m file | |
38 | $ hg commit -m 'resolved' |
|
38 | $ hg commit -m 'resolved' | |
39 |
|
39 | |||
40 | resolve -l, should be empty |
|
40 | resolve -l should error since no merge in progress | |
41 |
|
41 | |||
42 | $ hg resolve -l |
|
42 | $ hg resolve -l | |
|
43 | abort: resolve command not applicable when not merging | |||
|
44 | [255] | |||
43 |
|
45 | |||
44 | test crashed merge with empty mergestate |
|
46 | test crashed merge with empty mergestate | |
45 |
|
47 |
General Comments 0
You need to be logged in to leave comments.
Login now