Commit Graph

224 Commits

Author SHA1 Message Date
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
Brendan Cully
de0df5a89b Merge with upstream 2006-10-03 12:14:33 -07:00
Matt Mackall
93a98b345e merge: use new working context object in update 2006-10-03 01:21:46 -05:00
Thomas Arendsen Hein
0a7b982aa6 Whitespace/Tab cleanup 2006-10-01 19:26:33 +02:00
Matt Mackall
b707245da4 localrepo.parents: return null context for no parents 2006-09-29 15:56:36 -05:00
Matt Mackall
ead8d7c353 Add localrepo.parents to get parent changectxs. 2006-09-29 15:48:16 -05:00
Brendan Cully
8104550ace Move defaultrev into changectx
This also causes tag on a repository with no working directory
to default to tip.
2006-09-15 15:23:52 -07:00
Thomas Arendsen Hein
3bf23a7d35 If local repository is missing, make error message clearer.
Faheem Mitha suggested finding a better error message.
The nice error message is taken from cogito.
2006-09-11 10:08:30 +02:00
Thomas Arendsen Hein
d2082f10fc Never apply string formatting to generated errors with util.Abort.
Otherwise error messages containing % chars yield errors or worse.
Fixed (hopefully) all users of util.Abort.
2006-09-08 09:36:18 +02:00
Benoit Boissinot
4456f11f57 localrepo: move the repo creation code, fail if the repo exists 2006-09-02 23:06:47 +02:00
Benoit Boissinot
5e11bd63c0 fix incorrect warning when walking on a particular rev
when a directory was given instead of a file it reported
incorrectly 'No such file or directory in rev <rev>'
we test if the file is a prefix directory
2006-08-28 21:49:02 +02:00
Matt Mackall
4e0e3a1e78 tag: shorten hash in default commit message
Move default message to commands.py
Pass node in binary for consistency
Remove default arguments
Fix up tests
2006-08-20 23:52:52 -05:00
Matt Mackall
62b10cb784 Demote a pull note to a debug message 2006-08-20 21:59:51 -05:00
Alexis S. L. Carvalho
ca387842ee localrepo.status: detect clean files even when the mtime has changed 2006-08-20 00:44:54 -03:00
Matt Mackall
b5a0f2743c filelog: add hash-based comparisons
For status, rather than reconstruct full file versions from revlog for
comparison, compare hashes.
2006-08-14 15:07:00 -05:00
Vadim Gelfer
80d6f2f7c7 remove localrepository.changes.
use localrepository.status instead.
2006-08-12 16:40:12 -07:00
Vadim Gelfer
dc377b58c1 update copyrights. 2006-08-12 12:30:02 -07:00
Alexis S. L. Carvalho
219803f060 Fix some bugs introduced during the manifest refactoring 2006-08-12 08:53:23 -03:00
Matt Mackall
5c0d170547 Remove manifest.readflags 2006-08-11 11:00:38 -05:00
Matt Mackall
44b96c96eb Change remaining users of manifest flags 2006-08-11 10:57:42 -05:00
Matt Mackall
7c0506a4f5 Merge manifest refactor work 2006-08-09 15:03:46 -05:00
Vadim Gelfer
b365694c04 fetch: hold lock and wlock across all operations 2006-08-08 17:08:59 -07:00
Matt Mackall
3dcc28a29a Merge with crew 2006-08-07 16:47:06 -05:00
Vadim Gelfer
dc56cac613 localrepo.update: allow to suppress commit reminder. 2006-08-07 17:22:17 -07:00
Matt Mackall
d5009b5b05 Move repo.verify 2006-08-07 16:27:09 -05:00
Brendan Cully
b5f7a6230c Add '.' as a shortcut revision name for the working directory parent. 2006-08-04 14:36:03 -07: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
Vadim Gelfer
b7a96d1742 clean up hg.py: move repo constructor code into each repo module 2006-07-31 07:11:12 -07:00
Vadim Gelfer
0778999161 hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
all repository classes now have url() method that returns url of repo.
2006-07-25 13:50:32 -07:00
Vadim Gelfer
9738466350 status: add -c (clean) and -A (all files) options
also add new localrepo.status what is more uniform than localrepo.changes.
localrepo.changes is deprecated and will go away soon.
2006-07-20 16:21:07 -07:00
Matt Mackall
6a4cbda08b manifestflags: eliminate remaining users of direct dict access 2006-07-19 19:11:50 -05:00
Matt Mackall
4e6cb39019 Start using manifestflags methods 2006-07-16 03:14:17 -05:00
Vadim Gelfer
f7b6882acb clone: disable stream support on server side by default.
enable in hgrc like this:
[server]
stream=True
2006-07-15 16:06:35 -07:00
Vadim Gelfer
4bc0558c57 clone: do not make streaming default. add --stream option instead. 2006-07-14 14:51:36 -07:00
Vadim Gelfer
9ea4436262 add support for streaming clone.
existing clone code uses pull to get changes from remote repo.  is very
slow, uses lots of memory and cpu.

