# HG changeset patch # User mpm@selenic.com # Date 1119940184 28800 # Node ID e94cebc60d96b11c309c91ff1229fe42a582c33a # Parent a636f7d2cd5be68e39886c74dc6b8cf19f8d8993# Parent 6020bde714e4e5d7266b8cb4609de397074ad0a1 Pull from TAH -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Pull from TAH manifest hash: 08b55e07198b8a4272753895fe3727d9f52ebb75 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFCwO5YywK+sNU5EO8RArUtAJ9gsYYNbZH22COOz9B7ppwgCDxM8ACfYWcl n9Dim3Z7qepGUXvRDEeFZ9c= =JMQx -----END PGP SIGNATURE----- diff --git a/TODO b/TODO --- a/TODO +++ b/TODO @@ -16,6 +16,7 @@ Core: - better push support (hack exists) - hg over ssh:// and https:// - commit mailinglist/trigger/hooks +- make showing removed files (in history etc.) faster. Commands: - hg status : file rev, changeset rev, changed, added, @@ -25,7 +26,6 @@ Commands: - automatic pull fallback to old-http:// - hg init|pull http://example.com doesn't say that no repo was found - hg annotate -u and hgweb annotate with long $EMAIL -- hg -v history doesn't show tkmerge as modified (removed). - hg pull default in a subdir doesn't work, if it is a relative path - optionally only show merges (two parents or parent != changeset-1, etc.) diff --git a/doc/hg.1.txt b/doc/hg.1.txt diff --git a/mercurial/bdiff.c b/mercurial/bdiff.c diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -123,7 +123,13 @@ def show_changeset(ui, repo, rev=0, chan ui.status("user: %s\n" % changes[1]) ui.status("date: %s\n" % time.asctime( time.localtime(float(changes[2].split(' ')[0])))) - ui.note("files: %s\n" % " ".join(changes[3])) + if ui.debugflag: + files = repo.diffrevs(changelog.parents(changenode)[0], changenode) + for key, value in zip(["files:", "files+:", "files-:"], files): + if value: + ui.note("%-12s %s\n" % (key, " ".join(value))) + else: + ui.note("files: %s\n" % " ".join(changes[3])) description = changes[4].strip() if description: if ui.verbose: diff --git a/mercurial/hg.py b/mercurial/hg.py diff --git a/mercurial/mpatch.c b/mercurial/mpatch.c diff --git a/tests/run-tests b/tests/run-tests diff --git a/tests/test-bad-pull b/tests/test-bad-pull --- a/tests/test-bad-pull +++ b/tests/test-bad-pull @@ -29,4 +29,4 @@ hg co cat foo hg manifest -kill %1 +kill $! diff --git a/tests/test-flags b/tests/test-flags --- a/tests/test-flags +++ b/tests/test-flags @@ -1,5 +1,6 @@ -#!/bin/sh +ex +#!/bin/sh -ex +umask 027 mkdir test1 cd test1 diff --git a/tests/test-flags.out b/tests/test-flags.out --- a/tests/test-flags.out +++ b/tests/test-flags.out @@ -1,3 +1,15 @@ ++ umask 027 ++ mkdir test1 ++ cd test1 ++ hg init ++ touch a b ++ hg add a b ++ hg ci -t 'added a b' -u test -d '0 0' ++ cd .. ++ mkdir test2 ++ cd test2 ++ hg init ++ hg pull ../test1 pulling from ../test1 requesting all changes adding changesets @@ -5,6 +17,13 @@ adding manifests adding file revisions modified 2 files, added 1 changesets and 2 new revisions (run 'hg update' to get a working copy) ++ hg co ++ chmod +x a ++ hg ci -t 'chmod +x a' -u test -d '0 0' ++ cd ../test1 ++ echo 123 ++ hg ci -t 'a updated' -u test -d '0 0' ++ hg pull ../test2 pulling from ../test2 searching for changes adding changesets @@ -12,6 +31,7 @@ adding manifests adding file revisions modified 1 files, added 1 changesets and 1 new revisions (run 'hg update' to get a working copy) ++ hg heads changeset: 2:3ef54330565526bebf37a0d9bf540c283fd133a1 tag: tip parent: 0:22a449e20da501ca558394c083ca470e9c81b9f7 @@ -24,6 +44,7 @@ user: test date: Thu Jan 1 00:00:00 1970 summary: a updated ++ hg history changeset: 2:3ef54330565526bebf37a0d9bf540c283fd133a1 tag: tip parent: 0:22a449e20da501ca558394c083ca470e9c81b9f7 @@ -41,11 +62,14 @@ user: test date: Thu Jan 1 00:00:00 1970 summary: added a b ++ hg -dv co -m resolving manifests ancestor f328b97f7c11 local e7f06daf1cdb remote 629f0b785e0e a versions differ, resolve merging a resolving a file a: other 37c42bd6cc03 ancestor b80de5d13875 --rwxr-xr-x --rwxr-xr-x ++ ls -l ../test1/a ../test2/a ++ cut -b 0-10 +-rwxr-x--- +-rwxr-x--- diff --git a/tests/test-pull b/tests/test-pull --- a/tests/test-pull +++ b/tests/test-pull @@ -17,4 +17,4 @@ hg co cat foo hg manifest -kill %hg +kill $! diff --git a/tests/test-rawcommit1.out b/tests/test-rawcommit1.out --- a/tests/test-rawcommit1.out +++ b/tests/test-rawcommit1.out @@ -24,7 +24,7 @@ parent: -1:000000000000000000000000 manifest: 2:f5d7a10be55c91e08fbd4f527ab313aff2761fc6 user: user date: Thu Jan 1 00:00:00 1970 -files: c +files+: c description: 2 @@ -41,7 +41,7 @@ parent: -1:000000000000000000000000 manifest: 3:1102cb6dde652ec2ba8cc2777e464853afa67cef user: user date: Thu Jan 1 00:00:00 1970 -files: b +files-: b description: 3 @@ -91,7 +91,6 @@ parent: 5:f8292b00383d88b470efcb2ea manifest: 6:71c4262e09a89666ee12a92fefa12085aad53243 user: user date: Thu Jan 1 00:00:00 1970 -files: description: 6 @@ -107,7 +106,6 @@ parent: -1:000000000000000000000000 manifest: 7:c15305fbac9dd3f49bffcc17d659b2d06d10b9a2 user: user date: Thu Jan 1 00:00:00 1970 -files: description: 7 diff --git a/tests/test-tags.out b/tests/test-tags.out diff --git a/tests/test-up-local-change.out b/tests/test-up-local-change.out