view tests/test-incoming-outgoing.t @ 23976:344939126579 stable

largefiles: don't interfere with logging normal files The previous code was adding standin files to the matcher's file list when neither the standin file nor the original existed in the context. Somehow, this was confusing the logging code into behaving differently from when the extension wasn't loaded. It seems that this was an attempt to support naming a directory that only contains largefiles, as a test fails if the else clause is dropped entirely. Therefore, only append the "standin" if it is a directory. This was found by running the test suite with --config extensions.largefiles=. The first added test used to log an additional cset that wasn't logged normally. The only relation it had to file 'a' is that 'a' was the source of a move, but it isn't clear why having '.hglf/a' in the list causes this change: @@ -47,6 +47,11 @@ Make sure largefiles doesn't interfere with logging a regular file $ hg log a --config extensions.largefiles= + changeset: 3:2ca5ba701980 + user: test + date: Thu Jan 01 00:00:04 1970 +0000 + summary: d + changeset: 0:9161b9aeaf16 user: test date: Thu Jan 01 00:00:01 1970 +0000 The second added test used to complain about a file not being in the parent revision: @@ -1638,10 +1643,8 @@ Ensure that largefiles doesn't intefere with following a normal file $ hg --config extensions.largefiles= log -f d -T '{desc}' -G - @ c - | - o a - + abort: cannot follow file not in parent revision: ".hglf/d" + [255] $ hg log -f d/a -T '{desc}' -G @ c | Note that there is still something fishy with the largefiles code, because when using a glob pattern like this: $ hg log 'glob:sub/*' the pattern list would contain '.hglf/glob:sub/*'. None of the tests show this (this test lives in test-largefiles.t at 1349), it was just something that I noticed when the code was loaded up with print statements.
author Matt Harbison <matt_harbison@yahoo.com>
date Fri, 30 Jan 2015 20:44:11 -0500
parents 7a9cbb315d84
children eb586ed5d8ce
line wrap: on
line source

#require serve

  $ hg init test
  $ cd test
  $ for i in 0 1 2 3 4 5 6 7 8; do
  >     echo $i >> foo
  >     hg commit -A -m $i
  > done
  adding foo
  $ hg verify
  checking changesets
  checking manifests
  crosschecking files in changesets and manifests
  checking files
  1 files, 9 changesets, 9 total revisions
  $ hg serve -p $HGPORT -d --pid-file=hg.pid
  $ cat hg.pid >> $DAEMON_PIDS
  $ cd ..

  $ hg init new

http incoming

  $ hg -R new incoming http://localhost:$HGPORT/
  comparing with http://localhost:$HGPORT/
  changeset:   0:00a43fa82f62
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     0
  
  changeset:   1:5460a410df01
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     1
  
  changeset:   2:d9f42cd1a1ec
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     2
  
  changeset:   3:376476025137
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     3
  
  changeset:   4:70d7eb252d49
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     4
  
  changeset:   5:ad284ee3b5ee
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     5
  
  changeset:   6:e9229f2de384
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     6
  
  changeset:   7:d152815bb8db
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     7
  
  changeset:   8:e4feb4ac9035
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     8
  
  $ hg -R new incoming -r 4 http://localhost:$HGPORT/
  comparing with http://localhost:$HGPORT/
  changeset:   0:00a43fa82f62
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     0
  
  changeset:   1:5460a410df01
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     1
  
  changeset:   2:d9f42cd1a1ec
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     2
  
  changeset:   3:376476025137
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     3
  
  changeset:   4:70d7eb252d49
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     4
  

local incoming

  $ hg -R new incoming test
  comparing with test
  changeset:   0:00a43fa82f62
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     0
  
  changeset:   1:5460a410df01
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     1
  
  changeset:   2:d9f42cd1a1ec
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     2
  
  changeset:   3:376476025137
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     3
  
  changeset:   4:70d7eb252d49
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     4
  
  changeset:   5:ad284ee3b5ee
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     5
  
  changeset:   6:e9229f2de384
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     6
  
  changeset:   7:d152815bb8db
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     7
  
  changeset:   8:e4feb4ac9035
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     8
  
  $ hg -R new incoming -r 4 test
  comparing with test
  changeset:   0:00a43fa82f62
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     0
  
  changeset:   1:5460a410df01
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     1
  
  changeset:   2:d9f42cd1a1ec
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     2
  
  changeset:   3:376476025137
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     3
  
  changeset:   4:70d7eb252d49
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     4
  

limit to 2 changesets

  $ hg -R new incoming -l 2 test
  comparing with test
  changeset:   0:00a43fa82f62
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     0
  
  changeset:   1:5460a410df01
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     1
  

limit to 2 changesets, test with -p --git

  $ hg -R new incoming -l 2 -p --git test
  comparing with test
  changeset:   0:00a43fa82f62
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     0
  
  diff --git a/foo b/foo
  new file mode 100644
  --- /dev/null
  +++ b/foo
  @@ -0,0 +1,1 @@
  +0
  
  changeset:   1:5460a410df01
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     1
  
  diff --git a/foo b/foo
  --- a/foo
  +++ b/foo
  @@ -1,1 +1,2 @@
   0
  +1
  

test with --bundle

  $ hg -R new incoming --bundle test.hg http://localhost:$HGPORT/
  comparing with http://localhost:$HGPORT/
  changeset:   0:00a43fa82f62
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     0
  
  changeset:   1:5460a410df01
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     1
  
  changeset:   2:d9f42cd1a1ec
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     2
  
  changeset:   3:376476025137
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     3
  
  changeset:   4:70d7eb252d49
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     4
  
  changeset:   5:ad284ee3b5ee
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     5
  
  changeset:   6:e9229f2de384
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     6
  
  changeset:   7:d152815bb8db
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     7
  
  changeset:   8:e4feb4ac9035
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     8
  
  $ hg -R new incoming --bundle test2.hg test
  comparing with test
  changeset:   0:00a43fa82f62
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     0
  
  changeset:   1:5460a410df01
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     1
  
  changeset:   2:d9f42cd1a1ec
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     2
  
  changeset:   3:376476025137
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     3
  
  changeset:   4:70d7eb252d49
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     4
  
  changeset:   5:ad284ee3b5ee
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     5
  
  changeset:   6:e9229f2de384
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     6
  
  changeset:   7:d152815bb8db
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     7
  
  changeset:   8:e4feb4ac9035
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     8
  


test the resulting bundles

  $ hg init temp
  $ hg init temp2
  $ hg -R temp unbundle test.hg
  adding changesets
  adding manifests
  adding file changes
  added 9 changesets with 9 changes to 1 files
  (run 'hg update' to get a working copy)
  $ hg -R temp2 unbundle test2.hg
  adding changesets
  adding manifests
  adding file changes
  added 9 changesets with 9 changes to 1 files
  (run 'hg update' to get a working copy)
  $ hg -R temp tip
  changeset:   8:e4feb4ac9035
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     8
  
  $ hg -R temp2 tip
  changeset:   8:e4feb4ac9035
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     8
  

  $ rm -r temp temp2 new

test outgoing

  $ hg clone test test-dev
  updating to branch default
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ cd test-dev
  $ for i in 9 10 11 12 13; do
  >     echo $i >> foo
  >     hg commit -A -m $i
  > done
  $ hg verify
  checking changesets
  checking manifests
  crosschecking files in changesets and manifests
  checking files
  1 files, 14 changesets, 14 total revisions
  $ cd ..
  $ hg -R test-dev outgoing test
  comparing with test
  searching for changes
  changeset:   9:d89d4abea5bc
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     9
  
  changeset:   10:820095aa7158
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     10
  
  changeset:   11:09ede2f3a638
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     11
  
  changeset:   12:e576b1bed305
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     12
  
  changeset:   13:96bbff09a7cc
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     13
  
test outgoing with secret changesets

  $ hg -R test-dev phase --force --secret 9
  $ hg -R test-dev outgoing test
  comparing with test
  searching for changes
  no changes found (ignored 5 secret changesets)
  [1]
  $ hg -R test-dev phase --draft -r 'head()'

limit to 3 changesets

  $ hg -R test-dev outgoing -l 3 test
  comparing with test
  searching for changes
  changeset:   9:d89d4abea5bc
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     9
  
  changeset:   10:820095aa7158
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     10
  
  changeset:   11:09ede2f3a638
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     11
  
  $ hg -R test-dev outgoing http://localhost:$HGPORT/
  comparing with http://localhost:$HGPORT/
  searching for changes
  changeset:   9:d89d4abea5bc
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     9
  
  changeset:   10:820095aa7158
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     10
  
  changeset:   11:09ede2f3a638
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     11
  
  changeset:   12:e576b1bed305
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     12
  
  changeset:   13:96bbff09a7cc
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     13
  
  $ hg -R test-dev outgoing -r 11 http://localhost:$HGPORT/
  comparing with http://localhost:$HGPORT/
  searching for changes
  changeset:   9:d89d4abea5bc
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     9
  
  changeset:   10:820095aa7158
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     10
  
  changeset:   11:09ede2f3a638
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     11
  

incoming from empty remote repository

  $ hg init r1
  $ hg init r2
  $ echo a > r1/foo
  $ hg -R r1 ci -Ama
  adding foo
  $ hg -R r1 incoming r2 --bundle x.hg
  comparing with r2
  searching for changes
  no changes found
  [1]