tests/test-log
changeset 11900 cd7182358d9f
parent 11899 99cafcae25d9
child 11901 a80577bfea29
equal deleted inserted replaced
11899:99cafcae25d9 11900:cd7182358d9f
     1 #!/bin/sh
       
     2 
       
     3 hg init a
       
     4 
       
     5 cd a
       
     6 echo a > a
       
     7 hg ci -Ama -d '1 0'
       
     8 
       
     9 hg cp a b
       
    10 hg ci -mb -d '2 0'
       
    11 
       
    12 mkdir dir
       
    13 hg mv b dir
       
    14 hg ci -mc -d '3 0'
       
    15 
       
    16 hg mv a b
       
    17 echo a > d
       
    18 hg add d
       
    19 hg ci -md -d '4 0'
       
    20 
       
    21 hg mv dir/b e
       
    22 hg ci -me -d '5 0'
       
    23 
       
    24 hg log a
       
    25 echo % -f, directory
       
    26 hg log -f dir
       
    27 echo % -f, but no args
       
    28 hg log -f
       
    29 echo % one rename
       
    30 hg log -vf a
       
    31 echo % many renames
       
    32 hg log -vf e
       
    33 
       
    34 echo % log -pf dir/b
       
    35 hg log -pf dir/b
       
    36 echo % log -vf dir/b
       
    37 hg log -vf dir/b
       
    38 
       
    39 echo '% log copies with --copies'
       
    40 hg log -vC --template '{rev} {file_copies}\n'
       
    41 echo '% log copies switch without --copies, with old filecopy template'
       
    42 hg log -v --template '{rev} {file_copies_switch%filecopy}\n'
       
    43 echo '% log copies switch with --copies'
       
    44 hg log -vC --template '{rev} {file_copies_switch}\n'
       
    45 
       
    46 echo '% log copies with hardcoded style and with --style=default'
       
    47 hg log -vC -r4
       
    48 hg log -vC -r4 --style=default
       
    49 
       
    50 echo % log copies, non-linear manifest
       
    51 hg up -C 3
       
    52 hg mv dir/b e
       
    53 echo foo > foo
       
    54 hg ci -Ame2 -d '6 0'
       
    55 hg log -v --template '{rev} {file_copies}\n' -r 5
       
    56 
       
    57 echo % log copies, execute bit set
       
    58 chmod +x e
       
    59 hg ci -me3 -d '7 0'
       
    60 hg log -v --template '{rev} {file_copies}\n' -r 6
       
    61 
       
    62 echo '% log -p d'
       
    63 hg log -pv d
       
    64 
       
    65 echo '% log --removed file'
       
    66 hg log --removed -v a
       
    67 echo '% log --removed revrange file'
       
    68 hg log --removed -v -r0:2 a
       
    69 
       
    70 # log --follow tests
       
    71 hg init ../follow
       
    72 cd ../follow
       
    73 
       
    74 echo base > base
       
    75 hg ci -Ambase -d '1 0'
       
    76 
       
    77 echo r1 >> base
       
    78 hg ci -Amr1 -d '1 0'
       
    79 echo r2 >> base
       
    80 hg ci -Amr2 -d '1 0'
       
    81 
       
    82 hg up -C 1
       
    83 echo b1 > b1
       
    84 hg ci -Amb1 -d '1 0'
       
    85 
       
    86 echo % log -f
       
    87 hg log -f
       
    88 
       
    89 hg up -C 0
       
    90 echo b2 > b2
       
    91 hg ci -Amb2 -d '1 0'
       
    92 
       
    93 echo % log -f -r 1:tip
       
    94 hg log -f -r 1:tip
       
    95 
       
    96 hg up -C 3
       
    97 hg merge tip
       
    98 
       
    99 echo % log -r .  with two parents
       
   100 hg log -r .
       
   101 
       
   102 hg ci -mm12 -d '1 0'
       
   103 
       
   104 echo % log -r .  with one parent
       
   105 hg log -r .
       
   106 
       
   107 echo postm >> b1
       
   108 hg ci -Amb1.1 -d'1 0'
       
   109 
       
   110 echo % log --follow-first
       
   111 hg log --follow-first
       
   112 
       
   113 echo % log -P 2
       
   114 hg log -P 2
       
   115 
       
   116 echo '% log -r tip -p --git'
       
   117 hg log -r tip -p --git
       
   118 
       
   119 echo '% log -r ""'
       
   120 hg log -r ''
       
   121 
       
   122 echo '% log -r <some unknown node id>'
       
   123 hg log -r 1000000000000000000000000000000000000000
       
   124 
       
   125 echo '% log -k r1'
       
   126 hg log -k r1
       
   127 
       
   128 echo '% log -d -1'
       
   129 hg log -d -1
       
   130 
       
   131 echo '% log -p -l2 --color=always'
       
   132 hg --config extensions.color= --config color.mode=ansi \
       
   133     log -p -l2 --color=always
       
   134 
       
   135 echo '% log -r tip --stat'
       
   136 hg log -r tip --stat
       
   137 
       
   138 cd ..
       
   139 
       
   140 hg init usertest
       
   141 cd usertest
       
   142 
       
   143 echo a > a
       
   144 hg ci -A -m "a" -u "User One <user1@example.org>"
       
   145 echo b > b
       
   146 hg ci -A -m "b" -u "User Two <user2@example.org>"
       
   147 
       
   148 hg log -u "User One <user1@example.org>"
       
   149 hg log -u "user1" -u "user2"
       
   150 hg log -u "user3"
       
   151 
       
   152 cd ..
       
   153 
       
   154 hg init branches
       
   155 cd branches
       
   156 
       
   157 echo a > a
       
   158 hg ci -A -m "commit on default"
       
   159 hg branch test
       
   160 echo b > b
       
   161 hg ci -A -m "commit on test"
       
   162 
       
   163 hg up default
       
   164 echo c > c
       
   165 hg ci -A -m "commit on default"
       
   166 hg up test
       
   167 echo c > c
       
   168 hg ci -A -m "commit on test"
       
   169 
       
   170 echo '% log -b default'
       
   171 hg log -b default
       
   172 
       
   173 echo '% log -b test'
       
   174 hg log -b test
       
   175 
       
   176 echo '% log -b dummy'
       
   177 hg log -b dummy
       
   178 
       
   179 echo '% log -b .'
       
   180 hg log -b .
       
   181 
       
   182 echo '% log -b default -b test'
       
   183 hg log -b default -b test
       
   184 
       
   185 echo '% log -b default -b .'
       
   186 hg log -b default -b .
       
   187 
       
   188 echo '% log -b . -b test'
       
   189 hg log -b . -b test
       
   190 
       
   191 echo '% log -b 2'
       
   192 hg log -b 2
       
   193 
       
   194 echo '% log -p --cwd dir (in subdir)'
       
   195 mkdir dir
       
   196 hg log -p --cwd dir
       
   197 
       
   198 echo '% log -p -R repo'
       
   199 cd dir
       
   200 hg log -p -R .. ../a
       
   201 
       
   202 
       
   203 cd ..
       
   204 hg init follow2
       
   205 cd follow2
       
   206 
       
   207 # Build the following history:
       
   208 # tip - o - x - o - x - x
       
   209 #    \                 /
       
   210 #     o - o - o - x
       
   211 #      \     /
       
   212 #         o
       
   213 #
       
   214 # Where "o" is a revision containing "foo" and
       
   215 # "x" is a revision without "foo"
       
   216 touch init
       
   217 hg ci -A -m "init, unrelated"
       
   218 echo 'foo' > init
       
   219 hg ci -m "change, unrelated"
       
   220 echo 'foo' > foo
       
   221 hg ci -A -m "add unrelated old foo"
       
   222 hg rm foo
       
   223 hg ci -m "delete foo, unrelated"
       
   224 echo 'related' > foo
       
   225 hg ci -A -m "add foo, related"
       
   226 
       
   227 hg up 0
       
   228 touch branch
       
   229 hg ci -A -m "first branch, unrelated"
       
   230 touch foo
       
   231 hg ci -A -m "create foo, related"
       
   232 echo 'change' > foo
       
   233 hg ci -m "change foo, related"
       
   234 
       
   235 hg up 6
       
   236 echo 'change foo in branch' > foo
       
   237 hg ci -m "change foo in branch, related"
       
   238 hg merge 7
       
   239 echo 'merge 1' > foo
       
   240 hg resolve -m foo
       
   241 hg ci -m "First merge, related"
       
   242 
       
   243 hg merge 4
       
   244 echo 'merge 2' > foo
       
   245 hg resolve -m foo
       
   246 hg ci -m "Last merge, related"
       
   247 
       
   248 hg --config "extensions.graphlog=" glog
       
   249 
       
   250 hg --traceback log -f foo
       
   251 
       
   252 exit 0