Commit Graph

109 Commits

Author SHA1 Message Date
Matt Mackall
f9ab52977a merge: only store one direction of copies in the copy map
simplify checkpair
generate copied hash from copy map
make copy cases more symmetrical
2006-11-30 17:36:33 -06:00
Matt Mackall
224d8a5d1f merge: add copied hash to simplify copy logic 2006-11-30 17:36:33 -06:00
Matt Mackall
1c0e2e44bd merge: remove unused match logic from findcopies 2006-11-30 17:36:33 -06:00
Matt Mackall
8732a61bab merge: report destinations of moves in merge action messages 2006-11-30 17:36:33 -06:00
Brendan Cully
261404dfe1 Make context __eq__ handle arbitrary RHS values 2006-11-27 15:27:09 -08:00
Brendan Cully
791078de93 merge: Don't search for copies across unrelated manifests 2006-11-23 22:45:00 -08:00
Matt Mackall
f9f3aa2d91 avoid unnecessary copy merges 2006-11-18 11:34:19 -06:00
Thomas Arendsen Hein
411d64ce3e white space and line break cleanups 2006-11-17 08:06:54 +01:00
Matt Mackall
6239f7b678 Clarify untracked file merge message 2006-11-01 21:47:55 -06:00
Benoit Boissinot
83a68d580f merge with backout 2006-10-31 13:03:23 +01:00
Benoit Boissinot
3f2046d235 Backed out changeset 0fc94973be4ffeb0b5ace8a920dec676a9a51130 2006-10-31 13:02:49 +01:00
Benoit Boissinot
b8176cb795 use workingcontext.files() to detect if the repo is unclean 2006-10-29 14:18:55 +01:00
Benoit Boissinot
58322272ec allow update to switch to a different branch if the repo is clean 2006-10-29 13:08:10 +01:00
Thomas Arendsen Hein
687e4a7111 Define and use nullrev (revision of nullid) instead of -1. 2006-10-29 10:53:51 +01:00
Matt Mackall
785d7f44cb merge: fix branch setting
(and remove debugging message)
2006-10-17 22:59:01 -05:00
Matt Mackall
8c602e592a imported patch foo 2006-10-17 22:34:43 -05:00
Matt Mackall
384f4460ac merge: if filemerge skips merge, report as updated 2006-10-15 16:18:09 -05:00
Matt Mackall
492924b1a5 merge: update dirstate correctly for non-branchmerge updates
- we don't actually need the context in recordupdates
- use -1 for filesize to force check on normal update
- only record copy for branchmerges
- forget moved files on update
2006-10-13 17:58:04 -05:00
Matt Mackall
4d37ff4a92 merge: turn followcopies on by default 2006-10-12 14:49:19 -05:00
Matt Mackall
fef0705ae8 merge: pull user messages out to hg.py
- add _update for shadowing in clone
- add _showstats helper
- remove update parameter defaults
- move stats message and merge help messages
2006-10-10 03:39:44 -05:00
Matt Mackall
47200ceb34 merge: update some docstrings 2006-10-10 02:31:02 -05:00
Matt Mackall
2e860ba70d merge: various tidying
update tests to handle corrected output and new workingctx display
2006-10-10 02:15:20 -05:00
Matt Mackall
285d3e6b86 merge: use contexts in checkunknown and forgetremoved 2006-10-10 01:43:58 -05:00
Matt Mackall
41f0942fa0 merge: shortcircuit filemerge for identical files
- use filectx.cmp to compare files
- move merge messages into filemerge
- kill the redundant resolving message
- update tests
2006-10-10 01:16:06 -05:00
Matt Mackall
d2113ca490 merge: pull file copy/move out of filemerge 2006-10-10 00:54:00 -05:00
Matt Mackall
8df16edc62 merge: unify merge and copy actions 2006-10-10 00:41:55 -05:00
Matt Mackall
03952b0c2d merge: swap file and mode args for act() 2006-10-10 00:32:30 -05:00
Matt Mackall
12fd359e4a merge: finish removing nodes from action list 2006-10-10 00:22:03 -05:00
Matt Mackall
642329c803 merge: eliminate nodes from action list
- eliminate my and other from merge and copy
- eliminate node from get
- use mctx for get
- fix bug flag = a[2:]
- pass mctx to recordupdates
- use new filectx.size in recordupdates
2006-10-09 23:23:25 -05:00
Matt Mackall
3acfbeaf4c filemerge: use contexts rather than my and other 2006-10-09 21:27:04 -05:00
Matt Mackall
598b522a75 merge: pass contexts to applyupdates 2006-10-09 20:32:03 -05:00
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