new clone code has server write file data straight to client, client
writes file data straight to disk.  memory and cpu used are very low,
clone is much faster over lan.

new client can still clone with pull, can still clone from older servers.
new server can still serve older clients.
2006-07-14 11:17:22 -07:00
Vadim Gelfer
a7c3b963b0 move most of tag code to localrepository class. 2006-07-12 08:59:20 -07:00
Benoit Boissinot
be9e8c572e allow use of extensions in python hooks
extensions are loaded with hgext_ prefix, try to use them if
the module is not found in the normal path
2006-07-09 11:10:11 +02:00
Benoit Boissinot
79ae0c65b1 coding style: use spaces instead of tabs 2006-07-08 16:55:49 +02:00
Matt Mackall
ae5d801274 Merge context patches 2006-07-05 13:28:25 -05:00
Vadim Gelfer
95fcf73027 merge with crew. 2006-07-03 10:19:09 -07:00
Thomas Arendsen Hein
96ef4def0a Clarified message when nothing to merge is seen.
Sometimes there's a non-tip head waiting to be merged, especially after
pulling in remote changes while there were local modifications in the working
directory which had to be committed before 'hg merge' can work.
2006-07-03 19:14:29 +02:00
Sean Meiners
34ff4a6539 Added ability to clone from a local repository to a (new) remote one.
Rearranged the clone command a good bit to make sure it validates that
the source does exist and that the destination doesn't before doing anything.
Before I moved the source repo check it would create the destination
repository before it verified the source existed.

Moved the responsibility for creating the destination repo root directory
entirly into the localrepo class so that local to local cloning doesn't break.
This also simplifies the code a bit since it's no longer being done in both
clone and init.

Changed the names of the 'repo' and 'other' variables to 'dest_repo' and
'src_repo' to maintain my sanity.

Passes 82/83 tests. The only failure is the version number test, which I
suspect is supposed to fail since it comes from a generated file.
2006-06-30 19:24:02 -07:00
Matt Mackall
828e814bf2 Add context helper functions to localrepo 2006-06-28 17:08:10 -05:00
Chris Mason
2124a015d1 Fix localrepo.changes() Correctly decide if we are diffing the working dir 2006-06-23 16:42:48 -07:00
Vadim Gelfer
c6946676ed fix bug in localrepo.changes.
caused by a7bed91ac70412cad91b76f93863bba06d289ff4.
2006-06-21 16:20:21 -07:00
Vadim Gelfer
f6098bdc1f merge with crew. 2006-06-21 09:32:31 -07:00
Chris Mason
4bb4096145 Fix cold cache diff performance
cold cache diff performance has regressed in two ways.  localrepo.changes
has optimizations for diffing against the working dir parent that expect
node1 to be None.  commands.revpair() usage means that commands.dodiff()
never sends node1 == None.  This is fixed in localrepo.changes by checking
against the dirstate parents.

In the non-dirstate parents case, localrepo.changes does a loop comparing
files without first sorting the file names, leading to random access
across the disk.
2006-06-21 09:28:48 -07:00
Vadim Gelfer
cbbcaa74fe merge with crew. 2006-06-20 23:58:45 -07:00
Vadim Gelfer
9a0c813fdc use demandload more. 2006-06-20 23:58:21 -07:00
Vadim Gelfer
f40e35da3c localrepository.push: propagate return value 2006-06-20 15:14:12 -07:00