Matt Mackall
3ad18f34e2
merge: don't call hooks for revert
...
- don't call hooks for revert
- use extra variables to avoid swapping contexts
2006-10-09 18:13:38 -05:00
Matt Mackall
83b47aba30
merge: use contexts for manifestmerge
...
- take ma, backwards, and copy out of update
- move findcopies call inside manifestmerge
- pass repo rather than ui
2006-10-09 16:07:19 -05:00
Matt Mackall
ddd540c49d
merge: remember rename copies and parents properly on commit
...
record copies in dirstate even if rename was remote
this lets us record it properly at commit
teach checkfilemerge about copies, including merge cases
pull old copy code out of commit
extend rename-merge1 test to show file index
2006-10-08 19:57:45 -05:00
Matt Mackall
718de207ba
merge: copy fixes and tests
...
Fix up "already seen" logic
Fix merge action in remote copy case
Add status message
Add lots of merge+copy/move test cases
2006-10-06 16:55:11 -05:00
Matt Mackall
81e539f559
merge: fixes for merge+rename
...
findcopies: ignore files renamed on both branches
applyupdates: change remove flag to move
recordupdates: record copy actions, including local moves and deletions
2006-10-04 19:08:04 -05:00
Matt Mackall
1ceaacc1cf
merge: add rename following
...
Currently disabled by default, enable with
[merge]
followcopies = 1
2006-10-04 15:43:27 -05:00
Matt Mackall
88fc6d0497
merge: reduce manifest copying
2006-10-04 14:33:22 -05:00
Matt Mackall
246beb812d
merge: reorder dirstate update slightly for correctness
2006-10-04 14:09:26 -05:00
Matt Mackall
93a98b345e
merge: use new working context object in update
2006-10-03 01:21:46 -05:00
Matt Mackall
3fb2b33be7
merge: remove old merge function
2006-10-02 12:06:33 -05:00
Matt Mackall
a9124fdfed
merge: extend file merge function for renames
2006-10-02 12:04:48 -05:00
Matt Mackall
450d02d6e1
merge: minor nullid cleanup
2006-09-29 17:50:59 -05:00
Matt Mackall
72659a3964
merge: use repo.parents and parent contexts in update
2006-09-29 16:39:38 -05:00
Matt Mackall
4f4a6b4d59
merge: move partial filtering out of manifest merge
2006-09-26 16:21:52 -05:00
Matt Mackall
366e05ddd4
merge: move findcopies after workingmanifest
2006-09-26 16:04:07 -05:00
Matt Mackall
a8304d2a61
findcopies: shortcut for empty working dir
2006-09-26 15:58:51 -05:00
Matt Mackall
ef4a93bd92
findcopies: use dirstate rename information
2006-09-25 20:31:05 -05:00
Matt Mackall
235ebaa809
Add core copy detection algorithm
...
This adds findcopies, which detects merge-relevant copies between
files in a pair of manifests back to the merge ancestor.
While the merge code invokes the copy detection routine, it does not
yet use the result.
2006-09-25 16:45:31 -05:00
Matt Mackall
885b6f1a23
merge: simplify actions with helper function
2006-09-17 21:27:30 -05:00
Matt Mackall
56ee773f9b
merge: simplify local created logic
2006-09-17 21:11:26 -05:00
Matt Mackall
3fb7ecf4fc
merge: simplify prompt code
2006-09-17 20:43:06 -05:00
Matt Mackall
55f5616f63
merge: simplify exec flag handling
2006-09-17 20:38:02 -05:00
Matt Mackall
e626757894
merge: simplify tests for local changed/remote deleted
2006-09-17 20:18:27 -05:00
Matt Mackall
130870e3b4
merge: more simplification of m2 manifest scanning
2006-09-17 20:10:54 -05:00
Matt Mackall
7b613a7651
merge: reorder tests on m2 items in manifestmerge
2006-09-17 20:00:14 -05:00
Matt Mackall
35d8b2766b
merge: eliminate redundant security check
...
duplicated in applyupdates
2006-09-17 19:54:01 -05:00
Matt Mackall
dbfce7afdf
merge: eliminate confusing queued variable
2006-09-17 19:53:19 -05:00
Matt Mackall
57a97bbee9
merge: remove no longer possible clause
2006-09-17 18:28:50 -05:00
Matt Mackall
f974d70a70
merge: move apply and dirstate code into separate functions
2006-09-17 17:39:19 -05:00
Matt Mackall
769045bfdc
merge: remove linear variable
2006-09-17 17:13:02 -05:00
Matt Mackall
7a90b4f86c
merge: simplify hook code
2006-09-17 17:07:44 -05:00
Matt Mackall
0ef93234ad
merge: linear_path -> linear
2006-09-17 16:50:17 -05:00
Matt Mackall
e892404453
merge: pull manifest checks and updates into separate functions
2006-09-17 16:47:33 -05:00
Matt Mackall
404e69c300
merge: remove now unused umap dict
2006-09-17 16:13:34 -05:00
Matt Mackall
d9a7957055
merge: pull manifest comparison out into separate function
2006-09-17 16:13:03 -05:00
Matt Mackall
abd544b718
Merge with mainline
2006-09-17 16:02:09 -05:00
Matt Mackall
c8ac19165e
merge: move set_exec to actions
2006-09-17 15:59:59 -05:00
Matt Mackall
1b67b22515
merge: add forget to action list
2006-09-17 15:54:51 -05:00
Matt Mackall
79c61d8eaf
merge: add codes to action list, eliminate None elements
2006-09-17 15:24:00 -05:00
Matt Mackall
57ca71b692
merge: convert actions to list
2006-09-17 15:10:56 -05:00
Matt Mackall
3f3298dd8d
Merge with crew
2006-09-15 15:22:45 -05:00
Matt Mackall
074aff45fa
merge: fold umap and added into m1 manifest
2006-08-22 21:02:25 -05:00
Matt Mackall
7da2e9f3e6
merge: make unresolved a counter
2006-08-22 19:39:54 -05:00
Matt Mackall
9ee666d233
merge: use context code to retrieve manifests
2006-08-22 19:32:16 -05:00
Matt Mackall
877cbe24e7
merge: add remove to the action hash
2006-08-22 19:12:09 -05:00
Matt Mackall
b3f3e7896e
merge: combine merge and get lists
2006-08-22 18:06:17 -05:00
Matt Mackall
97bb8b2e5a
merge: remove redundant if
2006-08-22 17:42:55 -05:00
Matt Mackall
849cf59e94
merge: eliminate mw manifestdict, do everything with m1
2006-08-22 17:26:44 -05:00
Matt Mackall
8ae551b4fc
merge: eliminate usage of m1 after working manifest creation
2006-08-22 17:20:09 -05:00
Matt Mackall
656a5f8eb1
merge: simplify working dir manifest generation
2006-08-22 17:08:38 -05:00
Matt Mackall
ccb62f0c64
merge: simplify some update logic
2006-08-22 16:47:27 -05:00
Matt Mackall
d4f0a394a2
merge: hoist partial code out of manifest loops
2006-08-22 16:23:29 -05:00
Matt Mackall
df3ced818f
merge: minor simplification
2006-08-22 16:12:54 -05:00
Matt Mackall
d746d64e0e
merge: rename mysterious variable
2006-08-21 14:25:56 -05:00
Matt Mackall
6d080c6780
merge: add backwards variable
2006-08-21 14:21:42 -05:00
Matt Mackall
975492a5a4
merge: consolidate dirstate updates
2006-08-15 23:17:06 -05:00
Matt Mackall
11dee4259d
merge: use file size stored in revlog index
...
Add size method to filelog to handle nodes with renames
2006-08-15 22:46:35 -05:00
Matt Mackall
6f3c141b47
merge: move forgets to the apply stage
2006-08-15 18:30:21 -05:00
Matt Mackall
69d93c90a9
trivial bool() cleanup
2006-08-15 18:12:36 -05:00
Matt Mackall
61c48232d9
merge: hoist some working manifest logic out of merge loop
2006-08-15 16:27:19 -05:00
Matt Mackall
dd967a0972
merge: working manifest new/changed
...
To remove dependence on m1 during manifest comparison, we distinguish between
new and changed states in mw.
2006-08-15 16:12:51 -05:00
Matt Mackall
86a0d1f25a
merge: factor out exec bit merge function
2006-08-15 15:58:10 -05:00
Matt Mackall
4483b407fd
Use revlog hash comparison technique in merge
2006-08-15 15:45:45 -05:00
Matt Mackall
e6c07820a7
Merge with crew
2006-08-14 14:42:15 -05:00
Matt Mackall
d492a3834e
merge: minor simplification
2006-08-14 14:14:08 -05:00
Vadim Gelfer
80d6f2f7c7
remove localrepository.changes.
...
use localrepository.status instead.
2006-08-12 16:40:12 -07:00
Matt Mackall
c676e5167a
Merge: use single objects for tracking manifests
2006-08-09 22:07:13 -05:00
Matt Mackall
f048c758d8
Merge: save away mode bit so that we don't need manifest later
2006-08-09 17:11:01 -05:00
Matt Mackall
7c0506a4f5
Merge manifest refactor work
2006-08-09 15:03:46 -05:00
Matt Mackall
55b6f733d9
Merge: combine force and forcemerge arguments
2006-08-08 10:56:48 -05:00
Matt Mackall
94db72708b
Merge: move most tests to the beginning
2006-08-08 10:35:19 -05:00
Matt Mackall
f8ef0497f7
Merge: refactor err and failedmerge -> unresolved
2006-08-08 09:26:00 -05:00
Matt Mackall
0b0ee1ba50
Refactor update locking slightly
2006-08-08 09:19:20 -05:00
Matt Mackall
60a6e68764
Merge: combine choose and moddirstate to partial
2006-08-08 09:11:16 -05:00
Matt Mackall
26928ff9de
Rename merge.allow -> merge.branchmerge
2006-08-07 23:53:04 -05:00
Matt Mackall
3dcc28a29a
Merge with crew
2006-08-07 16:47:06 -05:00
Matt Mackall
65b6faa1aa
Move merge code to its own module
...
Pull update and merge3 out of localrepo into merge.py
s/self/repo/
Add temporary API function in hg.py
Convert all users
2006-08-03 15:24:41 -05:00
Benoit Boissinot
36b97cfba0
fix errors reported by pychecker
...
mercurial/merge.py:174: No global (mode) found
mercurial/merge.py:253: No global (errno) found
2006-08-26 11:19:00 +02:00