Mercurial > hg
annotate tests/fakemergerecord.py @ 28573:6a42564081cb
shelve: adds restoring newly created branch (issue5048) (BC)
Before this patch shelve never preserved branch information,
so after applying unshelve branch was the same as it was
on working copy no matter in which branch shelve took place.
This patch makes bare shelving(with no files specified, without
interactive,include and exclude option) remembers information if
the working directory was on newly created branch ,in other words
working directory was on different branch than its first parent.
In this situation unshelving restores branch information to the working
directory.
author | liscju <piotr.listkiewicz@gmail.com> |
---|---|
date | Wed, 10 Feb 2016 02:23:27 +0100 |
parents | a01ecbcfaf84 |
children | b303b3817d0e |
rev | line source |
---|---|
27027
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
1 # Extension to write out fake unsupported records into the merge state |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
2 # |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
3 # |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
4 |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
5 from __future__ import absolute_import |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
6 |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
7 from mercurial import ( |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
8 cmdutil, |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
9 merge, |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
10 ) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
11 |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
12 cmdtable = {} |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
13 command = cmdutil.command(cmdtable) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
14 |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
15 @command('fakemergerecord', |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
16 [('X', 'mandatory', None, 'add a fake mandatory record'), |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
17 ('x', 'advisory', None, 'add a fake advisory record')], '') |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
18 def fakemergerecord(ui, repo, *pats, **opts): |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
19 ms = merge.mergestate.read(repo) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
20 records = ms._makerecords() |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
21 if opts.get('mandatory'): |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
22 records.append(('X', 'mandatory record')) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
23 if opts.get('advisory'): |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
24 records.append(('x', 'advisory record')) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff
changeset
|
25 ms._writerecords(records) |