20231912 Move GnuTLS from Desktop to Userland consolidation
authorAnn Lai <ann.lai@oracle.com>
Tue, 07 Apr 2015 17:54:04 -0700
changeset 4063 12e03e5492b8
parent 4062 f45bb9cec48c (current diff)
parent 4061 5ac5027dc3e3 (diff)
20231912 Move GnuTLS from Desktop to Userland consolidation
components/gdb/patches/gdb.fork-child.c.patch
components/libidn/test/results-32.master
components/libidn/test/results-64.master
components/nethack/nethack.copyright
components/openstack/cinder/files/api-paste.ini
components/openstack/cinder/files/zfssa/__init__.py
components/openstack/cinder/files/zfssa/restclient.py
components/openstack/cinder/files/zfssa/zfssaiscsi.py
components/openstack/cinder/files/zfssa/zfssarest.py
components/openstack/cinder/patches/02-noparamiko.patch
components/openstack/cinder/patches/03-emc_smis_iscsi.patch
components/openstack/cinder/patches/04-launchpad-1236459.patch
components/openstack/cinder/patches/05-launchpad-1252512.patch
components/openstack/cinder/patches/06-launchpad-1233763.patch
components/openstack/glance/patches/03-CVE-2014-0162.patch
components/openstack/glance/patches/05-launchpad-1255556.patch
components/openstack/glance/patches/06-CVE-2014-5356.patch
components/openstack/glance/patches/07-CVE-2014-9493.patch
components/openstack/glance/patches/08-CVE-2015-1195.patch
components/openstack/heat/files/api-paste.ini
components/openstack/heat/patches/01-CVE-2014-3801.patch
components/openstack/horizon/files/branding/img/Openstack_banner.png
components/openstack/horizon/files/branding/img/favicon-solaris.ico
components/openstack/horizon/patches/01-CVE-2014-0157.patch
components/openstack/horizon/patches/02-launchpad-1264228.patch
components/openstack/horizon/patches/03-launchpad-1254694.patch
components/openstack/horizon/patches/04-blue-piechart.patch
components/openstack/horizon/patches/05-launchpad-1260439.patch
components/openstack/horizon/patches/06-launchpad-1255136.patch
components/openstack/horizon/patches/07-remove-console.patch
components/openstack/horizon/patches/08-flavor-names.patch
components/openstack/horizon/patches/09-disable-unsupported-bootsource.patch
components/openstack/horizon/patches/10-network-agents.patch
components/openstack/horizon/patches/11-CVE-2014-3473-3474-3475.patch
components/openstack/horizon/patches/12-launchpad-1265032.patch
components/openstack/horizon/patches/13-CVE-2014-3594.patch
components/openstack/horizon/patches/14-CVE-2014-8124.patch
components/openstack/keystone/patches/01-launchpad-1244304.patch
components/openstack/keystone/patches/02-launchpad-1178740.patch
components/openstack/keystone/patches/03-sample-data-sh.patch
components/openstack/keystone/patches/04-CVE-2014-2828.patch
components/openstack/keystone/patches/05-requirements.patch
components/openstack/keystone/patches/06-CVE-2014-3476.patch
components/openstack/keystone/patches/07-CVE-2014-3520.patch
components/openstack/keystone/patches/08-CVE-2014-3621.patch
components/openstack/neutron/files/evs/db/api.py
components/openstack/neutron/files/evs/db/l3nat.py
components/openstack/neutron/files/evs/db/quotas_db.py
components/openstack/neutron/patches/03-CVE-2014-0187.patch
components/openstack/neutron/patches/05-launchpad-1210121.patch
components/openstack/neutron/patches/06-launchpad-1255441.patch
components/openstack/neutron/patches/07-CVE-2014-6414.patch
components/openstack/neutron/patches/08-CVE-2014-7821.patch
components/openstack/nova/files/api-paste.ini
components/openstack/nova/patches/04-CVE-2014-0134-partial.patch
components/openstack/nova/patches/05-CVE-2014-0167.patch
components/openstack/nova/patches/06-CVE-2014-2573.patch
components/openstack/nova/patches/07-CVE-2014-3517.patch
components/openstack/nova/patches/08-CVE-2014-3608.patch
components/openstack/swift/patches/01-CVE-2014-0006.patch
components/openstack/swift/patches/02-requirements.patch
components/openstack/swift/patches/CVE-2014-7960.patch
components/python/django_openstack_auth/patches/CVE-2014-8124.patch
components/python/greenlet/patches/01-slp_switch-sparc-multi-thread.patch
components/python/keystoneclient/patches/01-CVE-2014-7144.patch
components/python/kombu/patches/01.python3-reqs.patch
components/python/requests/patches/python3.patch
components/tcl/tcl/test/results-32.i386.master
components/tcl/tcl/test/results-32.sparc.master
components/tcl/tcl/test/results-64.i386.master
components/tcl/tcl/test/results-64.sparc.master
transforms/standard-libraries-past-py2.6
--- a/.hgtags	Fri Mar 20 22:56:27 2015 -0700
+++ b/.hgtags	Tue Apr 07 17:54:04 2015 -0700
@@ -132,3 +132,5 @@
 340f8dd103eb84a3c254b6c50fb6a2f8b1f3d0f1 s12-69
 7dfd2096739f5cd6430590838873eb827fb962b4 s12-69.1
 ea48a1716c18281bb6aaf332511de022e1409891 s12-70
+5a309c9572e81e1f8b2bfd7e6e08a022b19b9dc5 s12-71
+193a944241393e75f2b301eb062ba6283f28db45 s12-72
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/apache2/patches/no_ssl2_and_3.patch	Tue Apr 07 17:54:04 2015 -0700
@@ -0,0 +1,46 @@
+Patch origin: in-house
+Patch status: will be submitted to upstream
+
+--- modules/ssl/ssl_private.h
++++ modules/ssl/ssl_private.h
[email protected]@ -246,9 +246,9 @@
+ #define SSL_PROTOCOL_SSLV3 (1<<1)
+ #define SSL_PROTOCOL_TLSV1 (1<<2)
+ #ifdef OPENSSL_NO_SSL2
+-#define SSL_MOST_ALL SSL_PROTOCOL_SSLV3|SSL_PROTOCOL_TLSV1
++#define SSL_MOST_ALL SSL_PROTOCOL_TLSV1
+ #else
+-#define SSL_MOST_ALL SSL_PROTOCOL_SSLV2|SSL_PROTOCOL_SSLV3|SSL_PROTOCOL_TLSV1
++#define SSL_MOST_ALL SSL_PROTOCOL_TLSV1
+ #endif
+ #ifdef HAVE_TLSV1_X
+ #define SSL_PROTOCOL_TLSV1_1 (1<<3)
+--- docs/manual/mod/mod_ssl.html.en
++++ docs/manual/mod/mod_ssl.html.en
[email protected]@ -1029,8 +1029,8 @@
+     <p>
+     This is the Secure Sockets Layer (SSL) protocol, version 3.0, from
+     the Netscape Corporation. 
+-    It is the successor to SSLv2 and the predecessor to TLSv1. It's supported by
+-    almost all popular browsers.</p></li>
++    It is the successor to SSLv2 and the predecessor to TLSv1. Though its
++    use has been deprecated, because of weaknesses in the security of the protocol.</p></li>
+ 
+ <li><code>TLSv1</code>
+     <p>
[email protected]@ -1050,13 +1050,11 @@
+ 
+ <li><code>All</code>
+     <p>
+-    This is a shortcut for ``<code>+SSLv2 +SSLv3 +TLSv1</code>'' or
+-    - when using OpenSSL 1.0.1 and later -
+-    ``<code>+SSLv2 +SSLv3 +TLSv1 +TLSv1.1 +TLSv1.2</code>'', respectively.</p></li>
++    This is a shortcut for ``<code>+TLSv1 +TLSv1.1 +TLSv1.2</code>''.</p></li>
+ </ul>
+ <div class="example"><h3>Example</h3><p><code>
+ # enable SSLv3 and all available TLSv1 flavors, but not SSLv2<br />
+-SSLProtocol All -SSLv2
++SSLProtocol All +SSLv3
+ </code></p></div>
+ 
+ </div>
--- a/components/apache2/patches/ssl.conf.patch	Fri Mar 20 22:56:27 2015 -0700
+++ b/components/apache2/patches/ssl.conf.patch	Tue Apr 07 17:54:04 2015 -0700
@@ -1,8 +1,9 @@
 Patch origin: in-house
 Patch status: Solaris-specific; not suitable for upstream
+Patch status: SSLProtocol part will be submitted to upstream
 
---- docs/conf/extra/httpd-ssl.conf.in	Wed Jan  4 12:10:40 2012
-+++ docs/conf/extra/httpd-ssl.conf.in	Mon Feb 27 07:09:48 2012
+--- docs/conf/extra/httpd-ssl.conf.in
++++ docs/conf/extra/httpd-ssl.conf.in
 @@ -22,11 +22,16 @@
  # Manual for more details.
  #
@@ -31,3 +32,15 @@
  ServerAdmin [email protected]
  ErrorLog "@[email protected]/error_log"
  TransferLog "@[email protected]/access_log"
[email protected]@ -86,8 +91,9 @@
+ 
+ #   SSL Protocol support:
+ #   List the protocol versions which clients are allowed to
+-#   connect with. Disable SSLv2 by default (cf. RFC 6176).
+-SSLProtocol all -SSLv2
++#   connect with. SSLv2 and SSLv3 are disabled by default and
++#   and must be enabled below if really needed.
++SSLProtocol all
+ 
+ #   SSL Cipher Suite:
+ #   List the ciphers that the client is permitted to negotiate.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/apache24/patches/no_ssl3.patch	Tue Apr 07 17:54:04 2015 -0700
@@ -0,0 +1,43 @@
+Patch origin: in-house
+Patch status: will be submitted to upstream
+
+--- modules/ssl/ssl_private.h
++++ modules/ssl/ssl_private.h
[email protected]@ -298,10 +298,10 @@
+ #ifdef HAVE_TLSV1_X
+ #define SSL_PROTOCOL_TLSV1_1 (1<<3)
+ #define SSL_PROTOCOL_TLSV1_2 (1<<4)
+-#define SSL_PROTOCOL_ALL   (SSL_PROTOCOL_SSLV3|SSL_PROTOCOL_TLSV1| \
++#define SSL_PROTOCOL_ALL   (SSL_PROTOCOL_TLSV1| \
+                             SSL_PROTOCOL_TLSV1_1|SSL_PROTOCOL_TLSV1_2)
+ #else
+-#define SSL_PROTOCOL_ALL   (SSL_PROTOCOL_SSLV3|SSL_PROTOCOL_TLSV1)
++#define SSL_PROTOCOL_ALL   (SSL_PROTOCOL_TLSV1)
+ #endif
+ typedef int ssl_proto_t;
+ 
+--- docs/manual/mod/mod_ssl.html.en
++++ docs/manual/mod/mod_ssl.html.en
[email protected]@ -1348,9 +1348,7 @@
+ 
+ <li><code>all</code>
+     <p>
+-    This is a shortcut for ``<code>+SSLv3 +TLSv1</code>'' or
+-    - when using OpenSSL 1.0.1 and later -
+-    ``<code>+SSLv3 +TLSv1 +TLSv1.1 +TLSv1.2</code>, respectively.</p></li>
++    This is a shortcut for ``<code>+TLSv1 +TLSv1.1 +TLSv1.2</code>''.</p></li>
+ </ul>
+ <div class="example"><h3>Example</h3><pre class="prettyprint lang-config">SSLProtocol TLSv1</pre>
+ </div>
+--- docs/manual/mod/mod_ssl.html.fr
++++ docs/manual/mod/mod_ssl.html.fr
[email protected]@ -1518,8 +1518,7 @@
+ 
+ <li><code>all</code>
+     <p>
+-    C'est un raccourci pour ``<code>+SSLv3 +TLSv1</code>'' ou -  partir
+-    de la version 1.0.1 d'OpenSSL - ``<code>+SSLv3 +TLSv1 +TLSv1.1 +TLSv1.2</code>.</p></li>
++    C'est un raccourci pour ``<code>+TLSv1 +TLSv1.1 +TLSv1.2</code>''.</p></li>
+ </ul>
+ <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProtocol TLSv1</pre>
+ </div>
--- a/components/diffutils/Makefile	Fri Mar 20 22:56:27 2015 -0700
+++ b/components/diffutils/Makefile	Tue Apr 07 17:54:04 2015 -0700
@@ -23,35 +23,33 @@
 # Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
+COMPILER=		gnu
+
 include ../../make-rules/shared-macros.mk
 
 COMPONENT_NAME=		diffutils
-COMPONENT_VERSION=	3.2
+COMPONENT_VERSION=	3.3
 COMPONENT_PROJECT_URL=	http://www.gnu.org/software/diffutils/
 COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
-COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.gz
+COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.xz
 COMPONENT_ARCHIVE_HASH=	\
-    sha256:2aaaebef615be7dc365306a14caa5d273a4fc174f9f10abca8b60e082c054ed3
+    sha256:a25e89a8ab65fded1731e4186be1bb25cda967834b6df973599cdcd5abdfc19c
 COMPONENT_ARCHIVE_URL=	http://ftp.gnu.org/gnu/diffutils/$(COMPONENT_ARCHIVE)
 COMPONENT_BUGDB=	utility/gnu-diffutils
 
-TPNO=			10502
+TPNO=			21995
 
 include $(WS_MAKE_RULES)/prep.mk
 include $(WS_MAKE_RULES)/configure.mk
 include $(WS_MAKE_RULES)/ips.mk
 
-# Need to reduce optimization level in order to successfully run the
-# configure test for detecting whether Solaris can detect stack overflow.
-# See CR #16954300.
-studio_OPT = -xO3
+COMPONENT_PREP_ACTION =		(cd $(@D) ; autoreconf -f)
 
 CONFIGURE_OPTIONS  +=		--infodir=$(CONFIGURE_INFODIR)
 CONFIGURE_OPTIONS  +=		CFLAGS="$(CFLAGS)"
 
 ASLR_MODE = $(ASLR_ENABLE)
 
-# common targets
 configure:	$(CONFIGURE_64)
 
 build:		$(BUILD_64)
--- a/components/diffutils/diffutils.p5m	Fri Mar 20 22:56:27 2015 -0700
+++ b/components/diffutils/diffutils.p5m	Tue Apr 07 17:54:04 2015 -0700
@@ -61,6 +61,7 @@
 file path=usr/share/locale/ga/LC_MESSAGES/diffutils.mo
 file path=usr/share/locale/gl/LC_MESSAGES/diffutils.mo
 file path=usr/share/locale/he/LC_MESSAGES/diffutils.mo
+file path=usr/share/locale/hr/LC_MESSAGES/diffutils.mo
 file path=usr/share/locale/hu/LC_MESSAGES/diffutils.mo
 file path=usr/share/locale/id/LC_MESSAGES/diffutils.mo
 file path=usr/share/locale/it/LC_MESSAGES/diffutils.mo
--- a/components/diffutils/test/results-64.master	Fri Mar 20 22:56:27 2015 -0700
+++ b/components/diffutils/test/results-64.master	Tue Apr 07 17:54:04 2015 -0700
@@ -1,10 +1,8 @@
 make[1]: Entering directory `$(@D)'
 Making check in lib
 make[2]: Entering directory `$(@D)/lib'
-/usr/gnu/bin/make  check-recursive
+/usr/gnu/bin/make  check-am
 make[3]: Entering directory `$(@D)/lib'
-make[4]: Entering directory `$(@D)/lib'
-make[4]: Leaving directory `$(@D)/lib'
 make[3]: Leaving directory `$(@D)/lib'
 make[2]: Leaving directory `$(@D)/lib'
 Making check in src
@@ -26,11 +24,14 @@
 PASS: help-version
 PASS: function-line-vs-leading-space
 PASS: label-vs-func
+PASS: new-file
+PASS: no-dereference
 PASS: no-newline-at-eof
 PASS: stdin
-==================
-All 9 tests passed
-==================
+PASS: filename-quoting
+===================
+All 12 tests passed
+===================
 make[4]: Leaving directory `$(@D)/tests'
 make[3]: Leaving directory `$(@D)/tests'
 make[2]: Leaving directory `$(@D)/tests'
@@ -44,226 +45,255 @@
 make[2]: Leaving directory `$(@D)/man'
 Making check in po
 make[2]: Entering directory `$(@D)/po'
+make[2]: Nothing to be done for `check'.
 make[2]: Leaving directory `$(@D)/po'
-Making check in ms
-make[2]: Entering directory `$(@D)/ms'
-make[2]: Nothing to be done for `check'.
-make[2]: Leaving directory `$(@D)/ms'
 Making check in gnulib-tests
 make[2]: Entering directory `$(@D)/gnulib-tests'
 /usr/gnu/bin/make  check-recursive
 make[3]: Entering directory `$(@D)/gnulib-tests'
 Making check in .
 make[4]: Entering directory `$(@D)/gnulib-tests'
-/usr/gnu/bin/make  libtests.a test-alloca-opt test-argmatch test-binary-io test-bitrotate test-btowc test-c-ctype test-c-stack test-c-strcasecmp test-c-strncasecmp test-dirname test-dup2 test-environ test-errno test-exclude test-fcntl-h test-fcntl test-filenamecat test-float test-fnmatch test-freopen-safer test-freopen test-getcwd-lgpl test-getdtablesize test-getopt test-gettimeofday test-hash test-iconv-h test-iconv test-ignore-value test-intprops test-inttostr test-inttypes test-iswblank test-langinfo test-locale test-lstat test-malloc-gnu test-malloca test-mbrtowc test-mbrtowc-w32 test-mbscasecmp test-mbsinit test-mbsrtowcs test-mbsstr1 test-mbsstr2 test-mbsstr3 test-memchr test-nl_langinfo test-open test-quotearg-simple test-setenv test-setlocale1 test-setlocale2 test-sigaction test-signal test-sigprocmask test-sleep test-snprintf test-stat test-stat-time test-stdbool test-stddef test-stdint test-stdio test-stdlib test-strerror test-strftime test-striconv test-string test-strings test-strnlen test-strtoumax test-symlink test-sys_stat test-sys_time test-sys_wait test-time test-unistd test-u8-mbtoucr test-u8-uctomb test-uc_width test-uc_width2 test-unsetenv test-usleep test-vasnprintf test-verify test-version-etc test-wchar test-wcrtomb test-wcrtomb-w32 test-wctype-h test-wcwidth test-xalloc-die test-xstrtol test-xstrtoul test-xstrtoumax
+/usr/gnu/bin/make  libtests.a test-alloca-opt test-areadlink test-argmatch test-binary-io test-bitrotate test-btowc test-c-ctype test-c-stack test-c-strcasecmp test-c-strncasecmp test-close test-dirname test-dup2 test-environ test-errno test-exclude test-fcntl-h test-fcntl test-fdopen test-fgetc test-filenamecat test-float test-fnmatch test-fputc test-fread test-freopen-safer test-freopen test-fstat test-fwrite test-getcwd-lgpl test-getdtablesize test-getopt test-gettimeofday test-hash test-iconv-h test-iconv test-ignore-value test-intprops test-inttostr test-inttypes test-iswblank test-langinfo test-locale test-localeconv test-lstat test-malloc-gnu test-malloca test-mbrtowc test-mbrtowc-w32 test-mbscasecmp test-mbsinit test-mbsrtowcs test-mbsstr1 test-mbsstr2 test-mbsstr3 test-memchr test-nl_langinfo test-open test-pathmax test-quotearg-simple test-raise test-readlink test-regex test-setenv test-setlocale1 test-setlocale2 test-sh-quote test-sigaction test-signal-h test-sigprocmask test-sleep test-snprintf test-stat test-stat-time test-stdbool test-stddef test-stdint test-stdio test-stdlib test-strerror test-strftime test-striconv test-string test-strings test-strnlen test-strtoull test-strtoumax test-symlink test-sys_stat test-sys_time test-sys_types test-sys_wait test-time test-unistd test-u8-mbtoucr test-u8-uctomb test-uc_width test-uc_width2 test-unsetenv test-usleep test-vasnprintf test-vasprintf test-verify test-version-etc test-wchar test-wcrtomb test-wcrtomb-w32 test-wctype-h test-wcwidth test-xalloc-die test-xstrtol test-xstrtoul test-xstrtoumax test-xvasprintf
 make[5]: Entering directory `$(@D)/gnulib-tests'
-  CC       argmatch.o
-  CC       hash-pjw.o
-  CC       asnprintf.o
-  CC       printf-args.o
-  CC       printf-parse.o
-  CC       putenv.o
-  CC       unsetenv.o
-  CC       vasnprintf.o
-  AR       libtests.a
-  CC       test-alloca-opt.o
-  CCLD     test-alloca-opt
-  CC       test-argmatch.o
-  CCLD     test-argmatch
-  CC       test-binary-io.o
-  CCLD     test-binary-io
-  CC       test-bitrotate.o
-  CCLD     test-bitrotate
-  CC       test-btowc.o
-  CCLD     test-btowc
-  CC       test-c-ctype.o
-  CCLD     test-c-ctype
-  CC       test-c-stack.o
-  CCLD     test-c-stack
-  CC       test-c-strcasecmp.o
-  CCLD     test-c-strcasecmp
-  CC       test-c-strncasecmp.o
-  CCLD     test-c-strncasecmp
-  CC       test-dirname.o
-  CCLD     test-dirname
-  CC       test-dup2.o
-  CCLD     test-dup2
-  CC       test-environ.o
-  CCLD     test-environ
-  CC       test-errno.o
-  CCLD     test-errno
-  CC       test-exclude.o
-  CCLD     test-exclude
-  CC       test-fcntl-h.o
-  CCLD     test-fcntl-h
-  CC       test-fcntl.o
-  CCLD     test-fcntl
-  CC       test-filenamecat.o
-  CCLD     test-filenamecat
-  CC       test-float.o
-  CCLD     test-float
-  CC       test-fnmatch.o
-  CCLD     test-fnmatch
-  CC       test-freopen-safer.o
-  CCLD     test-freopen-safer
-  CC       test-freopen.o
-  CCLD     test-freopen
-  CC       test-getcwd-lgpl.o
-  CCLD     test-getcwd-lgpl
-  CC       test-getdtablesize.o
-  CCLD     test-getdtablesize
-  CC       test-getopt.o
-  CCLD     test-getopt
-  CC       test-gettimeofday.o
-  CCLD     test-gettimeofday
-  CC       test-hash.o
-  CCLD     test-hash
-  CC       test-iconv-h.o
-  CCLD     test-iconv-h
-  CC       test-iconv.o
-  CCLD     test-iconv
-  CC       test-ignore-value.o
-  CCLD     test-ignore-value
-  CC       test-intprops.o
-  CCLD     test-intprops
-  CC       test-inttostr.o
-  CCLD     test-inttostr
-  CC       test-inttypes.o
-  CCLD     test-inttypes
-  CC       test-iswblank.o
-  CCLD     test-iswblank
-  CC       test-langinfo.o
-  CCLD     test-langinfo
-  CC       test-locale.o
-  CCLD     test-locale
-  CC       test-lstat.o
-  CCLD     test-lstat
-  CC       test-malloc-gnu.o
-  CCLD     test-malloc-gnu
-  CC       test-malloca.o
-  CCLD     test-malloca
-  CC       test-mbrtowc.o
-  CCLD     test-mbrtowc
-  CC       test-mbrtowc-w32.o
-  CCLD     test-mbrtowc-w32
-  CC       test-mbscasecmp.o
-  CCLD     test-mbscasecmp
-  CC       test-mbsinit.o
-  CCLD     test-mbsinit
-  CC       test-mbsrtowcs.o
-  CCLD     test-mbsrtowcs
-  CC       test-mbsstr1.o
-  CCLD     test-mbsstr1
-  CC       test-mbsstr2.o
-  CCLD     test-mbsstr2
-  CC       test-mbsstr3.o
-  CCLD     test-mbsstr3
-  CC       test-memchr.o
-  CCLD     test-memchr
-  CC       test-nl_langinfo.o
-  CCLD     test-nl_langinfo
-  CC       test-open.o
-  CCLD     test-open
-  CC       test-quotearg-simple.o
-  CCLD     test-quotearg-simple
-  CC       test-setenv.o
-  CCLD     test-setenv
-  CC       test-setlocale1.o
-  CCLD     test-setlocale1
-  CC       test-setlocale2.o
-  CCLD     test-setlocale2
-  CC       test-sigaction.o
-  CCLD     test-sigaction
-  CC       test-signal.o
-  CCLD     test-signal
-  CC       test-sigprocmask.o
-  CCLD     test-sigprocmask
-  CC       test-sleep.o
-  CCLD     test-sleep
-  CC       test-snprintf.o
-  CCLD     test-snprintf
-  CC       test-stat.o
-  CCLD     test-stat
-  CC       test-stat-time.o
-  CCLD     test-stat-time
-  CC       test-stdbool.o
-  CCLD     test-stdbool
-  CC       test-stddef.o
-  CCLD     test-stddef
-  CC       test-stdint.o
-  CCLD     test-stdint
-  CC       test-stdio.o
-  CCLD     test-stdio
-  CC       test-stdlib.o
-  CCLD     test-stdlib
-  CC       test-strerror.o
-  CCLD     test-strerror
-  CC       test-strftime.o
-  CCLD     test-strftime
-  CC       test-striconv.o
-  CCLD     test-striconv
-  CC       test-string.o
-  CCLD     test-string
-  CC       test-strings.o
-  CCLD     test-strings
-  CC       test-strnlen.o
-  CCLD     test-strnlen
-  CC       test-strtoumax.o
-  CCLD     test-strtoumax
-  CC       test-symlink.o
-  CCLD     test-symlink
-  CC       test-sys_stat.o
-  CCLD     test-sys_stat
-  CC       test-sys_time.o
-  CCLD     test-sys_time
-  CC       test-sys_wait.o
-  CCLD     test-sys_wait
-  CC       test-time.o
-  CCLD     test-time
-  CC       test-unistd.o
-  CCLD     test-unistd
-  CC       unistr/test-u8-mbtoucr.o
-  CCLD     test-u8-mbtoucr
-  CC       unistr/test-u8-uctomb.o
-  CCLD     test-u8-uctomb
-  CC       uniwidth/test-uc_width.o
-  CCLD     test-uc_width
-  CC       uniwidth/test-uc_width2.o
-  CCLD     test-uc_width2
-  CC       test-unsetenv.o
-  CCLD     test-unsetenv
-  CC       test-usleep.o
-  CCLD     test-usleep
-  CC       test-vasnprintf.o
-  CCLD     test-vasnprintf
-  CC       test-verify.o
-  CCLD     test-verify
-  CC       test-version-etc.o
-  CCLD     test-version-etc
-  CC       test-wchar.o
-  CCLD     test-wchar
-  CC       test-wcrtomb.o
-  CCLD     test-wcrtomb
-  CC       test-wcrtomb-w32.o
-  CCLD     test-wcrtomb-w32
-  CC       test-wctype-h.o
-  CCLD     test-wctype-h
-  CC       test-wcwidth.o
-  CCLD     test-wcwidth
-  CC       test-xalloc-die.o
-"$(SOURCE_DIR)/gnulib-tests/test-xalloc-die.c", line 31: warning: statement not reached
-  CCLD     test-xalloc-die
-  CC       test-xstrtol.o
-  CCLD     test-xstrtol
-  CC       test-xstrtoul.o
-  CCLD     test-xstrtoul
-  CC       test-xstrtoumax.o
-  CCLD     test-xstrtoumax
+  CC     argmatch.o
+  CC     hash-pjw.o
+  CC     putenv.o
+  CC     unsetenv.o
+  AR     libtests.a
+  CC     test-alloca-opt.o
+  CCLD   test-alloca-opt
+  CC     test-areadlink.o
+  CCLD   test-areadlink
+  CC     test-argmatch.o
+  CCLD   test-argmatch
+  CC     test-binary-io.o
+  CCLD   test-binary-io
+  CC     test-bitrotate.o
+  CCLD   test-bitrotate
+  CC     test-btowc.o
+  CCLD   test-btowc
+  CC     test-c-ctype.o
+  CCLD   test-c-ctype
+  CC     test-c-stack.o
+  CCLD   test-c-stack
+  CC     test-c-strcasecmp.o
+  CCLD   test-c-strcasecmp
+  CC     test-c-strncasecmp.o
+  CCLD   test-c-strncasecmp
+  CC     test-close.o
+  CCLD   test-close
+  CC     test-dirname.o
+  CCLD   test-dirname
+  CC     test-dup2.o
+  CCLD   test-dup2
+  CC     test-environ.o
+  CCLD   test-environ
+  CC     test-errno.o
+  CCLD   test-errno
+  CC     test-exclude.o
+  CCLD   test-exclude
+  CC     test-fcntl-h.o
+  CCLD   test-fcntl-h
+  CC     test-fcntl.o
+  CCLD   test-fcntl
+  CC     test-fdopen.o
+  CCLD   test-fdopen
+  CC     test-fgetc.o
+  CCLD   test-fgetc
+  CC     test-filenamecat.o
+  CCLD   test-filenamecat
+  CC     test-float.o
+  CCLD   test-float
+  CC     test-fnmatch.o
+  CCLD   test-fnmatch
+  CC     test-fputc.o
+  CCLD   test-fputc
+  CC     test-fread.o
+  CCLD   test-fread
+  CC     test-freopen-safer.o
+  CCLD   test-freopen-safer
+  CC     test-freopen.o
+  CCLD   test-freopen
+  CC     test-fstat.o
+  CCLD   test-fstat
+  CC     test-fwrite.o
+  CCLD   test-fwrite
+  CC     test-getcwd-lgpl.o
+  CCLD   test-getcwd-lgpl
+  CC     test-getdtablesize.o
+  CCLD   test-getdtablesize
+  CC     test-getopt.o
+  CCLD   test-getopt
+  CC     test-gettimeofday.o
+  CCLD   test-gettimeofday
+  CC     test-hash.o
+  CCLD   test-hash
+  CC     test-iconv-h.o
+  CCLD   test-iconv-h
+  CC     test-iconv.o
+  CCLD   test-iconv
+  CC     test-ignore-value.o
+  CCLD   test-ignore-value
+  CC     test-intprops.o
+  CCLD   test-intprops
+  CC     test-inttostr.o
+  CCLD   test-inttostr
+  CC     test-inttypes.o
+  CCLD   test-inttypes
+  CC     test-iswblank.o
+  CCLD   test-iswblank
+  CC     test-langinfo.o
+  CCLD   test-langinfo
+  CC     test-locale.o
+  CCLD   test-locale
+  CC     test-localeconv.o
+  CCLD   test-localeconv
+  CC     test-lstat.o
+  CCLD   test-lstat
+  CC     test-malloc-gnu.o
+  CCLD   test-malloc-gnu
+  CC     test-malloca.o
+  CCLD   test-malloca
+  CC     test-mbrtowc.o
+  CCLD   test-mbrtowc
+  CC     test-mbrtowc-w32.o
+  CCLD   test-mbrtowc-w32
+  CC     test-mbscasecmp.o
+  CCLD   test-mbscasecmp
+  CC     test-mbsinit.o
+  CCLD   test-mbsinit
+  CC     test-mbsrtowcs.o
+  CCLD   test-mbsrtowcs
+  CC     test-mbsstr1.o
+  CCLD   test-mbsstr1
+  CC     test-mbsstr2.o
+  CCLD   test-mbsstr2
+  CC     test-mbsstr3.o
+  CCLD   test-mbsstr3
+  CC     test-memchr.o
+  CCLD   test-memchr
+  CC     test-nl_langinfo.o
+  CCLD   test-nl_langinfo
+  CC     test-open.o
+  CCLD   test-open
+  CC     test-pathmax.o
+  CCLD   test-pathmax
+  CC     test-quotearg-simple.o
+  CCLD   test-quotearg-simple
+  CC     test-raise.o
+  CCLD   test-raise
+  CC     test-readlink.o
+  CCLD   test-readlink
+  CC     test-regex.o
+  CCLD   test-regex
+  CC     test-setenv.o
+  CCLD   test-setenv
+  CC     test-setlocale1.o
+  CCLD   test-setlocale1
+  CC     test-setlocale2.o
+  CCLD   test-setlocale2
+  CC     test-sh-quote.o
+  CCLD   test-sh-quote
+  CC     test-sigaction.o
+  CCLD   test-sigaction
+  CC     test-signal-h.o
+  CCLD   test-signal-h
+  CC     test-sigprocmask.o
+  CCLD   test-sigprocmask
+  CC     test-sleep.o
+  CCLD   test-sleep
+  CC     test-snprintf.o
+  CCLD   test-snprintf
+  CC     test-stat.o
+  CCLD   test-stat
+  CC     test-stat-time.o
+  CCLD   test-stat-time
+  CC     test-stdbool.o
+  CCLD   test-stdbool
+  CC     test-stddef.o
+  CCLD   test-stddef
+  CC     test-stdint.o
+  CCLD   test-stdint
+  CC     test-stdio.o
+  CCLD   test-stdio
+  CC     test-stdlib.o
+  CCLD   test-stdlib
+  CC     test-strerror.o
+  CCLD   test-strerror
+  CC     test-strftime.o
+  CCLD   test-strftime
+  CC     test-striconv.o
+  CCLD   test-striconv
+  CC     test-string.o
+  CCLD   test-string
+  CC     test-strings.o
+  CCLD   test-strings
+  CC     test-strnlen.o
+  CCLD   test-strnlen
+  CC     test-strtoull.o
+  CCLD   test-strtoull
+  CC     test-strtoumax.o
+  CCLD   test-strtoumax
+  CC     test-symlink.o
+  CCLD   test-symlink
+  CC     test-sys_stat.o
+  CCLD   test-sys_stat
+  CC     test-sys_time.o
+  CCLD   test-sys_time
+  CC     test-sys_types.o
+  CCLD   test-sys_types
+  CC     test-sys_wait.o
+  CCLD   test-sys_wait
+  CC     test-time.o
+  CCLD   test-time
+  CC     test-unistd.o
+  CCLD   test-unistd
+  CC     unistr/test-u8-mbtoucr.o
+  CCLD   test-u8-mbtoucr
+  CC     unistr/test-u8-uctomb.o
+  CCLD   test-u8-uctomb
+  CC     uniwidth/test-uc_width.o
+  CCLD   test-uc_width
+  CC     uniwidth/test-uc_width2.o
+  CCLD   test-uc_width2
+  CC     test-unsetenv.o
+  CCLD   test-unsetenv
+  CC     test-usleep.o
+  CCLD   test-usleep
+  CC     test-vasnprintf.o
+  CCLD   test-vasnprintf
+  CC     test-vasprintf.o
+  CCLD   test-vasprintf
+  CC     test-verify.o
+  CCLD   test-verify
+  CC     test-version-etc.o
+  CCLD   test-version-etc
+  CC     test-wchar.o
+  CCLD   test-wchar
+  CC     test-wcrtomb.o
+  CCLD   test-wcrtomb
+  CC     test-wcrtomb-w32.o
+  CCLD   test-wcrtomb-w32
+  CC     test-wctype-h.o
+  CCLD   test-wctype-h
+  CC     test-wcwidth.o
+  CCLD   test-wcwidth
+  CC     test-xalloc-die.o
+  CCLD   test-xalloc-die
+  CC     test-xstrtol.o
+  CCLD   test-xstrtol
+  CC     test-xstrtoul.o
+  CCLD   test-xstrtoul
+  CC     test-xstrtoumax.o
+  CCLD   test-xstrtoumax
+  CC     test-xvasprintf.o
+  CCLD   test-xvasprintf
 make[5]: Leaving directory `$(@D)/gnulib-tests'
 /usr/gnu/bin/make  check-TESTS
 make[5]: Entering directory `$(@D)/gnulib-tests'
 make[6]: Entering directory `$(@D)/gnulib-tests'
 PASS: test-alloca-opt
+PASS: test-areadlink
 PASS: test-argmatch
 PASS: test-binary-io.sh
 PASS: test-bitrotate
@@ -273,6 +303,7 @@
 PASS: test-c-stack.sh
 PASS: test-c-stack2.sh
 PASS: test-c-strcase.sh
+PASS: test-close
 PASS: test-dirname
 PASS: test-dup2
 PASS: test-environ
@@ -287,11 +318,17 @@
 PASS: test-exclude8.sh
 PASS: test-fcntl-h
 PASS: test-fcntl
+PASS: test-fdopen
+PASS: test-fgetc
 PASS: test-filenamecat
 PASS: test-float
 PASS: test-fnmatch
+PASS: test-fputc
+PASS: test-fread
 PASS: test-freopen-safer
 PASS: test-freopen
+PASS: test-fstat
+PASS: test-fwrite
 PASS: test-getcwd-lgpl
 PASS: test-getdtablesize
 PASS: test-getopt
@@ -306,6 +343,7 @@
 PASS: test-iswblank
 PASS: test-langinfo
 PASS: test-locale
+PASS: test-localeconv
 PASS: test-lstat
 PASS: test-malloc-gnu
 PASS: test-malloca
@@ -330,12 +368,17 @@
 PASS: test-memchr
 PASS: test-nl_langinfo.sh
 PASS: test-open
+PASS: test-pathmax
 PASS: test-quotearg-simple
+PASS: test-raise
+PASS: test-readlink
+PASS: test-regex
 PASS: test-setenv
 PASS: test-setlocale1.sh
-FAIL: test-setlocale2.sh
+PASS: test-setlocale2.sh
+PASS: test-sh-quote
 PASS: test-sigaction
-PASS: test-signal
+PASS: test-signal-h
 PASS: test-sigprocmask
 PASS: test-sleep
 PASS: test-snprintf
@@ -352,11 +395,14 @@
 PASS: test-string
 PASS: test-strings
 PASS: test-strnlen
+PASS: test-strtoull
 PASS: test-strtoumax
 PASS: test-symlink
 PASS: test-sys_stat
 PASS: test-sys_time
+PASS: test-sys_types
 PASS: test-sys_wait
+PASS: test-init.sh
 PASS: test-time
 PASS: test-unistd
 PASS: test-u8-mbtoucr
@@ -367,6 +413,7 @@
 PASS: test-update-copyright.sh
 PASS: test-usleep
 PASS: test-vasnprintf
+PASS: test-vasprintf
 PASS: test-vc-list-files-git.sh
 PASS: test-vc-list-files-cvs.sh
 PASS: test-verify
@@ -384,90 +431,18 @@
 PASS: test-xalloc-die.sh
 PASS: test-xstrtol.sh
 PASS: test-xstrtoumax.sh
-====================================================
-   GNU diffutils 3.2: gnulib-tests/test-suite.log   
-====================================================
-
-1 of 110 tests failed.  (11 tests were not run).  
-
-.. contents:: :depth: 2
-
-
-SKIP: test-mbrtowc-w32-1.sh (exit: 77)
-======================================
-
-Skipping test: not a native Windows system
-
-SKIP: test-mbrtowc-w32-2.sh (exit: 77)
-======================================
-
-Skipping test: not a native Windows system
-
-SKIP: test-mbrtowc-w32-3.sh (exit: 77)
-======================================
-
-Skipping test: not a native Windows system
-
-SKIP: test-mbrtowc-w32-4.sh (exit: 77)
-======================================
-
-Skipping test: not a native Windows system
-
-SKIP: test-mbrtowc-w32-5.sh (exit: 77)
-======================================
-
-Skipping test: not a native Windows system
-
-SKIP: test-mbscasecmp.sh (exit: 77)
-===================================
-
-Skipping test: no turkish Unicode locale is installed
-
-FAIL: test-setlocale2.sh (exit: 1)
-==================================
-
-Chinese_Taiwan.65001: unknown locale
-setlocale did not fail for explicit (null)
-
-SKIP: test-wcrtomb-w32-1.sh (exit: 77)
-======================================
-
-Skipping test: not a native Windows system
-
-SKIP: test-wcrtomb-w32-2.sh (exit: 77)
-======================================
-
-Skipping test: not a native Windows system
-
-SKIP: test-wcrtomb-w32-3.sh (exit: 77)
-======================================
-
-Skipping test: not a native Windows system
-
-SKIP: test-wcrtomb-w32-4.sh (exit: 77)
-======================================
-
-Skipping test: not a native Windows system
-
-SKIP: test-wcrtomb-w32-5.sh (exit: 77)
-======================================
-
-Skipping test: not a native Windows system
-======================================
-1 of 110 tests failed
+PASS: test-xvasprintf
+=======================
+All 129 tests passed
 (11 tests were not run)
-See gnulib-tests/test-suite.log
-Please report to [email protected]
-======================================
-make[6]: *** [test-suite.log] Error 1
+=======================
 make[6]: Leaving directory `$(@D)/gnulib-tests'
-make[5]: *** [check-TESTS] Error 2
 make[5]: Leaving directory `$(@D)/gnulib-tests'
-make[4]: *** [check-am] Error 2
 make[4]: Leaving directory `$(@D)/gnulib-tests'
-make[3]: *** [check-recursive] Error 1
 make[3]: Leaving directory `$(@D)/gnulib-tests'
-make[2]: *** [check] Error 2
 make[2]: Leaving directory `$(@D)/gnulib-tests'
-make[1]: *** [check-recursive] Error 1
+make[2]: Entering directory `$(@D)'
+make[2]: Nothing to be done for `check-am'.
+make[2]: Leaving directory `$(@D)'
+  GEN    public-submodule-commit
 make[1]: Leaving directory `$(@D)'
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/dnsmasq/patches/03_client_mac.patch	Tue Apr 07 17:54:04 2015 -0700
@@ -0,0 +1,43 @@
+Solaris doesn't have an easy way to retrieve the MAC address of the client
+that is soliciting the DHCPv6 IP address. This fix uses a simple way to
+retrieve the client MAC address from the client's EUI64 link-local address.
+
+
+*** dnsmasq-2.68/src/dhcp6.c	2013-12-08 07:58:29.000000000 -0800
+--- NEW/src/dhcp6.c	2015-02-23 18:33:30.937299563 -0800
+***************
+*** 231,236 ****
+--- 231,253 ----
+  
+  void get_client_mac(struct in6_addr *client, int iface, unsigned char *mac, unsigned int *maclenp, unsigned int *mactypep)
+  {
++ #ifdef HAVE_SOLARIS_NETWORK
++ /* Solaris does not have an easy way to retrieve MAC address for a given IPv6 address from the kernel.
++    For now the following workaround should work for OpenStack's needs. */
++   uint8_t *addr6;
++ 
++   *maclenp = ETHER_ADDR_LEN;
++   *mactypep = ARPHRD_ETHER;
++   /* Take the EUI64 based client's link-local address and convert it to client's MAC address.
++      For example: from fe80::f816:3eff:fe5c:df43 link-local address we arrive at fa:16:3e:5c:df:43 */
++   addr6 = client->s6_addr;
++   mac[0] = addr6[8] ^ 0x2;
++   mac[1] = addr6[9];
++   mac[2] = addr6[10];
++   mac[3] = addr6[13];
++   mac[4] = addr6[14];
++   mac[5]= addr6[15];
++ #else
+    /* Recieving a packet from a host does not populate the neighbour
+       cache, so we send a neighbour discovery request if we can't 
+       find the sender. Repeat a few times in case of packet loss. */
+***************
+*** 276,281 ****
+--- 293,299 ----
+  
+    *maclenp = mac_param.maclen;
+    *mactypep = ARPHRD_ETHER;
++ #endif /* HAVE_SOLARIS_NETWORK */
+  }
+      
+  static int find_mac(int family, char *addrp, char *mac, size_t maclen, void *parmv)
--- a/components/findutils/Makefile	Fri Mar 20 22:56:27 2015 -0700
+++ b/components/findutils/Makefile	Tue Apr 07 17:54:04 2015 -0700
@@ -26,16 +26,16 @@
 include ../../make-rules/shared-macros.mk
 
 COMPONENT_NAME=		findutils
-COMPONENT_VERSION=	4.4.2
+COMPONENT_VERSION=	4.5.14
 COMPONENT_PROJECT_URL=	http://www.gnu.org/software/findutils/
 COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
 COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.gz
 COMPONENT_ARCHIVE_HASH= \
-    sha256:434f32d171cbc0a5e72cfc5372c6fc4cb0e681f8dce566a0de5b6fccd702b62a
-COMPONENT_ARCHIVE_URL=	http://ftp.gnu.org/pub/gnu/$(COMPONENT_NAME)/$(COMPONENT_ARCHIVE)
+    sha256:0de3cf625a5c9f154eee3171e072515ffdde405244dd00502af617ac57b73ae2
+COMPONENT_ARCHIVE_URL=	http://alpha.gnu.org/gnu/$(COMPONENT_NAME)/$(COMPONENT_ARCHIVE)
 COMPONENT_BUGDB=	utility/gnu-findutils
 
-TPNO=			15520
+TPNO=			19655
 
 include $(WS_MAKE_RULES)/prep.mk
 include $(WS_MAKE_RULES)/configure.mk
@@ -45,12 +45,23 @@
 
 CONFIGURE_OPTIONS +=	CFLAGS="$(CFLAGS)"
 
+# Fixes coredump in the tests/test-localename test.
+CONFIGURE_OPTIONS  +=	ac_cv_func_newlocale=no
+
 # Disable the leaf optimisation feature, because the st_nlinks directory
 # field is incorrect on ZFS file systems.
 CONFIGURE_OPTIONS +=	--disable-leaf-optimisation
 
 COMPONENT_TEST_ENV +=	PATH="$(GNUBIN):$(PATH)"
 
+COMPONENT_TEST_TRANSFORMS += \
+	'-e "s|^.*$(CC).*$$|XXX_CC_XXX|g" ' \
+	'-e "s|^.*source=.*libtool=no.*$$|XXX_CC_XXX|g" ' \
+	'-e "s|^.*DEPDIR=.deps.*$$|XXX_CC_XXX|g" ' \
+	'-e "/^XXX_CC_XXX$$/d" ' \
+	'-e "s|\(Test Run By\).*|\1|" ' \
+	'-e "s|\(Native configuration is\).*|\1|" '
+
 ASLR_MODE = $(ASLR_ENABLE)
 
 # common targets
@@ -60,6 +71,11 @@
 
 install:        $(INSTALL_64)
 
+# Needed for "gmake test" to work successfully.
+# Otherwise we see errors such as:
+# FAIL: exec-nogaps.old-O3, sh: SHELLOPTS: readonly variable
+unexport SHELLOPTS
+
 test:           $(TEST_64)
 
 
--- a/components/findutils/findutils.license	Fri Mar 20 22:56:27 2015 -0700
+++ b/components/findutils/findutils.license	Tue Apr 07 17:54:04 2015 -0700
@@ -676,15 +676,14 @@
 ---------------------------------------------------------------------------
 
                 GNU Free Documentation License
-                  Version 1.2, November 2002
+                 Version 1.3, 3 November 2008
 
 
- Copyright (C) 2000,2001,2002  Free Software Foundation, Inc.
-     51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+ Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
+     <http://fsf.org/>
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
-
 0. PREAMBLE
 
 The purpose of this License is to make a manual, textbook, or other
@@ -727,11 +726,11 @@
 
 A "Secondary Section" is a named appendix or a front-matter section of
 the Document that deals exclusively with the relationship of the
-publishers or authors of the Document to the Document's overall subject
-(or to related matters) and contains nothing that could fall directly
-within that overall subject.  (Thus, if the Document is in part a
-textbook of mathematics, a Secondary Section may not explain any
-mathematics.)  The relationship could be a matter of historical
+publishers or authors of the Document to the Document's overall
+subject (or to related matters) and contains nothing that could fall
+directly within that overall subject.  (Thus, if the Document is in
+part a textbook of mathematics, a Secondary Section may not explain
+any mathematics.)  The relationship could be a matter of historical
 connection with the subject or with related matters, or of legal,
 commercial, philosophical, ethical or political position regarding
 them.
@@ -780,6 +779,9 @@
 the text near the most prominent appearance of the work's title,
 preceding the beginning of the body of the text.
 
+The "publisher" means any person or entity that distributes copies of
+the Document to the public.
+
 A section "Entitled XYZ" means a named subunit of the Document whose
 title either is precisely XYZ or contains XYZ in parentheses following
 text that translates XYZ in another language.  (Here XYZ stands for a
@@ -795,14 +797,13 @@
 implication that these Warranty Disclaimers may have is void and has
 no effect on the meaning of this License.
 
-
 2. VERBATIM COPYING
 
 You may copy and distribute the Document in any medium, either
 commercially or noncommercially, provided that this License, the
 copyright notices, and the license notice saying this License applies
-to the Document are reproduced in all copies, and that you add no other
-conditions whatsoever to those of this License.  You may not use
+to the Document are reproduced in all copies, and that you add no
+other conditions whatsoever to those of this License.  You may not use
 technical measures to obstruct or control the reading or further
 copying of the copies you make or distribute.  However, you may accept
 compensation in exchange for copies.  If you distribute a large enough
@@ -846,8 +847,9 @@
 edition to the public.
 
 It is requested, but not required, that you contact the authors of the
-Document well before redistributing any large number of copies, to give
-them a chance to provide you with an updated version of the Document.
+Document well before redistributing any large number of copies, to
+give them a chance to provide you with an updated version of the
+Document.
 
 
 4. MODIFICATIONS
@@ -962,16 +964,18 @@
 
 6. COLLECTIONS OF DOCUMENTS
 
-You may make a collection consisting of the Document and other documents
-released under this License, and replace the individual copies of this
-License in the various documents with a single copy that is included in
-the collection, provided that you follow the rules of this License for
-verbatim copying of each of the documents in all other respects.
+You may make a collection consisting of the Document and other
+documents released under this License, and replace the individual
+copies of this License in the various documents with a single copy
+that is included in the collection, provided that you follow the rules
+of this License for verbatim copying of each of the documents in all
+other respects.
 
-You may extract a single document from such a collection, and distribute
-it individually under this License, provided you insert a copy of this
-License into the extracted document, and follow this License in all
-other respects regarding verbatim copying of that document.
+You may extract a single document from such a collection, and
+distribute it individually under this License, provided you insert a
+copy of this License into the extracted document, and follow this
+License in all other respects regarding verbatim copying of that
+document.
 
 
 7. AGGREGATION WITH INDEPENDENT WORKS
@@ -1017,21 +1021,38 @@
 
 9. TERMINATION
 
-You may not copy, modify, sublicense, or distribute the Document except
-as expressly provided for under this License.  Any other attempt to
-copy, modify, sublicense or distribute the Document is void, and will
-automatically terminate your rights under this License.  However,
-parties who have received copies, or rights, from you under this
-License will not have their licenses terminated so long as such
-parties remain in full compliance.
+You may not copy, modify, sublicense, or distribute the Document
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense, or distribute it is void, and
+will automatically terminate your rights under this License.
+
+However, if you cease all violation of this License, then your license
+from a particular copyright holder is reinstated (a) provisionally,
+unless and until the copyright holder explicitly and finally
+terminates your license, and (b) permanently, if the copyright holder
+fails to notify you of the violation by some reasonable means prior to
+60 days after the cessation.
+
+Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License.  If your rights have been terminated and not permanently
+reinstated, receipt of a copy of some or all of the same material does
+not give you any rights to use it.
 
 
 10. FUTURE REVISIONS OF THIS LICENSE
 
-The Free Software Foundation may publish new, revised versions
-of the GNU Free Documentation License from time to time.  Such new
-versions will be similar in spirit to the present version, but may
-differ in detail to address new problems or concerns.  See
+The Free Software Foundation may publish new, revised versions of the
+GNU Free Documentation License from time to time.  Such new versions
+will be similar in spirit to the present version, but may differ in
+detail to address new problems or concerns.  See
 http://www.gnu.org/copyleft/.
 
 Each version of the License is given a distinguishing version number.
@@ -1041,7 +1062,39 @@
 of any later version that has been published (not as a draft) by the
 Free Software Foundation.  If the Document does not specify a version
 number of this License, you may choose any version ever published (not
-as a draft) by the Free Software Foundation.
+as a draft) by the Free Software Foundation.  If the Document
+specifies that a proxy can decide which future versions of this
+License can be used, that proxy's public statement of acceptance of a
+version permanently authorizes you to choose that version for the
+Document.
+
+11. RELICENSING
+
+"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
+World Wide Web server that publishes copyrightable works and also
+provides prominent facilities for anybody to edit those works.  A
+public wiki that anybody can edit is an example of such a server.  A
+"Massive Multiauthor Collaboration" (or "MMC") contained in the site
+means any set of copyrightable works thus published on the MMC site.
+
+"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
+license published by Creative Commons Corporation, a not-for-profit
+corporation with a principal place of business in San Francisco,
+California, as well as future copyleft versions of that license
+published by that same organization.
+
+"Incorporate" means to publish or republish a Document, in whole or in
+part, as part of another Document.
+
+An MMC is "eligible for relicensing" if it is licensed under this
+License, and if all works that were first published under this License
+somewhere other than this MMC, and subsequently incorporated in whole or
+in part into the MMC, (1) had no cover texts or invariant sections, and
+(2) were thus incorporated prior to November 1, 2008.
+
+The operator of an MMC Site may republish an MMC contained in the site
+under CC-BY-SA on the same site at any time before August 1, 2009,
+provided the MMC is eligible for relicensing.
 
 
 ADDENDUM: How to use this License for your documents
@@ -1052,7 +1105,7 @@
 
     Copyright (c)  YEAR  YOUR NAME.
     Permission is granted to copy, distribute and/or modify this document
-    under the terms of the GNU Free Documentation License, Version 1.2
+    under the terms of the GNU Free Documentation License, Version 1.3
     or any later version published by the Free Software Foundation;
     with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
     A copy of the license is included in the section entitled "GNU
--- a/components/findutils/findutils.p5m	Fri Mar 20 22:56:27 2015 -0700
+++ b/components/findutils/findutils.p5m	Tue Apr 07 17:54:04 2015 -0700
@@ -20,7 +20,7 @@
 #
 
 #
-# Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
 <transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
@@ -43,7 +43,13 @@
 # solution to the problem.
 file usr/gnu/bin/$(MACH64)/find path=usr/gnu/bin/find
 file usr/gnu/bin/$(MACH64)/xargs path=usr/gnu/bin/xargs
+file path=usr/gnu/libexec/bigram
+file path=usr/gnu/libexec/code
+file path=usr/gnu/libexec/frcode
+file path=usr/gnu/share/info/find-maint.info
 file path=usr/gnu/share/info/find.info
+file path=usr/gnu/share/info/find.info-1
+file path=usr/gnu/share/info/find.info-2
 file path=usr/gnu/share/locale/be/LC_MESSAGES/findutils.mo
 file path=usr/gnu/share/locale/bg/LC_MESSAGES/findutils.mo
 file path=usr/gnu/share/locale/ca/LC_MESSAGES/findutils.mo
@@ -89,7 +95,7 @@
     facet.compat.gnulinks=all
 link path=usr/share/man/man1/gxargs.1 \
     target=../../../gnu/share/man/man1/xargs.1 facet.compat.gnulinks=all
-license findutils.license license="GPLv3, FDLv1.2"
+license findutils.license license="GPLv3, FDLv1.3"
 
 # findutils was previously in the 'desktop' consolidation. This optional
 # dependency is here to facilitate the safe transfer of the package
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/findutils/test/results-64.master	Tue Apr 07 17:54:04 2015 -0700
@@ -0,0 +1,743 @@
+make[1]: Entering directory `$(@D)'
+Making check in gl
+make[2]: Entering directory `$(@D)/gl'
+Making check in lib
+make[3]: Entering directory `$(@D)/gl/lib'
+/usr/gnu/bin/make  check-recursive
+make[4]: Entering directory `$(@D)/gl/lib'
+make[5]: Entering directory `$(@D)/gl/lib'
+make[5]: Nothing to be done for `check-am'.
+make[5]: Leaving directory `$(@D)/gl/lib'
+make[4]: Leaving directory `$(@D)/gl/lib'
+make[3]: Leaving directory `$(@D)/gl/lib'
+make[3]: Entering directory `$(@D)/gl'
+make[3]: Nothing to be done for `check-am'.
+make[3]: Leaving directory `$(@D)/gl'
+make[2]: Leaving directory `$(@D)/gl'
+Making check in tests
+make[2]: Entering directory `$(@D)/tests'
+/usr/gnu/bin/make  check-recursive
+make[3]: Entering directory `$(@D)/tests'
+Making check in .
+make[4]: Entering directory `$(@D)/tests'
+/usr/gnu/bin/make  libtests.a test-accept test-alloca-opt test-areadlink test-areadlink-with-size test-areadlinkat test-argmatch test-arpa_inet test-binary-io test-bind test-bitrotate test-btowc test-byteswap test-c-ctype test-c-strcasecmp test-c-strncasecmp test-c-strcasestr test-c-strstr test-canonicalize test-chdir test-cloexec test-close test-closein test-connect test-ctype test-dirent-safer test-dirent test-dirname test-dup test-dup2 test-environ test-errno test-faccessat test-fchdir test-fcntl-h test-fcntl-safer test-fcntl test-fdopen test-fdopendir test-fflush test-fflush2 test-fgetc test-float test-fnmatch test-fopen-safer test-fopen test-fpending test-fpurge test-fputc test-fread test-freadahead test-freading test-fseek test-fseeko test-fseeko3 test-fseeko4 test-fstat test-fstatat test-ftell test-ftell3 test-ftello test-ftello3 test-ftello4 test-ftruncate test-fwrite test-getcwd-lgpl test-getcwd test-getdelim test-getdtablesize test-getgroups test-gethostname test-getline test-getopt test-gettimeofday test-hash test-i-ring test-ignore-value test-inet_pton test-intprops test-inttostr test-inttypes test-ioctl test-isblank test-isfinite test-isinf test-isnand-nolibm test-isnanf-nolibm test-isnanl-nolibm test-iswblank test-langinfo test-listen test-locale test-localeconv test-localename test-lock test-lseek test-lstat test-malloc-gnu test-malloca test-math test-mbrtowc test-mbrtowc-w32 test-mbscasestr1 test-mbscasestr2 test-mbscasestr3 test-mbscasestr4 test-mbsinit test-mbsrtowcs test-mbsstr1 test-mbsstr2 test-mbsstr3 test-memchr test-memrchr test-modf test-nanosleep test-netinet_in test-nl_langinfo test-open test-openat-safer test-openat test-parse-datetime test-pathmax test-perror test-perror2 test-pipe test-priv-set test-quotearg-simple test-raise test-read test-readlink test-readlinkat test-realloc-gnu test-regex test-rmdir test-select test-select-fd test-select-stdin test-setenv test-setlocale1 test-setlocale2 test-setsockopt test-sigaction test-signal-h test-sigprocmask test-sleep test-snprintf test-sockets test-stat test-stat-time test-statat test-stdalign test-stdbool test-stddef test-stdint test-stdio test-stdlib test-strcasestr test-strerror test-strerror_r test-strftime test-string test-strings test-strnlen test-strstr test-strtol test-strtoul test-strtoull test-strtoumax test-symlink test-symlinkat test-sys_ioctl test-sys_select test-sys_socket test-sys_stat test-sys_time test-sys_types test-sys_uio test-sys_utsname test-sys_wait test-thread_self test-thread_create test-time test-trunc1 test-trunc2 test-uname test-dup-safer test-unistd test-uc_width test-uc_width2 test-unlink test-unlinkat test-unsetenv test-vasnprintf test-verify test-version-etc test-wchar test-wcrtomb test-wcrtomb-w32 test-wctype-h test-wcwidth test-xalloc-die test-xstrtol test-xstrtoul test-xstrtoumax test-yesno
+make[5]: Entering directory `$(@D)/tests'
+rm -f libtests.a
+ar cru libtests.a binary-io.o fd-safer-flag.o dup-safer-flag.o imaxtostr.o inttostr.o offtostr.o uinttostr.o umaxtostr.o localename.o priv-set.o sig-handler.o glthread/thread.o unlinkdir.o putenv.o
+ranlib libtests.a
+"$(SOURCE_DIR)/tests/test-select-fd.c", line 47: warning: implicit function declaration: memset
+"$(SOURCE_DIR)/tests/test-select-stdin.c", line 44: warning: implicit function declaration: memset
+"$(SOURCE_DIR)/tests/test-xalloc-die.c", line 29: warning: statement not reached
+make[5]: Leaving directory `$(@D)/tests'
+/usr/gnu/bin/make  check-TESTS
+make[5]: Entering directory `$(@D)/tests'
+PASS: test-accept
+PASS: test-alloca-opt
+PASS: test-areadlink
+PASS: test-areadlink-with-size
+PASS: test-areadlinkat
+PASS: test-argmatch
+PASS: test-arpa_inet
+PASS: test-binary-io.sh
+PASS: test-bind
+PASS: test-bitrotate
+PASS: test-btowc1.sh
+PASS: test-btowc2.sh
+PASS: test-byteswap
+PASS: test-c-ctype
+PASS: test-c-strcase.sh
+PASS: test-c-strcasestr
+PASS: test-c-strstr
+PASS: test-canonicalize
+PASS: test-chdir
+PASS: test-cloexec
+PASS: test-close
+PASS: test-closein.sh
+PASS: test-connect
+PASS: test-ctype
+PASS: test-dirent-safer
+PASS: test-dirent
+PASS: test-dirname
+PASS: test-dup
+PASS: test-dup2
+PASS: test-environ
+PASS: test-errno
+PASS: test-faccessat
+PASS: test-fchdir
+PASS: test-fcntl-h
+PASS: test-fcntl-safer
+PASS: test-fcntl
+PASS: test-fdopen
+PASS: test-fdopendir
+PASS: test-fflush
+PASS: test-fflush2.sh
+PASS: test-fgetc
+PASS: test-float
+PASS: test-fnmatch
+PASS: test-fopen-safer
+PASS: test-fopen
+PASS: test-fpending.sh
+PASS: test-fpurge
+PASS: test-fputc
+PASS: test-fread
+PASS: test-freadahead.sh
+PASS: test-freading
+PASS: test-fseek.sh
+PASS: test-fseek2.sh
+PASS: test-fseeko.sh
+PASS: test-fseeko2.sh
+PASS: test-fseeko3.sh
+PASS: test-fseeko4.sh
+PASS: test-fstat
+PASS: test-fstatat
+PASS: test-ftell.sh
+PASS: test-ftell2.sh
+PASS: test-ftell3
+PASS: test-ftello.sh
+PASS: test-ftello2.sh
+PASS: test-ftello3
+PASS: test-ftello4.sh
+PASS: test-ftruncate.sh
+PASS: test-fwrite
+PASS: test-getcwd-lgpl
+PASS: test-getcwd.sh
+PASS: test-getdelim
+PASS: test-getdtablesize
+PASS: test-getgroups
+PASS: test-gethostname
+PASS: test-getline
+PASS: test-getopt
+PASS: test-gettimeofday
+PASS: test-hash
+PASS: test-i-ring
+PASS: test-ignore-value
+PASS: test-inet_pton
+PASS: test-intprops
+PASS: test-inttostr
+PASS: test-inttypes
+PASS: test-ioctl
+PASS: test-isblank
+PASS: test-isfinite
+PASS: test-isinf
+PASS: test-isnand-nolibm
+PASS: test-isnanf-nolibm
+PASS: test-isnanl-nolibm
+PASS: test-iswblank
+PASS: test-langinfo
+PASS: test-listen
+PASS: test-locale
+PASS: test-localeconv
+PASS: test-localename
+Starting test_lock ... OK
+Starting test_rwlock ... OK
+Starting test_recursive_lock ... OK
+Starting test_once ... OK
+PASS: test-lock
+PASS: test-lseek.sh
+PASS: test-lstat
+PASS: test-malloc-gnu
+PASS: test-malloca
+PASS: test-math
+PASS: test-mbrtowc1.sh
+PASS: test-mbrtowc2.sh
+PASS: test-mbrtowc3.sh
+PASS: test-mbrtowc4.sh
+Skipping test: not a native Windows system
+SKIP: test-mbrtowc-w32-1.sh
+Skipping test: not a native Windows system
+SKIP: test-mbrtowc-w32-2.sh
+Skipping test: not a native Windows system
+SKIP: test-mbrtowc-w32-3.sh
+Skipping test: not a native Windows system
+SKIP: test-mbrtowc-w32-4.sh
+Skipping test: not a native Windows system
+SKIP: test-mbrtowc-w32-5.sh
+PASS: test-mbscasestr1
+PASS: test-mbscasestr2.sh
+PASS: test-mbscasestr3.sh
+Skipping test: no turkish Unicode locale is installed
+SKIP: test-mbscasestr4.sh
+PASS: test-mbsinit.sh
+PASS: test-mbsrtowcs1.sh
+PASS: test-mbsrtowcs2.sh
+PASS: test-mbsrtowcs3.sh
+PASS: test-mbsrtowcs4.sh
+PASS: test-mbsstr1
+PASS: test-mbsstr2.sh
+PASS: test-mbsstr3.sh
+PASS: test-memchr
+PASS: test-memrchr
+PASS: test-modf
+PASS: test-nanosleep
+PASS: test-netinet_in
+PASS: test-nl_langinfo.sh
+PASS: test-open
+PASS: test-openat-safer
+PASS: test-openat
+PASS: test-parse-datetime
+PASS: test-pathmax
+PASS: test-perror.sh
+PASS: test-perror2
+PASS: test-pipe
+PASS: test-priv-set
+PASS: test-quotearg-simple
+PASS: test-raise
+PASS: test-read
+PASS: test-readlink
+PASS: test-readlinkat
+PASS: test-realloc-gnu
+PASS: test-regex
+PASS: test-rmdir
+Invalid nfd test... passed
+Invalid fd test... passed
+Unconnected socket test... passed
+Connected sockets test... passed
+General socket test with fork... passed
+Pipe test... passed
+PASS: test-select
+PASS: test-select-in.sh
+PASS: test-select-out.sh
+PASS: test-setenv
+PASS: test-setlocale1.sh
+PASS: test-setlocale2.sh
+PASS: test-setsockopt
+PASS: test-sigaction
+PASS: test-signal-h
+PASS: test-sigprocmask
+PASS: test-sleep
+PASS: test-snprintf
+PASS: test-sockets
+PASS: test-stat
+PASS: test-stat-time
+PASS: test-statat
+Skipping test: known Sun C compiler bug
+SKIP: test-stdalign
+PASS: test-stdbool
+PASS: test-stddef
+PASS: test-stdint
+PASS: test-stdio
+PASS: test-stdlib
+PASS: test-strcasestr
+PASS: test-strerror
+PASS: test-strerror_r
+PASS: test-strftime
+PASS: test-string
+PASS: test-strings
+PASS: test-strnlen
+PASS: test-strstr
+PASS: test-strtol
+PASS: test-strtoul
+PASS: test-strtoull
+PASS: test-strtoumax
+PASS: test-symlink
+PASS: test-symlinkat
+PASS: test-sys_ioctl
+PASS: test-sys_select
+PASS: test-sys_socket
+PASS: test-sys_stat
+PASS: test-sys_time
+PASS: test-sys_types
+PASS: test-sys_uio
+PASS: test-sys_utsname
+PASS: test-sys_wait
+PASS: test-init.sh
+PASS: test-thread_self
+PASS: test-thread_create
+PASS: test-time
+PASS: test-trunc1
+PASS: test-trunc2
+PASS: test-uname
+PASS: test-dup-safer
+PASS: test-unistd
+PASS: test-uc_width
+PASS: uniwidth/test-uc_width2.sh
+PASS: test-unlink
+PASS: test-unlinkat
+PASS: test-unsetenv
+PASS: test-update-copyright.sh
+PASS: test-vasnprintf
+PASS: test-vc-list-files-git.sh
+PASS: test-vc-list-files-cvs.sh
+PASS: test-verify
+PASS: test-verify.sh
+PASS: test-version-etc.sh
+PASS: test-wchar
+PASS: test-wcrtomb.sh
+Skipping test: not a native Windows system
+SKIP: test-wcrtomb-w32-1.sh
+Skipping test: not a native Windows system
+SKIP: test-wcrtomb-w32-2.sh
+Skipping test: not a native Windows system
+SKIP: test-wcrtomb-w32-3.sh
+Skipping test: not a native Windows system
+SKIP: test-wcrtomb-w32-4.sh
+Skipping test: not a native Windows system
+SKIP: test-wcrtomb-w32-5.sh
+PASS: test-wctype-h
+PASS: test-wcwidth
+PASS: test-xalloc-die.sh
+PASS: test-xstrtol.sh
+PASS: test-xstrtoumax.sh
+PASS: test-yesno.sh
+=======================
+All 214 tests passed
+(12 tests were not run)
+=======================
+make[5]: Leaving directory `$(@D)/tests'
+make[4]: Leaving directory `$(@D)/tests'
+make[3]: Leaving directory `$(@D)/tests'
+make[2]: Leaving directory `$(@D)/tests'
+Making check in build-aux
+make[2]: Entering directory `$(@D)/build-aux'
+make[2]: Nothing to be done for `check'.
+make[2]: Leaving directory `$(@D)/build-aux'
+Making check in lib
+make[2]: Entering directory `$(@D)/lib'
+/usr/gnu/bin/make  regexprops test_splitstring check-regexprops
+make[3]: Entering directory `$(@D)/lib'
+cp  $(SOURCE_DIR)/lib/check-regexprops.sh check-regexprops
+chmod +x check-regexprops
+make[3]: Leaving directory `$(@D)/lib'
+/usr/gnu/bin/make  check-TESTS
+make[3]: Entering directory `$(@D)/lib'
+Skipping regexp type ed for context findutils
+Skipping regexp type posix-minimal-basic for context findutils
+Skipping regexp type sed for context findutils
+$(SOURCE_DIR)/lib/../doc/regexprops.texi is up to date.
+PASS: check-regexprops
+PASS: test_splitstring
+==================
+All 2 tests passed
+==================
+make[3]: Leaving directory `$(@D)/lib'
+make[2]: Leaving directory `$(@D)/lib'
+Making check in find
+make[2]: Entering directory `$(@D)/find'
+Making check in .
+make[3]: Entering directory `$(@D)/find'
+make[3]: Nothing to be done for `check-am'.
+make[3]: Leaving directory `$(@D)/find'
+Making check in testsuite
+make[3]: Entering directory `$(@D)/find/testsuite'
+/usr/gnu/bin/make  check-DEJAGNU check-TESTS check-local
+make[4]: Entering directory `$(@D)/find/testsuite'
+Making a new site.exp file...
+srcdir='$(SOURCE_DIR)/find/testsuite'; export srcdir; \
+EXPECT=expect; export EXPECT; \
+runtest=runtest; \
+if /bin/bash -c "$runtest --version" > /dev/null 2>&1; then \
+  exit_status=0; l='find'; for tool in $l; do \
+    if $runtest  --tool $tool --srcdir $srcdir ; \
+    then :; else exit_status=1; fi; \
+  done; \
+else echo "WARNING: could not find \`runtest'" 1>&2; :;\
+fi; \
+exit $exit_status
+WARNING: Couldn't find the global config file.
+WARNING: Couldn't find tool init file
+Test Run By
+Native configuration is
+
+		=== find tests ===
+
+Schedule of variations:
+    unix
+
+Running target unix
+Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target.
+Using /usr/share/dejagnu/config/unix.exp as generic interface file for target.
+Using $(SOURCE_DIR)/find/testsuite/config/unix.exp as tool-and-target-specific interface file.
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/access.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/comma.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/delete.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/deletedir.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/deletefile.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/depth-d.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/depth.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/empty.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/exec-many-rtn-failure.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/exec-many-rtn-success.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/exec-one-rtn-fail.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/exec-one-rtn-success.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/execdir-hier.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/execdir-in-unreadable.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/execdir-multiple.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/execdir-one.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/execdir-pwd.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/execdir-pwd1.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/execdir-root-only.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/false.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/follow-arg-parent-symlink.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/follow-basic.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/fprint-unwritable.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/fprint0_stdout.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/fprintf-samefile.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/gnu-or.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/gnuand.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/gnunot.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/ilname.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/iname.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/inum.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/ipath.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/iregex1.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/iwholename.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/lname.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/mindepth-arg.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/mindepth-badarg.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/name-opt.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/name-period.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/name-slash.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/no-fdleak-test.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/path.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/perm-slash.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/perm.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/perm000.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/posix-dflt.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/posix-h.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/posix-l.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/posix-perminvalid.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/print0.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/print_stdout.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/printf-h.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/printf-nonlocal-symlink.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/printf-reserved.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/printf-slash.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/printf-symlink.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/printf.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/printfHdfl.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/prune-default-print.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/quit.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/regex1.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/regex2.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/samefile-copy.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/samefile-link.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/samefile-missing.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/samefile-p-brokenlink.exp ...
+ERROR: tcl error sourcing $(SOURCE_DIR)/find/testsuite/find.gnu/samefile-p-brokenlink.exp.
+ERROR: ln: failed to access 'tmp/broken': No such file or directory
+    while executing
+"exec ln    tmp/broken tmp/blink"
+    (file "$(SOURCE_DIR)/find/testsuite/find.gnu/samefile-p-brokenlink.exp" line 8)
+    invoked from within
+"source $(SOURCE_DIR)/find/testsuite/find.gnu/samefile-p-brokenlink.exp"
+    ("uplevel" body line 1)
+    invoked from within
+"uplevel #0 source $(SOURCE_DIR)/find/testsuite/find.gnu/samefile-p-brokenlink.exp"
+    invoked from within
+"catch "uplevel #0 source $test_file_name""
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/samefile-same.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/samefile-symlink.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/sv-bug-12230.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/sv-bug-17477.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/sv-bug-17490.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/sv-bug-17782.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/sv-bug-18222.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/sv-bug-24169.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/sv-bug-27563-execdir.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/true.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/used-invarg.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/used-missing.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/user-invalid.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/wholename.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/xtype-symlink.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.gnu/xtype.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/and.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/bracket-depth.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/depth1.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/empty-parens.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/exec-nogaps.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/exec-one.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/files-not-expressions1.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/files-not-expressions2.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/files-not-expressions3.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/group-empty.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/group-missing.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/grouping.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/links.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/mtime0.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/name-missing.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/name.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/nameslash.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/parent.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/perm-X.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/perm-vanilla.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/posixnot.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/prune-result.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/prune-stat.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/prune.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/size-invalid.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/size-missing.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sizes.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sizetype.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sv-bug-11175.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sv-bug-12181.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sv-bug-15235.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sv-bug-19605.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sv-bug-19613.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sv-bug-19617.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sv-bug-25359.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sv-bug-27563-exec.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/sv-bug-30777.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/typearg.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/typesize.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/user-empty.exp ...
+Running $(SOURCE_DIR)/find/testsuite/find.posix/user-missing.exp ...
+
+		=== find Summary ===
+
+# of expected passes		941
+find (GNU findutils) 4.5.14
+make[5]: Entering directory `$(@D)/find/testsuite'
+PASS: sv-bug-32043.sh
+PASS: test_escapechars.sh
+PASS: test_escape_c.sh
+PASS: test_inode.sh
+PASS: sv-34079.sh
+PASS: sv-34976-execdir-fd-leak.sh
+==================
+All 6 tests passed
+==================
+make[5]: Leaving directory `$(@D)/find/testsuite'
+Generating configured-testfiles.txt
+/usr/bin/python $(SOURCE_DIR)/find/testsuite/checklists.py configured-testfiles.txt $(SOURCE_DIR)/find/testsuite config find.gnu find.posix
+218 test files configured for find, 218 files on-disk
+make[4]: Leaving directory `$(@D)/find/testsuite'
+make[3]: Leaving directory `$(@D)/find/testsuite'
+make[2]: Leaving directory `$(@D)/find'
+Making check in xargs
+make[2]: Entering directory `$(@D)/xargs'
+Making check in .
+make[3]: Entering directory `$(@D)/xargs'
+make[3]: Nothing to be done for `check-am'.
+make[3]: Leaving directory `$(@D)/xargs'
+Making check in testsuite
+make[3]: Entering directory `$(@D)/xargs/testsuite'
+/usr/gnu/bin/make  check-DEJAGNU
+make[4]: Entering directory `$(@D)/xargs/testsuite'
+Making a new site.exp file...
+srcdir='$(SOURCE_DIR)/xargs/testsuite'; export srcdir; \
+EXPECT=expect; export EXPECT; \
+runtest=runtest; \
+if /bin/bash -c "$runtest --version" > /dev/null 2>&1; then \
+  exit_status=0; l='xargs'; for tool in $l; do \
+    if $runtest  --tool $tool --srcdir $srcdir ; \
+    then :; else exit_status=1; fi; \
+  done; \
+else echo "WARNING: could not find \`runtest'" 1>&2; :;\
+fi; \
+exit $exit_status
+WARNING: Couldn't find the global config file.
+WARNING: Couldn't find tool init file
+Test Run By
+Native configuration is
+
+		=== xargs tests ===
+
+Schedule of variations:
+    unix
+
+Running target unix
+Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target.
+Using /usr/share/dejagnu/config/unix.exp as generic interface file for target.
+Using $(SOURCE_DIR)/xargs/testsuite/config/unix.exp as tool-and-target-specific interface file.
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/0n3.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/E_-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/L2-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/L2_2-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/L3-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/P3-n1-IARG.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/delim-o.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/empty-r.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/empty_def-r.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/idef-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/idef-s26-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/l1-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/l1_2-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/n1-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/n2-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/n2-s21-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/n2-s21-x-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/n3-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/n3-s31-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/noeof-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/nothing.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/r.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/s118-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/s14-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/s14_2-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/s15-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/s25-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/space-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/space-r.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.gnu/space-t-0.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/EEOF.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/EEOFb.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/EEOFe.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/E_-IARG.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/E_.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/IARG-E_.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/IARG-s15.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/IARG.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/L2-n2.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/L2_2.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/L3.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/childfail.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/empty.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/empty_def.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/hithere.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/n1.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/n2-s21-x.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/n2-s21.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/n2.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/n3-s31.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/n3.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/noeof.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/quotes.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/rc-123.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/rc-124.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/rc-125.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/rc-126.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/rc-127.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/s118.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/s14.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/s14_2.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/s15.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/s25.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/s42.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/s470.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/s48.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/s6.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/savannah-11865.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/space-I.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/space.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/sv-bug-18714.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/sv-bug-18714b.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/sv-bug-20273.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/uc_L2.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/unmatched-n2-x.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/unmatched.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.posix/unmatched2.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/e.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/eEOF.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/empty-t.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/empty_def-t.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/eof1.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/iARG.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/idef-s26.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/idef.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/iquotes.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/l1.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/l1_2.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/l1n4.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/lc_l2.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/s25-t.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/space-t.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/sv-bug-18713.exp ...
+Running $(SOURCE_DIR)/xargs/testsuite/xargs.sysv/trace.exp ...
+
+		=== xargs Summary ===
+
+# of expected passes		96
+xargs (GNU findutils) 4.5.14
+make[4]: Leaving directory `$(@D)/xargs/testsuite'
+make[3]: Leaving directory `$(@D)/xargs/testsuite'
+make[2]: Leaving directory `$(@D)/xargs'
+Making check in locate
+make[2]: Entering directory `$(@D)/locate'
+echo '@set LOCATE_DB /usr/gnu/var/locatedb' > dblocation.texi.tmp
+if test -f dblocation.texi && cmp dblocation.texi.tmp dblocation.texi >/dev/null ; then \
+    rm dblocation.texi.tmp ; \
+else \
+    mv dblocation.texi.tmp dblocation.texi ; \
+fi
+/usr/gnu/bin/make  check-recursive
+make[3]: Entering directory `$(@D)/locate'
+Making check in .
+make[4]: Entering directory `$(@D)/locate'
+make[4]: Nothing to be done for `check-am'.
+make[4]: Leaving directory `$(@D)/locate'
+Making check in testsuite
+make[4]: Entering directory `$(@D)/locate/testsuite'
+/usr/gnu/bin/make  check-DEJAGNU
+make[5]: Entering directory `$(@D)/locate/testsuite'
+Making a new site.exp file...
+srcdir='$(SOURCE_DIR)/locate/testsuite'; export srcdir; \
+EXPECT=expect; export EXPECT; \
+runtest=runtest; \
+if /bin/bash -c "$runtest --version" > /dev/null 2>&1; then \
+  exit_status=0; l='locate'; for tool in $l; do \
+    if $runtest  --tool $tool --srcdir $srcdir ; \
+    then :; else exit_status=1; fi; \
+  done; \
+else echo "WARNING: could not find \`runtest'" 1>&2; :;\
+fi; \
+exit $exit_status
+WARNING: Couldn't find the global config file.
+WARNING: Couldn't find tool init file
+Test Run By
+Native configuration is
+
+		=== locate tests ===
+
+Schedule of variations:
+    unix
+
+Running target unix
+Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target.
+Using /usr/share/dejagnu/config/unix.exp as generic interface file for target.
+Using $(SOURCE_DIR)/locate/testsuite/config/unix.exp as tool-and-target-specific interface file.
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/bigendian.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/bigprefix1.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/exceedshort.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/exists1.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/exists2.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/exists3.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/ignore_case1.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/ignore_case2.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/ignore_case3.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/littleendian.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/notexists1.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/notexists2.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/notexists3.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/old_prefix.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/oldformat.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/regex1.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/slocate.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/space1st.exp ...
+Running $(SOURCE_DIR)/locate/testsuite/locate.gnu/sv-bug-14535.exp ...
+
+		=== locate Summary ===
+
+# of expected passes		34
+locate (GNU findutils) 4.5.14
+make[5]: Leaving directory `$(@D)/locate/testsuite'
+make[4]: Leaving directory `$(@D)/locate/testsuite'
+make[3]: Leaving directory `$(@D)/locate'
+make[2]: Leaving directory `$(@D)/locate'
+Making check in doc
+make[2]: Entering directory `$(@D)/doc'
+make[2]: Nothing to be done for `check'.
+make[2]: Leaving directory `$(@D)/doc'
+Making check in po
+make[2]: Entering directory `$(@D)/po'
+make[2]: Leaving directory `$(@D)/po'
+Making check in m4
+make[2]: Entering directory `$(@D)/m4'
+make[2]: Nothing to be done for `check'.
+make[2]: Leaving directory `$(@D)/m4'
+make[2]: Entering directory `$(@D)'
+make[2]: Leaving directory `$(@D)'
+if test -d $(SOURCE_DIR)/.git				\
+	&& git --version >/dev/null 2>&1; then			\
+  cd $(SOURCE_DIR) &&						\
+  git submodule --quiet foreach					\
+      'test "$(git rev-parse "$sha1")"			\
+	  = "$(git merge-base origin "$sha1")"'		\
+    || { echo 'maint.mk: found non-public submodule commit' >&2;	\
+	 exit 1; };						\
+else								\
+  : ;								\
+fi
+make[1]: Leaving directory `$(@D)'
--- a/components/gdb/patches/gdb.fork-child.c.patch	Fri Mar 20 22:56:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
---- gdb-7.6/gdb/fork-child.c	2012-12-31 22:32:42.000000000 -0800
-+++ gdb-7.6/gdb/fork-child.c	2013-07-10 23:30:02.327235300 -0700
[email protected]@ -35,13 +35,19 @@
- 
- #include <signal.h>
- 
-+#include <fcntl.h>
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+
- /* This just gets used as a default if we can't find SHELL.  */
--#define SHELL_FILE "/bin/sh"
-+#define SHELL_FILE "/bin/bash"
- 
- extern char **environ;
- 
- static char *exec_wrapper;
- 
-+static int isaexec_shell;
-+
- /* Break up SCRATCH into an argument vector suitable for passing to
-    execvp and store it in ARGV.  E.g., on "run a b c d" this routine
-    would get as input the string "a b c d", and as output it would
[email protected]@ -142,6 +148,7 @@
-   struct inferior *inf;
-   int i;
-   int save_errno;
-+  isaexec_shell = 0;
- 
-   /* If no exec file handed to us, get it from the exec-file command
-      -- with a good, common error message if none is specified.  */
[email protected]@ -155,12 +162,20 @@
-   shell_file = shell_file_arg;
-   if (STARTUP_WITH_SHELL)
-     {
-+      struct stat buf1, buf2;
-       /* Figure out what shell to start up the user program under.  */
-       if (shell_file == NULL)
- 	shell_file = getenv ("SHELL");
-       if (shell_file == NULL)
- 	shell_file = default_shell_file;
-       shell = 1;
-+
-+      if (stat ("/usr/lib/isaexec", &buf1) == 0 &&
-+          stat (shell_file, &buf2) == 0 &&
-+          buf1.st_ino == buf2.st_ino &&
-+          buf1.st_dev == buf2.st_dev &&
-+          buf1.st_nlink == buf2.st_nlink)
-+        isaexec_shell = 1;
-     }
- 
-   if (!shell)
[email protected]@ -416,6 +431,8 @@
-   int terminal_initted = 0;
-   ptid_t resume_ptid;
- 
-+  pending_execs += isaexec_shell;
-+
-   if (target_supports_multi_process ())
-     resume_ptid = pid_to_ptid (ptid_get_pid (inferior_ptid));
-   else
--- a/components/git/Makefile	Fri Mar 20 22:56:27 2015 -0700
+++ b/components/git/Makefile	Tue Apr 07 17:54:04 2015 -0700
@@ -69,6 +69,10 @@
 COMPONENT_INSTALL_ENV+=	PERL_LIB=$(shell $(PERL) -MConfig -e 'print "$$Config{installvendorarch}"')
 COMPONENT_INSTALL_ARGS+=	INSTALL="$(INSTALL)"
 
+# get rid of terminal escape codes in test output
+COMPONENT_TEST_ENV = TERM=dumb
+# many failures; keep going; later versions of git are much cleaner
+COMPONENT_TEST_ARGS += -k -i
 COMPONENT_TEST_TARGETS = test
 
 # This runs configure but configure doesn't generate a Makefile.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/git/patches/imap-send.patch	Tue Apr 07 17:54:04 2015 -0700
@@ -0,0 +1,120 @@
+This patch fixes CVE-2013-0308.
+It was created from a diff between the version 1.8.1.4 of this file
+from the community and the current one.  The only changes to this file
+are for addressing this CVE.
+Here is the community diff:
+https://github.com/gitster/git/commit/0ee7198f457c8ea031b09b528cfd88f0f0e630d8
+
+--- git-1.7.9.2/imap-send.c_orig	2012-02-22 18:04:18.000000000 -0800
++++ git-1.7.9.2/imap-send.c	2015-03-25 12:23:29.465800340 -0700
[email protected]@ -31,6 +31,7 @@
+ #else
+ #include <openssl/evp.h>
+ #include <openssl/hmac.h>
++#include <openssl/x509v3.h>
+ #endif
+ 
+ struct store_conf {
[email protected]@ -266,12 +267,64 @@
+ 	}
+ }
+ 
++#ifdef NO_OPENSSL
+ static int ssl_socket_connect(struct imap_socket *sock, int use_tls_only, int verify)
+ {
+-#ifdef NO_OPENSSL
+ 	fprintf(stderr, "SSL requested but SSL support not compiled in\n");
+ 	return -1;
++}
++
+ #else
++
++static int host_matches(const char *host, const char *pattern)
++{
++	if (pattern[0] == '*' && pattern[1] == '.') {
++		pattern += 2;
++		if (!(host = strchr(host, '.')))
++			return 0;
++		host++;
++	}
++
++	return *host && *pattern && !strcasecmp(host, pattern);
++}
++
++static int verify_hostname(X509 *cert, const char *hostname)
++{
++	int len;
++	X509_NAME *subj;
++	char cname[1000];
++	int i, found;
++	STACK_OF(GENERAL_NAME) *subj_alt_names;
++
++	/* try the DNS subjectAltNames */
++	found = 0;
++	if ((subj_alt_names = X509_get_ext_d2i(cert, NID_subject_alt_name, NULL, NULL))) {
++		int num_subj_alt_names = sk_GENERAL_NAME_num(subj_alt_names);
++		for (i = 0; !found && i < num_subj_alt_names; i++) {
++			GENERAL_NAME *subj_alt_name = sk_GENERAL_NAME_value(subj_alt_names, i);
++			if (subj_alt_name->type == GEN_DNS &&
++			    strlen((const char *)subj_alt_name->d.ia5->data) == (size_t)subj_alt_name->d.ia5->length &&
++			    host_matches(hostname, (const char *)(subj_alt_name->d.ia5->data)))
++				found = 1;
++		}
++		sk_GENERAL_NAME_pop_free(subj_alt_names, GENERAL_NAME_free);
++	}
++	if (found)
++		return 0;
++
++	/* try the common name */
++	if (!(subj = X509_get_subject_name(cert)))
++		return error("cannot get certificate subject");
++	if ((len = X509_NAME_get_text_by_NID(subj, NID_commonName, cname, sizeof(cname))) < 0)
++		return error("cannot get certificate common name");
++	if (strlen(cname) == (size_t)len && host_matches(hostname, cname))
++		return 0;
++	return error("certificate owner '%s' does not match hostname '%s'",
++		     cname, hostname);
++}
++
++static int ssl_socket_connect(struct imap_socket *sock, int use_tls_only, int verify)
++{
+ #if (OPENSSL_VERSION_NUMBER >= 0x10000000L)
+ 	const SSL_METHOD *meth;
+ #else
[email protected]@ -279,6 +332,7 @@
+ #endif
+ 	SSL_CTX *ctx;
+ 	int ret;
++	X509 *cert;
+ 
+ 	SSL_library_init();
+ 	SSL_load_error_strings();
[email protected]@ -322,9 +376,18 @@
+ 		return -1;
+ 	}
+ 
++	if (verify) {
++		/* make sure the hostname matches that of the certificate */
++		cert = SSL_get_peer_certificate(sock->ssl);
++		if (!cert)
++			return error("unable to get peer certificate.");
++		if (verify_hostname(cert, server.host) < 0)
++			return -1;
++	}
++
+ 	return 0;
+-#endif
+ }
++#endif
+ 
+ static int socket_read(struct imap_socket *sock, char *buf, int len)
+ {
[email protected]@ -1022,7 +1085,7 @@
+ 
+ 	ret = socket_write(&ctx->imap->buf.sock, response, strlen(response));
+ 	if (ret != strlen(response))
+-		return error("IMAP error: sending response failed\n");
++		return error("IMAP error: sending response failed");
+ 
+ 	free(response);
+ 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/git/patches/t_Makefile.patch	Tue Apr 07 17:54:04 2015 -0700
@@ -0,0 +1,14 @@
+The ordering to the tests was non-deterministic without sorting the list.
+This will be fed back to the community.
+
+--- git-1.7.9.2/t/Makefile_orig	2015-03-26 14:29:33.733092028 -0700
++++ git-1.7.9.2/t/Makefile	2015-03-26 14:29:53.247281197 -0700
[email protected]@ -17,7 +17,7 @@
+ # Shell quote;
+ SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
+ 
+-T = $(wildcard t[0-9][0-9][0-9][0-9]-*.sh)
++T = $(sort $(wildcard t[0-9][0-9][0-9][0-9]-*.sh))
+ TSVN = $(wildcard t91[0-9][0-9]-*.sh)
+ TGITWEB = $(wildcard t95[0-9][0-9]-*.sh)
+ 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/git/test/results-64.master	Tue Apr 07 17:54:04 2015 -0700
@@ -0,0 +1,12605 @@
+make[1]: Entering directory `$(@D)'
+    SUBDIR gitweb
+    SUBDIR ../
+make[3]: `GIT-VERSION-FILE' is up to date.
+    GEN git-instaweb
+    SUBDIR git-gui
+    SUBDIR gitk-git
+make[2]: Nothing to be done for `all'.
+    SUBDIR perl
+mkdir -p blib/lib
+rm -f blib/lib/Git.pm; cp Git.pm blib/lib/
+rm -f blib/lib/Error.pm
+cp private-Error.pm blib/lib/Error.pm
+    SUBDIR git_remote_helpers
+    SUBDIR templates
+/usr/gnu/bin/make -C t/ all
+make[2]: Entering directory `$(@D)/t'
+rm -f -r test-results
+/usr/gnu/bin/make aggregate-results-and-cleanup
+make[3]: Entering directory `$(@D)/t'
+*** t0000-basic.sh ***
+ok 1 - .git/objects should be empty after git init in an empty repo.
+ok 2 - .git/objects should have 3 subdirectories.
+ok 3 - success is reported like this
+not ok 4 - pretend we have a known breakage # TODO known breakage
+ok 5 - pretend we have fixed a known breakage (run in sub test-lib)
+ok 6 - test runs if prerequisite is satisfied
+ok 7 # skip unmet prerequisite causes test to be skipped (missing DONTHAVEIT)
+ok 8 - test runs if prerequisites are satisfied
+ok 9 # skip unmet prerequisites causes test to be skipped (missing DONTHAVEIT of HAVEIT,DONTHAVEIT)
+ok 10 # skip unmet prerequisites causes test to be skipped (missing DONTHAVEIT of DONTHAVEIT,HAVEIT)
+ok 11 - tests clean up after themselves
+ok 12 - tests clean up even on failures
+ok 13 - git update-index without --add should fail adding.
+ok 14 - git update-index with --add should succeed.
+ok 15 - writing tree out with git write-tree
+ok 16 - validate object ID of a known tree.
+ok 17 - git update-index without --remove should fail removing.
+ok 18 - git update-index with --remove should be able to remove.
+ok 19 - git write-tree should be able to write an empty tree.
+ok 20 - validate object ID of a known tree.
+ok 21 - adding various types of objects with git update-index --add.
+ok 22 - showing stage with git ls-files --stage
+ok 23 - validate git ls-files output for a known tree.
+ok 24 - writing tree out with git write-tree.
+ok 25 - validate object ID for a known tree.
+ok 26 - showing tree with git ls-tree
+ok 27 - git ls-tree output for a known tree.
+ok 28 - showing tree with git ls-tree -r
+ok 29 - git ls-tree -r output for a known tree.
+ok 30 - showing tree with git ls-tree -r -t
+ok 31 - git ls-tree -r output for a known tree.
+ok 32 - writing partial tree out with git write-tree --prefix.
+ok 33 - validate object ID for a known tree.
+ok 34 - writing partial tree out with git write-tree --prefix.
+ok 35 - validate object ID for a known tree.
+ok 36 - put invalid objects into the index.
+ok 37 - writing this tree without --missing-ok.
+ok 38 - writing this tree with --missing-ok.
+ok 39 - git read-tree followed by write-tree should be idempotent.
+ok 40 - validate git diff-files output for a know cache/work tree state.
+ok 41 - git update-index --refresh should succeed.
+ok 42 - no diff after checkout and git update-index --refresh.
+ok 43 - git commit-tree records the correct tree in a commit.
+ok 44 - git commit-tree records the correct parent in a commit.
+ok 45 - git commit-tree omits duplicated parent in a commit.
+ok 46 - update-index D/F conflict
+ok 47 - real path works as expected
+ok 48 - very long name in the index handled sanely
+# still have 1 known breakage(s)
+# passed all remaining 47 test(s)
+1..48
+*** t0001-init.sh ***
+ok 1 - plain
+ok 2 - plain nested in bare
+ok 3 - plain through aliased command, outside any git repo
+not ok 4 - plain nested through aliased command # TODO known breakage
+not ok 5 - plain nested in bare through aliased command # TODO known breakage
+ok 6 - plain with GIT_WORK_TREE
+ok 7 - plain bare
+ok 8 - plain bare with GIT_WORK_TREE
+ok 9 - GIT_DIR bare
+ok 10 - init --bare
+ok 11 - GIT_DIR non-bare
+ok 12 - GIT_DIR & GIT_WORK_TREE (1)
+ok 13 - GIT_DIR & GIT_WORK_TREE (2)
+ok 14 - reinit
+ok 15 - init with --template
+ok 16 - init with --template (blank)
+ok 17 - init with init.templatedir set
+ok 18 - init --bare/--shared overrides system/global config
+ok 19 - init honors global core.sharedRepository
+ok 20 - init rejects insanely long --template
+ok 21 - init creates a new directory
+ok 22 - init creates a new bare directory
+ok 23 - init recreates a directory
+ok 24 - init recreates a new bare directory
+ok 25 - init creates a new deep directory
+ok 26 - init creates a new deep directory (umask vs. shared)
+ok 27 - init notices EEXIST (1)
+ok 28 - init notices EEXIST (2)
+ok 29 - init notices EPERM
+ok 30 - init creates a new bare directory with global --bare
+ok 31 - init prefers command line to GIT_DIR
+ok 32 - init with separate gitdir
+ok 33 - re-init to update git link
+ok 34 - re-init to move gitdir
+ok 35 - re-init to move gitdir symlink
+# still have 2 known breakage(s)
+# passed all remaining 33 test(s)
+1..35
+*** t0002-gitfile.sh ***
+ok 1 - initial setup
+ok 2 - bad setup: invalid .git file format
+ok 3 - bad setup: invalid .git file path
+ok 4 - final setup + check rev-parse --git-dir
+ok 5 - check hash-object
+ok 6 - check cat-file
+ok 7 - check update-index
+ok 8 - check write-tree
+ok 9 - check commit-tree
+ok 10 - check rev-list
+# passed all 10 test(s)
+1..10
+*** t0003-attributes.sh ***
+ok 1 - setup
+ok 2 - command line checks
+ok 3 - attribute test
+ok 4 - attribute matching is case sensitive when core.ignorecase=0
+ok 5 - attribute matching is case insensitive when core.ignorecase=1
+ok 6 - check whether FS is case-insensitive
+ok 7 # skip additional case insensitivity tests (missing CASE_INSENSITIVE_FS)
+ok 8 - unnormalized paths
+ok 9 - relative paths
+ok 10 - prefixes are not confused with leading directories
+ok 11 - core.attributesfile
+ok 12 - attribute test: read paths from stdin
+ok 13 - attribute test: --all option
+ok 14 - attribute test: --cached option
+ok 15 - root subdir attribute test
+ok 16 - setup bare
+ok 17 - bare repository: check that .gitattribute is ignored
+ok 18 - bare repository: check that --cached honors index
+ok 19 - bare repository: test info/attributes
+# passed all 19 test(s)
+1..19
+*** t0004-unwritable.sh ***
+ok 1 - setup
+ok 2 - write-tree should notice unwritable repository
+ok 3 - commit should notice unwritable repository
+ok 4 - update-index should notice unwritable repository
+ok 5 - add should notice unwritable repository
+# passed all 5 test(s)
+1..5
+*** t0005-signals.sh ***
+ok 1 - sigchain works
+# passed all 1 test(s)
+1..1
+*** t0006-date.sh ***
+ok 1 - relative date (5 seconds ago)
+ok 2 - relative date (5 minutes ago)
+ok 3 - relative date (5 hours ago)
+ok 4 - relative date (5 days ago)
+ok 5 - relative date (3 weeks ago)
+ok 6 - relative date (5 months ago)
+ok 7 - relative date (1 year, 2 months ago)
+ok 8 - relative date (1 year, 9 months ago)
+ok 9 - relative date (20 years ago)
+ok 10 - relative date (12 months ago)
+ok 11 - relative date (2 years ago)
+ok 12 - parse date (2008)
+ok 13 - parse date (2008-02)
+ok 14 - parse date (2008-02-14)
+ok 15 - parse date (2008-02-14 20:30:45)
+ok 16 - parse date (2008-02-14 20:30:45 -0500)
+ok 17 - parse date (2008-02-14 20:30:45 -0015)
+ok 18 - parse date (2008-02-14 20:30:45 -5)
+ok 19 - parse date (2008-02-14 20:30:45 -5:)
+ok 20 - parse date (2008-02-14 20:30:45 -05)
+ok 21 - parse date (2008-02-14 20:30:45 -:30)
+ok 22 - parse date (2008-02-14 20:30:45 -05:00)
+ok 23 - parse date (2008-02-14 20:30:45 TZ=EST5)
+ok 24 - parse approxidate (now)
+ok 25 - parse approxidate (5 seconds ago)
+ok 26 - parse approxidate (5.seconds.ago)
+ok 27 - parse approxidate (10.minutes.ago)
+ok 28 - parse approxidate (yesterday)
+ok 29 - parse approxidate (3.days.ago)
+ok 30 - parse approxidate (3.weeks.ago)
+ok 31 - parse approxidate (3.months.ago)
+ok 32 - parse approxidate (2.years.3.months.ago)
+ok 33 - parse approxidate (6am yesterday)
+ok 34 - parse approxidate (6pm yesterday)
+ok 35 - parse approxidate (3:00)
+ok 36 - parse approxidate (15:00)
+ok 37 - parse approxidate (noon today)
+ok 38 - parse approxidate (noon yesterday)
+ok 39 - parse approxidate (last tuesday)
+ok 40 - parse approxidate (July 5th)
+ok 41 - parse approxidate (06/05/2009)
+ok 42 - parse approxidate (06.05.2009)
+ok 43 - parse approxidate (Jun 6, 5AM)
+ok 44 - parse approxidate (5AM Jun 6)
+ok 45 - parse approxidate (6AM, June 7, 2009)
+# passed all 45 test(s)
+1..45
+*** t0010-racy-git.sh ***
+ok 1 - Racy GIT trial #0 part A
+ok 2 - Racy GIT trial #0 part B
+ok 3 - Racy GIT trial #1 part A
+ok 4 - Racy GIT trial #1 part B
+ok 5 - Racy GIT trial #2 part A
+ok 6 - Racy GIT trial #2 part B
+ok 7 - Racy GIT trial #3 part A
+ok 8 - Racy GIT trial #3 part B
+ok 9 - Racy GIT trial #4 part A
+ok 10 - Racy GIT trial #4 part B
+# passed all 10 test(s)
+1..10
+*** t0020-crlf.sh ***
+ok 1 - setup
+ok 2 - safecrlf: autocrlf=input, all CRLF
+ok 3 - safecrlf: autocrlf=input, mixed LF/CRLF
+ok 4 - safecrlf: autocrlf=true, all LF
+ok 5 - safecrlf: autocrlf=true mixed LF/CRLF
+ok 6 - safecrlf: print warning only once
+ok 7 - switch off autocrlf, safecrlf, reset HEAD
+ok 8 - update with autocrlf=input
+ok 9 - update with autocrlf=true
+ok 10 - checkout with autocrlf=true
+ok 11 - checkout with autocrlf=input
+ok 12 - apply patch (autocrlf=input)
+ok 13 - apply patch --cached (autocrlf=input)
+ok 14 - apply patch --index (autocrlf=input)
+ok 15 - apply patch (autocrlf=true)
+ok 16 - apply patch --cached (autocrlf=true)
+ok 17 - apply patch --index (autocrlf=true)
+ok 18 - .gitattributes says two is binary
+ok 19 - .gitattributes says two is input
+ok 20 - .gitattributes says two and three are text
+ok 21 - in-tree .gitattributes (1)
+ok 22 - in-tree .gitattributes (2)
+ok 23 - in-tree .gitattributes (3)
+ok 24 - in-tree .gitattributes (4)
+ok 25 - checkout with existing .gitattributes
+ok 26 - checkout when deleting .gitattributes
+ok 27 - invalid .gitattributes (must not crash)
+ok 28 - setting up for new autocrlf tests
+ok 29 - report no change after setting autocrlf
+ok 30 - files are clean after checkout
+ok 31 - LF only file gets CRLF with autocrlf
+ok 32 - Mixed file is still mixed with autocrlf
+ok 33 - CRLF only file has CRLF with autocrlf
+ok 34 - New CRLF file gets LF in repo
+# passed all 34 test(s)
+1..34
+*** t0021-conversion.sh ***
+ok 1 - setup
+ok 2 - check
+ok 3 - expanded_in_repo
+ok 4 - filter shell-escaped filenames
+# passed all 4 test(s)
+1..4
+*** t0022-crlf-rename.sh ***
+ok 1 - setup
+ok 2 - diff -M
+# passed all 2 test(s)
+1..2
+*** t0023-crlf-am.sh ***
+ok 1 - setup
+ok 2 - am
+# passed all 2 test(s)
+1..2
+*** t0024-crlf-archive.sh ***
+ok 1 - setup
+ok 2 - tar archive
+ok 3 - zip archive
+# passed all 3 test(s)
+1..3
+*** t0025-crlf-auto.sh ***
+ok 1 - setup
+ok 2 - default settings cause no changes
+ok 3 - crlf=true causes a CRLF file to be normalized
+ok 4 - text=true causes a CRLF file to be normalized
+ok 5 - eol=crlf gives a normalized file CRLFs with autocrlf=false
+ok 6 - eol=crlf gives a normalized file CRLFs with autocrlf=input
+ok 7 - eol=lf gives a normalized file LFs with autocrlf=true
+ok 8 - autocrlf=true does not normalize CRLF files
+ok 9 - text=auto, autocrlf=true _does_ normalize CRLF files
+ok 10 - text=auto, autocrlf=true does not normalize binary files
+ok 11 - eol=crlf _does_ normalize binary files
+# passed all 11 test(s)
+1..11
+*** t0026-eol-config.sh ***
+ok 1 - setup
+ok 2 - eol=lf puts LFs in normalized file
+ok 3 - eol=crlf puts CRLFs in normalized file
+ok 4 - autocrlf=true overrides eol=lf
+ok 5 - autocrlf=true overrides unset eol
+# passed all 5 test(s)
+1..5
+*** t0030-stripspace.sh ***
+ok 1 - long lines without spaces should be unchanged
+ok 2 - lines with spaces at the beginning should be unchanged
+ok 3 - lines with intermediate spaces should be unchanged
+ok 4 - consecutive blank lines should be unified
+ok 5 - only consecutive blank lines should be completely removed
+ok 6 - consecutive blank lines at the beginning should be removed
+ok 7 - consecutive blank lines at the end should be removed
+ok 8 - text without newline at end should end with newline
+ok 9 - text plus spaces without newline at end should end with newline
+ok 10 - text plus spaces without newline at end should not show spaces
+ok 11 - text plus spaces without newline should show the correct lines
+ok 12 - text plus spaces at end should not show spaces
+ok 13 - text plus spaces at end should be cleaned and newline must remain
+ok 14 - spaces with newline at end should be replaced with empty string
+ok 15 - spaces without newline at end should not show spaces
+ok 16 - spaces without newline at end should be replaced with empty string
+ok 17 - consecutive text lines should be unchanged
+ok 18 - strip comments, too
+# passed all 18 test(s)
+1..18
+*** t0040-parse-options.sh ***
+ok 1 - test help
+ok 2 - short options
+ok 3 - long options
+ok 4 - missing required value
+ok 5 - intermingled arguments
+ok 6 - unambiguously abbreviated option
+ok 7 - unambiguously abbreviated option with "="
+ok 8 - ambiguously abbreviated option
+ok 9 - non ambiguous option (after two options it abbreviates)
+ok 10 - detect possible typos
+ok 11 - keep some options as arguments
+ok 12 - OPT_DATE() and OPT_SET_PTR() work
+ok 13 - OPT_CALLBACK() and OPT_BIT() work
+ok 14 - OPT_CALLBACK() and callback errors work
+ok 15 - OPT_BIT() and OPT_SET_INT() work
+ok 16 - OPT_NEGBIT() and OPT_SET_INT() work
+ok 17 - OPT_BIT() works
+ok 18 - OPT_NEGBIT() works
+ok 19 - OPT_BOOLEAN() with PARSE_OPT_NODASH works
+ok 20 - OPT_NUMBER_CALLBACK() works
+ok 21 - negation of OPT_NONEG flags is not ambiguous
+ok 22 - --list keeps list of strings
+ok 23 - --no-list resets list
+# passed all 23 test(s)
+1..23
+*** t0050-filesystem.sh ***
+ok 1 - see what we expect
+ok 2 - detection of case insensitive filesystem during repo init
+ok 3 - detection of filesystem w/o symlink support during repo init
+ok 4 - setup case tests
+ok 5 - rename (case change)
+ok 6 - merge (case change)
+not ok 7 - add (with different case) # TODO known breakage
+ok 8 - setup unicode normalization tests
+ok 9 - rename (silent unicode normalization)
+ok 10 - merge (silent unicode normalization)
+# still have 1 known breakage(s)
+# passed all remaining 9 test(s)
+1..10
+*** t0055-beyond-symlinks.sh ***
+ok 1 - setup
+ok 2 - update-index --add beyond symlinks
+ok 3 - add beyond symlinks
+# passed all 3 test(s)
+1..3
+*** t0060-path-utils.sh ***
+ok 1 - normalize path:  => 
+ok 2 - normalize path: . => 
+ok 3 - normalize path: ./ => 
+ok 4 - normalize path: ./. => 
+ok 5 - normalize path: ./.. => ++failed++
+ok 6 - normalize path: ../. => ++failed++
+ok 7 - normalize path: ./../.// => ++failed++
+ok 8 - normalize path: dir/.. => 
+ok 9 - normalize path: dir/sub/../.. => 
+ok 10 - normalize path: dir/sub/../../.. => ++failed++
+ok 11 - normalize path: dir => dir
+ok 12 - normalize path: dir// => dir/
+ok 13 - normalize path: ./dir => dir
+ok 14 - normalize path: dir/. => dir/
+ok 15 - normalize path: dir///./ => dir/
+ok 16 - normalize path: dir//sub/.. => dir/
+ok 17 - normalize path: dir/sub/../ => dir/
+ok 18 - normalize path: dir/sub/../. => dir/
+ok 19 - normalize path: dir/s1/../s2/ => dir/s2/
+ok 20 - normalize path: d1/s1///s2/..//../s3/ => d1/s3/
+ok 21 - normalize path: d1/s1//../s2/../../d2 => d2
+ok 22 - normalize path: d1/.../d2 => d1/.../d2
+ok 23 - normalize path: d1/..././../d2 => d1/d2
+ok 24 - normalize path: / => /
+ok 25 - normalize path: // => /
+ok 26 - normalize path: /// => /
+ok 27 - normalize path: /. => /
+ok 28 - normalize path: /./ => /
+ok 29 - normalize path: /./.. => ++failed++
+ok 30 - normalize path: /../. => ++failed++
+ok 31 - normalize path: /./../.// => ++failed++
+ok 32 - normalize path: /dir/.. => /
+ok 33 - normalize path: /dir/sub/../.. => /
+ok 34 - normalize path: /dir/sub/../../.. => ++failed++
+ok 35 - normalize path: /dir => /dir
+ok 36 - normalize path: /dir// => /dir/
+ok 37 - normalize path: /./dir => /dir
+ok 38 - normalize path: /dir/. => /dir/
+ok 39 - normalize path: /dir///./ => /dir/
+ok 40 - normalize path: /dir//sub/.. => /dir/
+ok 41 - normalize path: /dir/sub/../ => /dir/
+ok 42 - normalize path: //dir/sub/../. => /dir/
+ok 43 - normalize path: /dir/s1/../s2/ => /dir/s2/
+ok 44 - normalize path: /d1/s1///s2/..//../s3/ => /d1/s3/
+ok 45 - normalize path: /d1/s1//../s2/../../d2 => /d2
+ok 46 - normalize path: /d1/.../d2 => /d1/.../d2
+ok 47 - normalize path: /d1/..././../d2 => /d1/d2
+ok 48 - longest ancestor: /  => -1
+ok 49 - longest ancestor: / / => -1
+ok 50 - longest ancestor: /foo  => -1
+ok 51 - longest ancestor: /foo : => -1
+ok 52 - longest ancestor: /foo ::. => -1
+ok 53 - longest ancestor: /foo ::..:: => -1
+ok 54 - longest ancestor: /foo / => 0
+ok 55 - longest ancestor: /foo /fo => -1
+ok 56 - longest ancestor: /foo /foo => -1
+ok 57 - longest ancestor: /foo /foo/ => -1
+ok 58 - longest ancestor: /foo /bar => -1
+ok 59 - longest ancestor: /foo /bar/ => -1
+ok 60 - longest ancestor: /foo /foo/bar => -1
+ok 61 - longest ancestor: /foo /foo:/bar/ => -1
+ok 62 - longest ancestor: /foo /foo/:/bar/ => -1
+ok 63 - longest ancestor: /foo /foo::/bar/ => -1
+ok 64 - longest ancestor: /foo /:/foo:/bar/ => 0
+ok 65 - longest ancestor: /foo /foo:/:/bar/ => 0
+ok 66 - longest ancestor: /foo /:/bar/:/foo => 0
+ok 67 - longest ancestor: /foo/bar  => -1
+ok 68 - longest ancestor: /foo/bar / => 0
+ok 69 - longest ancestor: /foo/bar /fo => -1
+ok 70 - longest ancestor: /foo/bar foo => -1
+ok 71 - longest ancestor: /foo/bar /foo => 4
+ok 72 - longest ancestor: /foo/bar /foo/ => 4
+ok 73 - longest ancestor: /foo/bar /foo/ba => -1
+ok 74 - longest ancestor: /foo/bar /:/fo => 0
+ok 75 - longest ancestor: /foo/bar /foo:/foo/ba => 4
+ok 76 - longest ancestor: /foo/bar /bar => -1
+ok 77 - longest ancestor: /foo/bar /bar/ => -1
+ok 78 - longest ancestor: /foo/bar /fo: => -1
+ok 79 - longest ancestor: /foo/bar :/fo => -1
+ok 80 - longest ancestor: /foo/bar /foo:/bar/ => 4
+ok 81 - longest ancestor: /foo/bar /:/foo:/bar/ => 4
+ok 82 - longest ancestor: /foo/bar /foo:/:/bar/ => 4
+ok 83 - longest ancestor: /foo/bar /:/bar/:/fo => 0
+ok 84 - longest ancestor: /foo/bar /:/bar/ => 0
+ok 85 - longest ancestor: /foo/bar .:/foo/. => 4
+ok 86 - longest ancestor: /foo/bar .:/foo/.:.: => 4
+ok 87 - longest ancestor: /foo/bar /foo/./:.:/bar => 4
+ok 88 - longest ancestor: /foo/bar .:/bar => -1
+ok 89 - strip_path_suffix
+# passed all 89 test(s)
+1..89
+*** t0061-run-command.sh ***
+ok 1 - start_command reports ENOENT
+ok 2 - run_command can run a command
+ok 3 - run_command reports EACCES
+# passed all 3 test(s)
+1..3
+*** t0070-fundamental.sh ***
+ok 1 - character classes (isspace, isalpha etc.)
+ok 2 - mktemp to nonexistent directory prints filename
+ok 3 - mktemp to unwritable directory prints filename
+# passed all 3 test(s)
+1..3
+*** t0080-vcs-svn.sh ***
+ok 1 - obj pool: store data
+ok 2 - obj pool: NULL is offset ~0
+ok 3 - obj pool: out-of-bounds access
+ok 4 - obj pool: high-water mark
+ok 5 - string pool
+ok 6 - treap sort
+# passed all 6 test(s)
+1..6
+*** t0081-line-buffer.sh ***
+ok 1 - hello world
+ok 2 - 0-length read, send along greeting
+ok 3 - read from file descriptor
+ok 4 - skip, copy null byte
+ok 5 - read null byte
+ok 6 - long reads are truncated
+ok 7 - long copies are truncated
+ok 8 - long binary reads are truncated
+# passed all 8 test(s)
+1..8
+*** t0090-cache-tree.sh ***
+not ok 1 - initial commit has cache-tree # TODO known breakage
+ok 2 - read-tree HEAD establishes cache-tree
+ok 3 - git-add invalidates cache-tree
+ok 4 - update-index invalidates cache-tree
+ok 5 - write-tree establishes cache-tree
+ok 6 - test-scrap-cache-tree works
+ok 7 - second commit has cache-tree
+ok 8 - reset --hard gives cache-tree
+ok 9 - reset --hard without index gives cache-tree
+not ok 10 - checkout gives cache-tree # TODO known breakage
+# still have 2 known breakage(s)
+# passed all remaining 8 test(s)
+1..10
+*** t0100-previous.sh ***
+ok 1 - branch -d @{-1}
+ok 2 - branch -d @{-12} when there is not enough switches yet
+ok 3 - merge @{-1}
+ok 4 - merge @{-1} when there is not enough switches yet
+# passed all 4 test(s)
+1..4
+*** t0101-at-syntax.sh ***
+ok 1 - setup
+ok 2 - @{0} shows current
+ok 3 - @{1} shows old
+ok 4 - @{now} shows current
+ok 5 - @{2001-09-17} (before the first commit) shows old
+ok 6 - silly approxidates work
+ok 7 - notice misspelled upstream
+ok 8 - complain about total nonsense
+# passed all 8 test(s)
+1..8
+*** t0200-gettext-basic.sh ***
+# lib-gettext: Found 'is_IS.UTF-8' as an is_IS UTF-8 locale
+# lib-gettext: Found 'is_IS.ISO8859-1' as an is_IS ISO-8859-1 locale
+ok 1 - sanity: $GIT_INTERNAL_GETTEXT_SH_SCHEME is set (to gnu)
+ok 2 - sanity: $TEXTDOMAIN is git
+ok 3 - xgettext sanity: Perl _() strings are not extracted
+ok 4 - xgettext sanity: Comment extraction with --add-comments
+ok 5 - xgettext sanity: Comment extraction with --add-comments stops at statements
+ok 6 - sanity: $TEXTDOMAINDIR exists without NO_GETTEXT=YesPlease
+ok 7 - sanity: Icelandic locale was compiled
+ok 8 - sanity: gettext("") metadata is OK
+ok 9 - sanity: gettext(unknown) is passed through
+ok 10 - xgettext: C extraction of _() and N_() strings
+ok 11 - xgettext: C extraction with %s
+ok 12 - xgettext: Shell extraction
+ok 13 - xgettext: Shell extraction with $variable
+ok 14 - xgettext: Perl extraction
+ok 15 - xgettext: Perl extraction with %s
+ok 16 - sanity: Some gettext("") data for real locale
+# passed all 16 test(s)
+1..16
+*** t0201-gettext-fallbacks.sh ***
+# lib-gettext: No is_IS UTF-8 locale available
+# lib-gettext: No is_IS ISO-8859-1 locale available
+ok 1 - sanity: $GIT_INTERNAL_GETTEXT_SH_SCHEME is set (to fallthrough)
+ok 2 - sanity: $GIT_INTERNAL_GETTEXT_TEST_FALLBACKS is set
+ok 3 - sanity: $GIT_INTERNAL_GETTEXT_SH_SCHEME" is fallthrough
+ok 4 - gettext: our gettext() fallback has pass-through semantics
+ok 5 - eval_gettext: our eval_gettext() fallback has pass-through semantics
+ok 6 - eval_gettext: our eval_gettext() fallback can interpolate variables
+ok 7 - eval_gettext: our eval_gettext() fallback can interpolate variables with spaces
+ok 8 - eval_gettext: our eval_gettext() fallback can interpolate variables with spaces and quotes
+# passed all 8 test(s)
+1..8
+*** t0202-gettext-perl.sh ***
+# lib-gettext: Found 'is_IS.UTF-8' as an is_IS UTF-8 locale
+# lib-gettext: Found 'is_IS.ISO8859-1' as an is_IS ISO-8859-1 locale
+# run 1: Perl Git::I18N API ($(PERL) $(@D)/t/t0202/test.pl)
+1..8
+# test_external test Perl Git::I18N API failed: $(PERL) $(@D)/t/t0202/test.pl
+# test_external_without_stderr test no stderr: Perl Git::I18N API failed: $(PERL) $(@D)/t/t0202/test.pl: 
+make[3]: [t0202-gettext-perl.sh] Error 1 (ignored)
+*** t0203-gettext-setlocale-sanity.sh ***
+# lib-gettext: Found 'is_IS.UTF-8' as an is_IS UTF-8 locale
+# lib-gettext: Found 'is_IS.ISO8859-1' as an is_IS ISO-8859-1 locale
+ok 1 - git show a ISO-8859-1 commit under C locale
+ok 2 - git show a ISO-8859-1 commit under a UTF-8 locale
+# passed all 2 test(s)
+1..2
+*** t0204-gettext-reencode-sanity.sh ***
+# lib-gettext: Found 'is_IS.UTF-8' as an is_IS UTF-8 locale
+# lib-gettext: Found 'is_IS.ISO8859-1' as an is_IS ISO-8859-1 locale
+ok 1 - gettext: Emitting UTF-8 from our UTF-8 *.mo files / Icelandic
+ok 2 - gettext: Emitting UTF-8 from our UTF-8 *.mo files / Runes
+ok 3 - gettext: Emitting ISO-8859-1 from our UTF-8 *.mo files / Icelandic
+ok 4 - gettext: Emitting ISO-8859-1 from our UTF-8 *.mo files / Runes
+not ok - 5 gettext: Fetching a UTF-8 msgid -> UTF-8
+#	
+#	    printf "TILRAUN: ‚einfaldar‘ og „tvöfaldar“ gæsalappir" >expect &&
+#	    LANGUAGE=is LC_ALL="$is_IS_locale" gettext "TEST: ‘single’ and “double” quotes" >actual &&
+#	    test_cmp expect actual
+#	
+not ok - 6 gettext: Fetching a UTF-8 msgid -> ISO-8859-1
+#	
+#	    LANGUAGE=is LC_ALL="$is_IS_iso_locale" gettext "TEST: ‘single’ and “double” quotes" >actual &&
+#	    grep "einfaldar" actual &&
+#	    grep "$(echo tvöfaldar | iconv -f UTF-8 -t ISO8859-1)" actual
+#	
+ok 7 - gettext.c: git init UTF-8 -> UTF-8
+ok 8 - gettext.c: git init UTF-8 -> ISO-8859-1
+# failed 2 among 8 test(s)
+1..8
+make[3]: [t0204-gettext-reencode-sanity.sh] Error 1 (ignored)
+*** t0205-gettext-poison.sh ***
+# lib-gettext: Found 'is_IS.UTF-8' as an is_IS UTF-8 locale
+# lib-gettext: Found 'is_IS.ISO8859-1' as an is_IS ISO-8859-1 locale
+ok 1 # skip sanity: $GIT_INTERNAL_GETTEXT_SH_SCHEME is set (to gnu) (missing GETTEXT_POISON)
+ok 2 # skip sanity: $GIT_INTERNAL_GETTEXT_SH_SCHEME" is poison (missing GETTEXT_POISON)
+ok 3 # skip gettext: our gettext() fallback has poison semantics (missing GETTEXT_POISON)
+ok 4 # skip eval_gettext: our eval_gettext() fallback has poison semantics (missing GETTEXT_POISON)
+# passed all 4 test(s)
+1..4
+*** t0300-credentials.sh ***
+ok 1 - setup helper scripts
+ok 2 - credential_fill invokes helper
+ok 3 - credential_fill invokes multiple helpers
+ok 4 - credential_fill stops when we get a full response
+ok 5 - credential_fill continues through partial response
+ok 6 - credential_fill passes along metadata
+ok 7 - credential_approve calls all helpers
+ok 8 - do not bother storing password-less credential
+ok 9 - credential_reject calls all helpers
+ok 10 - usernames can be preserved
+ok 11 - usernames can be overridden
+ok 12 - do not bother completing already-full credential
+ok 13 - empty helper list falls back to internal getpass
+ok 14 - internal getpass does not ask for known username
+ok 15 - respect configured credentials
+ok 16 - match configured credential
+ok 17 - do not match configured credential
+ok 18 - pull username from config
+ok 19 - http paths can be part of context
+# passed all 19 test(s)
+1..19
+*** t0301-credential-cache.sh ***
+ok 1 - helper (cache) has no existing data
+ok 2 - helper (cache) stores password
+ok 3 - helper (cache) can retrieve password
+ok 4 - helper (cache) requires matching protocol
+ok 5 - helper (cache) requires matching host
+ok 6 - helper (cache) requires matching username
+ok 7 - helper (cache) requires matching path
+ok 8 - helper (cache) can forget host
+ok 9 - helper (cache) can store multiple users
+ok 10 - helper (cache) can forget user
+ok 11 - helper (cache) remembers other user
+ok 12 - helper (cache --timeout=1) times out
+# passed all 12 test(s)
+1..12
+*** t0302-credential-store.sh ***
+ok 1 - helper (store) has no existing data
+ok 2 - helper (store) stores password
+ok 3 - helper (store) can retrieve password
+ok 4 - helper (store) requires matching protocol
+ok 5 - helper (store) requires matching host
+ok 6 - helper (store) requires matching username
+ok 7 - helper (store) requires matching path
+ok 8 - helper (store) can forget host
+ok 9 - helper (store) can store multiple users
+ok 10 - helper (store) can forget user
+ok 11 - helper (store) remembers other user
+# passed all 11 test(s)
+1..11
+*** t0303-credential-external.sh ***
+# skipping external helper tests (set GIT_TEST_CREDENTIAL_HELPER)
+# skipping external helper timeout tests
+# passed all 0 test(s)
+1..0
+*** t1000-read-tree-m-3way.sh ***
+ok 1 - adding test file NN and Z/NN
+ok 2 - adding test file ND and Z/ND
+ok 3 - adding test file NM and Z/NM
+ok 4 - adding test file DN and Z/DN
+ok 5 - adding test file DD and Z/DD
+ok 6 - adding test file DM and Z/DM
+ok 7 - adding test file MN and Z/MN
+ok 8 - adding test file MD and Z/MD
+ok 9 - adding test file MM and Z/MM
+ok 10 - adding test file SS
+ok 11 - adding test file TT
+ok 12 - prepare initial tree
+ok 13 - change in branch A (removal)
+ok 14 - change in branch A (modification)
+ok 15 - change in branch A (modification)
+ok 16 - change in branch A (modification)
+ok 17 - change in branch A (modification)
+ok 18 - change in branch A (modification)
+ok 19 - change in branch A (modification)
+ok 20 - change in branch A (addition)
+ok 21 - change in branch A (addition)
+ok 22 - change in branch A (addition)
+ok 23 - change in branch A (addition)
+ok 24 - change in branch A (addition)
+ok 25 - change in branch A (edit)
+ok 26 - change in branch A (change file to directory)
+ok 27 - recording branch A tree
+ok 28 - reading original tree and checking out
+ok 29 - change in branch B (removal)
+ok 30 - change in branch B (modification)
+ok 31 - change in branch B (modification)
+ok 32 - change in branch B (modification)
+ok 33 - change in branch B (modification)
+ok 34 - change in branch B (modification)
+ok 35 - change in branch B (modification)
+ok 36 - change in branch B (addition)
+ok 37 - change in branch B (addition)
+ok 38 - change in branch B (addition)
+ok 39 - change in branch B (addition)
+ok 40 - change in branch B (addition and modification)
+ok 41 - change in branch B (modification)
+ok 42 - change in branch B (addition of a file to conflict with directory)
+ok 43 - recording branch B tree
+ok 44 - keep contents of 3 trees for easy access
+ok 45 - 3-way merge with git read-tree -m, empty cache
+ok 46 - 3-way merge with git read-tree -m, match H
+ok 47 - 1 - must not have an entry not in A.
+ok 48 - 2 - must match B in !O && !A && B case.
+ok 49 - 2 - matching B alone is OK in !O && !A && B case.
+ok 50 - 3 - must match A in !O && A && !B case.
+ok 51 - 3 - matching A alone is OK in !O && A && !B case.
+ok 52 - 3 (fail) - must match A in !O && A && !B case.
+ok 53 - 4 - must match and be up-to-date in !O && A && B && A!=B case.
+ok 54 - 4 (fail) - must match and be up-to-date in !O && A && B && A!=B case.
+ok 55 - 4 (fail) - must match and be up-to-date in !O && A && B && A!=B case.
+ok 56 - 5 - must match in !O && A && B && A==B case.
+ok 57 - 5 - must match in !O && A && B && A==B case.
+ok 58 - 5 (fail) - must match A in !O && A && B && A==B case.
+ok 59 - 6 - must not exist in O && !A && !B case
+ok 60 - 7 - must not exist in O && !A && B && O!=B case
+ok 61 - 8 - must not exist in O && !A && B && O==B case
+ok 62 - 9 - must match and be up-to-date in O && A && !B && O!=A case
+ok 63 - 9 (fail) - must match and be up-to-date in O && A && !B && O!=A case
+ok 64 - 9 (fail) - must match and be up-to-date in O && A && !B && O!=A case
+ok 65 - 10 - must match and be up-to-date in O && A && !B && O==A case
+ok 66 - 10 (fail) - must match and be up-to-date in O && A && !B && O==A case
+ok 67 - 10 (fail) - must match and be up-to-date in O && A && !B && O==A case
+ok 68 - 11 - must match and be up-to-date in O && A && B && O!=A && O!=B && A!=B case
+ok 69 - 11 (fail) - must match and be up-to-date in O && A && B && O!=A && O!=B && A!=B case
+ok 70 - 11 (fail) - must match and be up-to-date in O && A && B && O!=A && O!=B && A!=B case
+ok 71 - 12 - must match A in O && A && B && O!=A && A==B case
+ok 72 - 12 - must match A in O && A && B && O!=A && A==B case
+ok 73 - 12 (fail) - must match A in O && A && B && O!=A && A==B case
+ok 74 - 13 - must match A in O && A && B && O!=A && O==B case
+ok 75 - 13 - must match A in O && A && B && O!=A && O==B case
+ok 76 - 14 - must match and be up-to-date in O && A && B && O==A && O!=B case
+ok 77 - 14 - may match B in O && A && B && O==A && O!=B case
+ok 78 - 14 (fail) - must match and be up-to-date in O && A && B && O==A && O!=B case
+ok 79 - 14 (fail) - must match and be up-to-date in O && A && B && O==A && O!=B case
+ok 80 - 15 - must match A in O && A && B && O==A && O==B case
+ok 81 - 15 - must match A in O && A && B && O==A && O==B case
+ok 82 - 15 (fail) - must match A in O && A && B && O==A && O==B case
+ok 83 - 16 - A matches in one and B matches in another.
+# passed all 83 test(s)
+1..83
+*** t1001-read-tree-m-2way.sh ***
+ok 1 - setup
+ok 2 - 1, 2, 3 - no carry forward
+ok 3 - 4 - carry forward local addition.
+ok 4 - 5 - carry forward local addition.
+ok 5 - 6 - local addition already has the same.
+ok 6 - 7 - local addition already has the same.
+ok 7 - 8 - conflicting addition.
+ok 8 - 9 - conflicting addition.
+ok 9 - 10 - path removed.
+ok 10 - 11 - dirty path removed.
+ok 11 - 12 - unmatching local changes being removed.
+ok 12 - 13 - unmatching local changes being removed.
+ok 13 - 14 - unchanged in two heads.
+ok 14 - 15 - unchanged in two heads.
+ok 15 - 16 - conflicting local change.
+ok 16 - 17 - conflicting local change.
+ok 17 - 18 - local change already having a good result.
+ok 18 - 19 - local change already having a good result, further modified.
+ok 19 - 20 - no local change, use new tree.
+ok 20 - 21 - no local change, dirty cache.
+ok 21 - 22 - local change cache updated.
+ok 22 - DF vs DF/DF case setup.
+ok 23 - DF vs DF/DF case test.
+ok 24 - a/b (untracked) vs a case setup.
+ok 25 - a/b (untracked) vs a, plus c/d case test.
+ok 26 - a/b vs a, plus c/d case setup.
+ok 27 - a/b vs a, plus c/d case test.
+ok 28 - -m references the correct modified tree
+# passed all 28 test(s)
+1..28
+*** t1002-read-tree-m-u-2way.sh ***
+ok 1 - setup
+ok 2 - 1, 2, 3 - no carry forward
+ok 3 - 4 - carry forward local addition.
+ok 4 - 5 - carry forward local addition.
+ok 5 - 6 - local addition already has the same.
+ok 6 - 7 - local addition already has the same.
+ok 7 - 8 - conflicting addition.
+ok 8 - 9 - conflicting addition.
+ok 9 - 10 - path removed.
+ok 10 - 11 - dirty path removed.
+ok 11 - 12 - unmatching local changes being removed.
+ok 12 - 13 - unmatching local changes being removed.
+ok 13 - 14 - unchanged in two heads.
+ok 14 - 15 - unchanged in two heads.
+ok 15 - 16 - conflicting local change.
+ok 16 - 17 - conflicting local change.
+ok 17 - 18 - local change already having a good result.
+ok 18 - 19 - local change already having a good result, further modified.
+ok 19 - 20 - no local change, use new tree.
+ok 20 - 21 - no local change, dirty cache.
+ok 21 - DF vs DF/DF case setup.
+ok 22 - DF vs DF/DF case test.
+# passed all 22 test(s)
+1..22
+*** t1003-read-tree-prefix.sh ***
+ok 1 - setup
+ok 2 - read-tree --prefix
+# passed all 2 test(s)
+1..2
+*** t1004-read-tree-m-u-wf.sh ***
+ok 1 - two-way setup
+ok 2 - two-way not clobbering
+ok 3 - two-way with incorrect --exclude-per-directory (1)
+ok 4 - two-way with incorrect --exclude-per-directory (2)
+ok 5 - two-way clobbering a ignored file
+ok 6 - three-way not complaining on an untracked path in both
+ok 7 - three-way not clobbering a working tree file
+ok 8 - three-way not complaining on an untracked file
+ok 9 - 3-way not overwriting local changes (setup)
+ok 10 - 3-way not overwriting local changes (our side)
+ok 11 - 3-way not overwriting local changes (their side)
+ok 12 - funny symlink in work tree
+ok 13 - funny symlink in work tree, un-unlink-able
+ok 14 - D/F setup
+ok 15 - D/F
+ok 16 - D/F resolve
+ok 17 - D/F recursive
+# passed all 17 test(s)
+1..17
+*** t1005-read-tree-reset.sh ***
+ok 1 - setup
+ok 2 - reset should work
+ok 3 - reset should remove remnants from a failed merge
+ok 4 - Porcelain reset should remove remnants too
+ok 5 - Porcelain checkout -f should remove remnants too
+ok 6 - Porcelain checkout -f HEAD should remove remnants too
+# passed all 6 test(s)
+1..6
+*** t1006-cat-file.sh ***
+ok 1 - setup
+ok 2 - blob exists
+ok 3 - Type of blob is correct
+ok 4 - Size of blob is correct
+ok 5 - Content of blob is correct
+ok 6 - Pretty content of blob is correct
+ok 7 - --batch output of blob is correct
+ok 8 - --batch-check output of blob is correct
+ok 9 - tree exists
+ok 10 - Type of tree is correct
+ok 11 - Size of tree is correct
+ok 12 - Pretty content of tree is correct
+ok 13 - --batch-check output of tree is correct
+ok 14 - commit exists
+ok 15 - Type of commit is correct
+ok 16 - Size of commit is correct
+ok 17 - Content of commit is correct
+ok 18 - Pretty content of commit is correct
+ok 19 - --batch output of commit is correct
+ok 20 - --batch-check output of commit is correct
+ok 21 - tag exists
+ok 22 - Type of tag is correct
+ok 23 - Size of tag is correct
+ok 24 - Content of tag is correct
+ok 25 - Pretty content of tag is correct
+ok 26 - --batch output of tag is correct
+ok 27 - --batch-check output of tag is correct
+ok 28 - Reach a blob from a tag pointing to it
+ok 29 - Passing -t with --batch fails
+ok 30 - Passing --batch with -t fails
+ok 31 - Passing -s with --batch fails
+ok 32 - Passing --batch with -s fails
+ok 33 - Passing -e with --batch fails
+ok 34 - Passing --batch with -e fails
+ok 35 - Passing -p with --batch fails
+ok 36 - Passing --batch with -p fails
+ok 37 - Passing <type> with --batch fails
+ok 38 - Passing --batch with <type> fails
+ok 39 - Passing sha1 with --batch fails
+ok 40 - Passing -t with --batch-check fails
+ok 41 - Passing --batch-check with -t fails
+ok 42 - Passing -s with --batch-check fails
+ok 43 - Passing --batch-check with -s fails
+ok 44 - Passing -e with --batch-check fails
+ok 45 - Passing --batch-check with -e fails
+ok 46 - Passing -p with --batch-check fails
+ok 47 - Passing --batch-check with -p fails
+ok 48 - Passing <type> with --batch-check fails
+ok 49 - Passing --batch-check with <type> fails
+ok 50 - Passing sha1 with --batch-check fails
+ok 51 - --batch-check for a non-existent named object
+ok 52 - --batch-check for a non-existent hash
+ok 53 - --batch for an existent and a non-existent hash
+ok 54 - --batch-check for an emtpy line
+ok 55 - --batch with multiple sha1s gives correct format
+ok 56 - --batch-check with multiple sha1s gives correct format
+# passed all 56 test(s)
+1..56
+*** t1007-hash-object.sh ***
+ok 1 - multiple '--stdin's are rejected
+ok 2 - Can't use --stdin and --stdin-paths together
+ok 3 - Can't pass filenames as arguments with --stdin-paths
+ok 4 - Can't use --path with --stdin-paths
+ok 5 - Can't use --path with --no-filters
+ok 6 - hash a file
+ok 7 - blob does not exist in database
+ok 8 - hash from stdin
+ok 9 - blob does not exist in database
+ok 10 - hash a file and write to database
+ok 11 - blob exists in database
+ok 12 - git hash-object --stdin file1 <file0 first operates on file0, then file1
+ok 13 - check that appropriate filter is invoke when --path is used
+ok 14 - check that --no-filters option works
+ok 15 - check that --no-filters option works with --stdin-paths
+ok 16 - hash from stdin and write to database (-w --stdin)
+ok 17 - blob exists in database
+ok 18 - hash from stdin and write to database (--stdin -w)
+ok 19 - blob exists in database
+ok 20 - hash two files with names on stdin
+ok 21 - hash two files with names on stdin and write to database (-w --stdin-paths)
+ok 22 - blob exists in database
+ok 23 - blob exists in database
+ok 24 - hash two files with names on stdin and write to database (--stdin-paths -w)
+ok 25 - blob exists in database
+ok 26 - blob exists in database
+ok 27 - corrupt tree
+ok 28 - corrupt commit
+ok 29 - corrupt tag
+# passed all 29 test(s)
+1..29
+*** t1008-read-tree-overlay.sh ***
+ok 1 - setup
+ok 2 - multi-read
+# passed all 2 test(s)
+1..2
+*** t1009-read-tree-new-index.sh ***
+ok 1 - setup
+ok 2 - non-existent index file
+ok 3 - empty index file
+# passed all 3 test(s)
+1..3
+*** t1010-mktree.sh ***
+ok 1 - setup
+ok 2 - ls-tree piped to mktree (1)
+ok 3 - ls-tree piped to mktree (2)
+ok 4 - ls-tree output in wrong order given to mktree (1)
+ok 5 - ls-tree output in wrong order given to mktree (2)
+ok 6 - allow missing object with --missing
+ok 7 - mktree refuses to read ls-tree -r output (1)
+ok 8 - mktree refuses to read ls-tree -r output (2)
+# passed all 8 test(s)
+1..8
+*** t1011-read-tree-sparse-checkout.sh ***
+ok 1 - setup
+ok 2 - read-tree without .git/info/sparse-checkout
+ok 3 - read-tree with .git/info/sparse-checkout but disabled
+ok 4 - read-tree --no-sparse-checkout with empty .git/info/sparse-checkout and enabled
+ok 5 - read-tree with empty .git/info/sparse-checkout
+ok 6 - match directories with trailing slash
+ok 7 - match directories without trailing slash
+ok 8 - match directories with negated patterns
+ok 9 - match directories with negated patterns (2)
+ok 10 - match directory pattern
+ok 11 - checkout area changes
+ok 12 - read-tree updates worktree, absent case
+ok 13 - read-tree updates worktree, dirty case
+ok 14 - read-tree removes worktree, dirty case
+ok 15 - read-tree adds to worktree, absent case
+ok 16 - read-tree adds to worktree, dirty case
+ok 17 - index removal and worktree narrowing at the same time
+ok 18 - read-tree --reset removes outside worktree
+ok 19 - print errors when failed to update worktree
+# passed all 19 test(s)
+1..19
+*** t1012-read-tree-df.sh ***
+ok 1 - setup
+ok 2 - 3-way (1)
+ok 3 - 3-way (2)
+ok 4 - 3-way (3)
+ok 5 - 2-way (1)
+# passed all 5 test(s)
+1..5
+*** t1013-loose-object-format.sh ***
+ok 1 - setup
+ok 2 - read standard-format loose objects
+ok 3 - read experimental-format loose objects
+ok 4 - read standard-format objects deflated with smaller window buffer
+# passed all 4 test(s)
+1..4
+*** t1020-subdirectory.sh ***
+ok 1 - setup
+ok 2 - update-index and ls-files
+ok 3 - cat-file
+ok 4 - diff-files
+ok 5 - write-tree
+ok 6 - checkout-index
+ok 7 - read-tree
+ok 8 - alias expansion
+ok 9 - !alias expansion
+ok 10 - GIT_PREFIX for !alias
+ok 11 - GIT_PREFIX for built-ins
+ok 12 - no file/rev ambiguity check inside .git
+ok 13 - no file/rev ambiguity check inside a bare repo
+ok 14 - detection should not be fooled by a symlink
+# passed all 14 test(s)
+1..14
+*** t1021-rerere-in-workdir.sh ***
+ok 1 - setup
+ok 2 - rerere in workdir
+not ok 3 - rerere in workdir (relative) # TODO known breakage
+# still have 1 known breakage(s)
+# passed all remaining 2 test(s)
+1..3
+*** t1050-large.sh ***
+ok 1 - setup
+ok 2 - add a large file or two
+ok 3 - checkout a large file
+ok 4 - packsize limit
+# passed all 4 test(s)
+1..4
+*** t1100-commit-tree-options.sh ***
+ok 1 - test preparation: write empty tree
+ok 2 - construct commit
+ok 3 - read commit
+ok 4 - compare commit
+# passed all 4 test(s)
+1..4
+*** t1200-tutorial.sh ***
+ok 1 - blob
+ok 2 - blob 557db03
+ok 3 - git diff-files -p
+ok 4 - git diff
+ok 5 - tree
+ok 6 - git diff-index -p HEAD
+ok 7 - git diff HEAD
+ok 8 - git whatchanged -p --root
+ok 9 - git tag my-first-tag
+ok 10 - git checkout -b mybranch
+ok 11 - git branch
+ok 12 - git resolve now fails
+ok 13 - git show-branch
+ok 14 - git resolve
+ok 15 - git resolve output
+ok 16 - git show-branch (part 2)
+ok 17 - git show-branch (part 3)
+ok 18 - rewind to "Some fun." and "Some work."
+ok 19 - git show-branch (part 4)
+ok 20 - manual merge
+ok 21 - git ls-files --stage
+ok 22 - git ls-files --unmerged
+ok 23 - git-merge-index
+ok 24 - git ls-files --stage (part 2)
+ok 25 - git repack
+ok 26 - git prune-packed
+ok 27 - -> only packed objects
+# passed all 27 test(s)
+1..27
+*** t1300-repo-config.sh ***
+ok 1 - clear default config
+ok 2 - initial
+ok 3 - mixed case
+ok 4 - similar section
+ok 5 - uppercase section
+ok 6 - replace with non-match
+ok 7 - replace with non-match (actually matching)
+ok 8 - non-match result
+ok 9 - find mixed-case key by canonical name
+ok 10 - find mixed-case key by non-canonical name
+ok 11 - subsections are not canonicalized by git-config
+ok 12 - unset with cont. lines
+ok 13 - unset with cont. lines is correct
+ok 14 - multiple unset
+ok 15 - multiple unset is correct
+ok 16 - --replace-all missing value
+ok 17 - --replace-all
+ok 18 - all replaced
+ok 19 - really mean test
+ok 20 - really really mean test
+ok 21 - get value
+ok 22 - unset
+ok 23 - multivar
+ok 24 - non-match
+ok 25 - non-match value
+ok 26 - ambiguous get
+ok 27 - get multivar
+ok 28 - multivar replace
+ok 29 - ambiguous value
+ok 30 - ambiguous unset
+ok 31 - invalid unset
+ok 32 - multivar unset
+ok 33 - invalid key
+ok 34 - correct key
+ok 35 - hierarchical section
+ok 36 - hierarchical section value
+ok 37 - working --list
+ok 38 - --list without repo produces empty output
+ok 39 - --get-regexp
+ok 40 - --add
+ok 41 - get variable with no value
+ok 42 - get variable with empty value
+ok 43 - get-regexp variable with no value
+ok 44 - get-regexp --bool variable with no value
+ok 45 - get-regexp variable with empty value
+ok 46 - get bool variable with no value
+ok 47 - get bool variable with empty value
+ok 48 - no arguments, but no crash
+ok 49 - new section is partial match of another
+ok 50 - new variable inserts into proper section
+ok 51 - alternative GIT_CONFIG (non-existing file should fail)
+ok 52 - alternative GIT_CONFIG
+ok 53 - alternative GIT_CONFIG (--file)
+ok 54 - refer config from subdirectory
+ok 55 - --set in alternative GIT_CONFIG
+ok 56 - rename section
+ok 57 - rename succeeded
+ok 58 - rename non-existing section
+ok 59 - rename succeeded
+ok 60 - rename another section
+ok 61 - rename succeeded
+ok 62 - rename a section with a var on the same line
+ok 63 - rename succeeded
+ok 64 - remove section
+ok 65 - section was removed properly
+ok 66 - section ending
+ok 67 - numbers
+ok 68 - invalid unit
+ok 69 - bool
+ok 70 - invalid bool (--get)
+ok 71 - invalid bool (set)
+ok 72 - set --bool
+ok 73 - set --int
+ok 74 - get --bool-or-int
+ok 75 - set --bool-or-int
+ok 76 - set --path
+ok 77 - get --path
+ok 78 - get --path copes with unset $HOME
+ok 79 - quoting
+ok 80 - key with newline
+ok 81 - value with newline
+ok 82 - value continued on next line
+ok 83 - --null --list
+ok 84 - --null --get-regexp
+ok 85 - inner whitespace kept verbatim
+ok 86 - symlinked configuration
+ok 87 - nonexistent configuration
+ok 88 - symlink to nonexistent configuration
+ok 89 - check split_cmdline return
+ok 90 - git -c "key=value" support
+ok 91 - key sanity-checking
+ok 92 - git -c works with aliases of builtins
+ok 93 - git -c does not split values on equals
+ok 94 - git -c dies on bogus config
+ok 95 - git -c complains about empty key
+ok 96 - git -c complains about empty key and value
+# passed all 96 test(s)
+1..96
+*** t1301-shared-repo.sh ***
+ok 1 - shared = 0400 (faulty permission u-w)
+ok 2 - shared=1 does not clear bits preset by umask 002
+ok 3 - shared=1 does not clear bits preset by umask 022
+ok 4 - shared=all
+ok 5 - update-server-info honors core.sharedRepository
+ok 6 - shared = 0660 (r--r-----) ro
+ok 7 - shared = 0660 (rw-rw----) rw
+ok 8 - shared = 0640 (r--r-----) ro
+ok 9 - shared = 0640 (rw-r-----) rw
+ok 10 - shared = 0600 (r--------) ro
+ok 11 - shared = 0600 (rw-------) rw
+ok 12 - shared = 0666 (r--r--r--) ro
+ok 13 - shared = 0666 (rw-rw-rw-) rw
+ok 14 - shared = 0664 (r--r--r--) ro
+ok 15 - shared = 0664 (rw-rw-r--) rw
+ok 16 - git reflog expire honors core.sharedRepository
+ok 17 - forced modes
+# passed all 17 test(s)
+1..17
+*** t1302-repo-version.sh ***
+ok 1 - setup
+ok 2 - gitdir selection on normal repos
+ok 3 - gitdir selection on unsupported repo
+ok 4 - gitdir not required mode
+ok 5 - gitdir required mode
+# passed all 5 test(s)
+1..5
+*** t1303-wacky-config.sh ***
+ok 1 - modify same key
+ok 2 - add key in same section
+ok 3 - add key in different section
+ok 4 - make sure git config escapes section names properly
+ok 5 - do not crash on special long config line
+# passed all 5 test(s)
+1..5
+*** t1304-default-acl.sh ***
+Unable to use setfacl (output: 'File system doesn't support aclent_t style ACL's.
+See acl(5) for more information on ACL styles support by Solaris.'; return code: '2')
+ok 1 # skip Setup test repo (missing SETFACL)
+ok 2 # skip Objects creation does not break ACLs with restrictive umask (missing SETFACL)
+ok 3 # skip git gc does not break ACLs with restrictive umask (missing SETFACL)
+# passed all 3 test(s)
+1..3
+*** t1400-update-ref.sh ***
+ok 1 - setup
+ok 2 - create refs/heads/master
+ok 3 - create refs/heads/master
+ok 4 - fail to delete refs/heads/master with stale ref
+ok 5 - delete refs/heads/master
+ok 6 - delete refs/heads/master without oldvalue verification
+ok 7 - fail to create refs/heads/gu/fixes
+ok 8 - create refs/heads/master (by HEAD)
+ok 9 - create refs/heads/master (by HEAD)
+ok 10 - fail to delete refs/heads/master (by HEAD) with stale ref
+ok 11 - delete refs/heads/master (by HEAD)
+ok 12 - delete symref without dereference
+ok 13 - delete symref without dereference when the referred ref is packed
+ok 14 - (not) create HEAD with old sha1
+ok 15 - (not) prior created .git/refs/heads/master
+ok 16 - create HEAD
+ok 17 - (not) change HEAD with wrong SHA1
+ok 18 - (not) changed .git/refs/heads/master
+ok 19 - create refs/heads/master (logged by touch)
+ok 20 - update refs/heads/master (logged by touch)
+ok 21 - set refs/heads/master (logged by touch)
+ok 22 - verifying refs/heads/master's log
+ok 23 - enable core.logAllRefUpdates
+ok 24 - create refs/heads/master (logged by config)
+ok 25 - update refs/heads/master (logged by config)
+ok 26 - set refs/heads/master (logged by config)
+ok 27 - verifying refs/heads/master's log
+ok 28 - Query "[email protected]{May 25 2005}" (before history)
+ok 29 - Query [email protected]{2005-05-25} (before history)
+ok 30 - Query "[email protected]{May 26 2005 23:31:59}" (1 second before history)
+ok 31 - Query "[email protected]{May 26 2005 23:32:00}" (exactly history start)
+ok 32 - Query "[email protected]{May 26 2005 23:32:30}" (first non-creation change)
+ok 33 - Query "[email protected]{2005-05-26 23:33:01}" (middle of history with gap)
+ok 34 - Query "[email protected]{2005-05-26 23:38:00}" (middle of history)
+ok 35 - Query "[email protected]{2005-05-26 23:43:00}" (exact end of history)
+ok 36 - Query "[email protected]{2005-05-28}" (past end of history)
+ok 37 - creating initial files
+ok 38 - git commit logged updates
+ok 39 - git cat-file blob master:F (expect OTHER)
+ok 40 - git cat-file blob [email protected]{2005-05-26 23:30}:F (expect TEST)
+ok 41 - git cat-file blob [email protected]{2005-05-26 23:42}:F (expect OTHER)
+# passed all 41 test(s)
+1..41
+*** t1401-symbolic-ref.sh ***
+ok 1 - symbolic-ref writes HEAD
+ok 2 - symbolic-ref reads HEAD
+ok 3 - symbolic-ref refuses non-ref for HEAD
+ok 4 - symbolic-ref refuses bare sha1
+# passed all 4 test(s)
+1..4
+*** t1402-check-ref-format.sh ***
+ok 1 - ref name '' is invalid
+ok 2 - ref name '/' is invalid
+ok 3 - ref name '/' is invalid with options --allow-onelevel
+ok 4 - ref name '/' is invalid with options --normalize
+ok 5 - ref name '/' is invalid with options --allow-onelevel --normalize
+ok 6 - ref name 'foo/bar/baz' is valid
+ok 7 - ref name 'foo/bar/baz' is valid with options --normalize
+ok 8 - ref name 'refs///heads/foo' is invalid
+ok 9 - ref name 'refs///heads/foo' is valid with options --normalize
+ok 10 - ref name 'heads/foo/' is invalid
+ok 11 - ref name '/heads/foo' is invalid
+ok 12 - ref name '/heads/foo' is valid with options --normalize
+ok 13 - ref name '///heads/foo' is invalid
+ok 14 - ref name '///heads/foo' is valid with options --normalize
+ok 15 - ref name './foo' is invalid
+ok 16 - ref name './foo/bar' is invalid
+ok 17 - ref name 'foo/./bar' is invalid
+ok 18 - ref name 'foo/bar/.' is invalid
+ok 19 - ref name '.refs/foo' is invalid
+ok 20 - ref name 'heads/foo..bar' is invalid
+ok 21 - ref name 'heads/foo?bar' is invalid
+ok 22 - ref name 'foo./bar' is valid
+ok 23 - ref name 'heads/foo.lock' is invalid
+ok 24 - ref name 'heads///foo.lock' is invalid
+ok 25 - ref name 'foo.lock/bar' is invalid
+ok 26 - ref name 'foo.lock///bar' is invalid
+ok 27 - ref name 'heads/[email protected]' is valid
+ok 28 - ref name 'heads/[email protected]{ation' is invalid
+ok 29 - ref name 'heads/fooar' is invalid
+ok 30 - ref name 'heads/foo	' is invalid
+ok 31 - ref name 'heads/foo' is invalid
+ok 32 - ref name 'heads/fuß' is valid
+ok 33 - ref name 'heads/*foo/bar' is invalid with options --refspec-pattern
+ok 34 - ref name 'heads/foo*/bar' is invalid with options --refspec-pattern
+ok 35 - ref name 'heads/f*o/bar' is invalid with options --refspec-pattern
+ok 36 - ref name 'foo' is invalid
+ok 37 - ref name 'foo' is valid with options --allow-onelevel
+ok 38 - ref name 'foo' is invalid with options --refspec-pattern
+ok 39 - ref name 'foo' is valid with options --refspec-pattern --allow-onelevel
+ok 40 - ref name 'foo' is invalid with options --normalize
+ok 41 - ref name 'foo' is valid with options --allow-onelevel --normalize
+ok 42 - ref name 'foo/bar' is valid
+ok 43 - ref name 'foo/bar' is valid with options --allow-onelevel
+ok 44 - ref name 'foo/bar' is valid with options --refspec-pattern
+ok 45 - ref name 'foo/bar' is valid with options --refspec-pattern --allow-onelevel
+ok 46 - ref name 'foo/bar' is valid with options --normalize
+ok 47 - ref name 'foo/*' is invalid
+ok 48 - ref name 'foo/*' is invalid with options --allow-onelevel
+ok 49 - ref name 'foo/*' is valid with options --refspec-pattern
+ok 50 - ref name 'foo/*' is valid with options --refspec-pattern --allow-onelevel
+ok 51 - ref name '*/foo' is invalid
+ok 52 - ref name '*/foo' is invalid with options --allow-onelevel
+ok 53 - ref name '*/foo' is valid with options --refspec-pattern
+ok 54 - ref name '*/foo' is valid with options --refspec-pattern --allow-onelevel
+ok 55 - ref name '*/foo' is invalid with options --normalize
+ok 56 - ref name '*/foo' is valid with options --refspec-pattern --normalize
+ok 57 - ref name 'foo/*/bar' is invalid
+ok 58 - ref name 'foo/*/bar' is invalid with options --allow-onelevel
+ok 59 - ref name 'foo/*/bar' is valid with options --refspec-pattern
+ok 60 - ref name 'foo/*/bar' is valid with options --refspec-pattern --allow-onelevel
+ok 61 - ref name '*' is invalid
+ok 62 - ref name '*' is invalid with options --allow-onelevel
+ok 63 - ref name '*' is invalid with options --refspec-pattern
+ok 64 - ref name '*' is valid with options --refspec-pattern --allow-onelevel
+ok 65 - ref name 'foo/*/*' is invalid with options --refspec-pattern
+ok 66 - ref name 'foo/*/*' is invalid with options --refspec-pattern --allow-onelevel
+ok 67 - ref name '*/foo/*' is invalid with options --refspec-pattern
+ok 68 - ref name '*/foo/*' is invalid with options --refspec-pattern --allow-onelevel
+ok 69 - ref name '*/*/foo' is invalid with options --refspec-pattern
+ok 70 - ref name '*/*/foo' is invalid with options --refspec-pattern --allow-onelevel
+ok 71 - ref name '/foo' is invalid
+ok 72 - ref name '/foo' is invalid with options --allow-onelevel
+ok 73 - ref name '/foo' is invalid with options --refspec-pattern
+ok 74 - ref name '/foo' is invalid with options --refspec-pattern --allow-onelevel
+ok 75 - ref name '/foo' is invalid with options --normalize
+ok 76 - ref name '/foo' is valid with options --allow-onelevel --normalize
+ok 77 - ref name '/foo' is invalid with options --refspec-pattern --normalize
+ok 78 - ref name '/foo' is valid with options --refspec-pattern --allow-onelevel --normalize
+ok 79 - check-ref-format --branch @{-1}
+ok 80 - check-ref-format --branch from subdir
+ok 81 - ref name 'heads/foo' simplifies to 'heads/foo'
+ok 82 - ref name 'refs///heads/foo' simplifies to 'refs/heads/foo'
+ok 83 - ref name '/heads/foo' simplifies to 'heads/foo'
+ok 84 - ref name '///heads/foo' simplifies to 'heads/foo'
+ok 85 - check-ref-format --normalize rejects 'foo'
+ok 86 - check-ref-format --normalize rejects '/foo'
+ok 87 - check-ref-format --normalize rejects 'heads/foo/../bar'
+ok 88 - check-ref-format --normalize rejects 'heads/./foo'
+ok 89 - check-ref-format --normalize rejects 'headsoo'
+ok 90 - check-ref-format --normalize rejects 'heads/foo.lock'
+ok 91 - check-ref-format --normalize rejects 'heads///foo.lock'
+ok 92 - check-ref-format --normalize rejects 'foo.lock/bar'
+ok 93 - check-ref-format --normalize rejects 'foo.lock///bar'
+# passed all 93 test(s)
+1..93
+*** t1410-reflog.sh ***
+ok 1 - setup
+ok 2 - rewind
+ok 3 - corrupt and check
+ok 4 - reflog expire --dry-run should not touch reflog
+ok 5 - reflog expire
+ok 6 - prune and fsck
+ok 7 - recover and check
+ok 8 - delete
+ok 9 - rewind2
+ok 10 - --expire=never
+ok 11 - gc.reflogexpire=never
+ok 12 - gc.reflogexpire=false
+# passed all 12 test(s)
+1..12
+*** t1411-reflog-show.sh ***
+ok 1 - setup
+ok 2 - log -g shows reflog headers
+ok 3 - oneline reflog format
+ok 4 - reflog default format
+ok 5 - override reflog default format
+ok 6 - using @{now} syntax shows reflog date (multiline)
+ok 7 - using @{now} syntax shows reflog date (oneline)
+ok 8 - using --date= shows reflog date (multiline)
+ok 9 - using --date= shows reflog date (oneline)
+ok 10 - empty reflog file
+# passed all 10 test(s)
+1..10
+*** t1412-reflog-loop.sh ***
+ok 1 - setup commits
+ok 2 - setup reflog with alternating commits
+ok 3 - reflog shows all entries
+# passed all 3 test(s)
+1..3
+*** t1420-lost-found.sh ***
+ok 1 - setup
+ok 2 - lost and found something
+# passed all 2 test(s)
+1..2
+*** t1450-fsck.sh ***
+ok 1 - setup
+ok 2 - loose objects borrowed from alternate are not missing
+ok 3 - HEAD is part of refs, valid objects appear valid
+ok 4 - setup: helpers for corruption tests
+ok 5 - object with bad sha1
+ok 6 - branch pointing to non-commit
+ok 7 - email without @ is okay
+ok 8 - email with embedded > is not okay
+ok 9 - missing < email delimiter is reported nicely
+ok 10 - missing email is reported nicely
+ok 11 - > in name is reported
+ok 12 - tag pointing to nonexistent
+ok 13 - tag pointing to something else than its type
+ok 14 - cleaned up
+ok 15 - rev-list --verify-objects
+ok 16 - rev-list --verify-objects with bad sha1
+# passed all 16 test(s)
+1..16
+*** t1500-rev-parse.sh ***
+ok 1 - toplevel: is-bare-repository
+ok 2 - toplevel: is-inside-git-dir
+ok 3 - toplevel: is-inside-work-tree
+ok 4 - toplevel: prefix
+ok 5 - toplevel: git-dir
+ok 6 - .git/: is-bare-repository
+ok 7 - .git/: is-inside-git-dir
+ok 8 - .git/: is-inside-work-tree
+ok 9 - .git/: prefix
+ok 10 - .git/: git-dir
+ok 11 - .git/objects/: is-bare-repository
+ok 12 - .git/objects/: is-inside-git-dir
+ok 13 - .git/objects/: is-inside-work-tree
+ok 14 - .git/objects/: prefix
+ok 15 - .git/objects/: git-dir
+ok 16 - subdirectory: is-bare-repository
+ok 17 - subdirectory: is-inside-git-dir
+ok 18 - subdirectory: is-inside-work-tree
+ok 19 - subdirectory: prefix
+ok 20 - subdirectory: git-dir
+ok 21 - core.bare = true: is-bare-repository
+ok 22 - core.bare = true: is-inside-git-dir
+ok 23 - core.bare = true: is-inside-work-tree
+ok 24 - core.bare undefined: is-bare-repository
+ok 25 - core.bare undefined: is-inside-git-dir
+ok 26 - core.bare undefined: is-inside-work-tree
+ok 27 - GIT_DIR=../.git, core.bare = false: is-bare-repository
+ok 28 - GIT_DIR=../.git, core.bare = false: is-inside-git-dir
+ok 29 - GIT_DIR=../.git, core.bare = false: is-inside-work-tree
+ok 30 - GIT_DIR=../.git, core.bare = false: prefix
+ok 31 - GIT_DIR=../.git, core.bare = true: is-bare-repository
+ok 32 - GIT_DIR=../.git, core.bare = true: is-inside-git-dir
+ok 33 - GIT_DIR=../.git, core.bare = true: is-inside-work-tree
+ok 34 - GIT_DIR=../.git, core.bare = true: prefix
+ok 35 - GIT_DIR=../.git, core.bare undefined: is-bare-repository
+ok 36 - GIT_DIR=../.git, core.bare undefined: is-inside-git-dir
+ok 37 - GIT_DIR=../.git, core.bare undefined: is-inside-work-tree
+ok 38 - GIT_DIR=../.git, core.bare undefined: prefix
+ok 39 - GIT_DIR=../repo.git, core.bare = false: is-bare-repository
+ok 40 - GIT_DIR=../repo.git, core.bare = false: is-inside-git-dir
+ok 41 - GIT_DIR=../repo.git, core.bare = false: is-inside-work-tree
+ok 42 - GIT_DIR=../repo.git, core.bare = false: prefix
+ok 43 - GIT_DIR=../repo.git, core.bare = true: is-bare-repository
+ok 44 - GIT_DIR=../repo.git, core.bare = true: is-inside-git-dir
+ok 45 - GIT_DIR=../repo.git, core.bare = true: is-inside-work-tree
+ok 46 - GIT_DIR=../repo.git, core.bare = true: prefix
+ok 47 - GIT_DIR=../repo.git, core.bare undefined: is-bare-repository
+ok 48 - GIT_DIR=../repo.git, core.bare undefined: is-inside-git-dir
+ok 49 - GIT_DIR=../repo.git, core.bare undefined: is-inside-work-tree
+ok 50 - GIT_DIR=../repo.git, core.bare undefined: prefix
+# passed all 50 test(s)
+1..50
+*** t1501-worktree.sh ***
+ok 1 - setup
+ok 2 - setup: helper for testing rev-parse
+ok 3 - setup: core.worktree = relative path
+ok 4 - outside
+ok 5 - inside work tree
+not ok 6 - empty prefix is actually written out # TODO known breakage
+ok 7 - subdir of work tree
+ok 8 - setup: core.worktree = absolute path
+ok 9 - outside
+ok 10 - inside work tree
+ok 11 - subdir of work tree
+ok 12 - setup: GIT_WORK_TREE=relative (override core.worktree)
+ok 13 - outside
+ok 14 - inside work tree
+ok 15 - subdir of work tree
+ok 16 - setup: GIT_WORK_TREE=absolute, below git dir
+ok 17 - outside
+ok 18 - in repo.git
+ok 19 - inside work tree
+ok 20 - subdir of work tree
+ok 21 - find work tree from repo
+ok 22 - find work tree from work tree
+ok 23 - _gently() groks relative GIT_DIR & GIT_WORK_TREE
+ok 24 - diff-index respects work tree under .git dir
+ok 25 - diff-files respects work tree under .git dir
+ok 26 - git diff respects work tree under .git dir
+ok 27 - git grep
+ok 28 - git commit
+ok 29 - absolute pathspec should fail gracefully
+ok 30 - make_relative_path handles double slashes in GIT_DIR
+ok 31 - relative $GIT_WORK_TREE and git subprocesses
+# still have 1 known breakage(s)
+# passed all remaining 30 test(s)
+1..31
+*** t1502-rev-parse-parseopt.sh ***
+ok 1 - test --parseopt help output
+ok 2 - test --parseopt
+ok 3 - test --parseopt with mixed options and arguments
+ok 4 - test --parseopt with --
+ok 5 - test --parseopt --stop-at-non-option
+ok 6 - test --parseopt --keep-dashdash
+ok 7 - test --parseopt --keep-dashdash --stop-at-non-option with --
+ok 8 - test --parseopt --keep-dashdash --stop-at-non-option without --
+# passed all 8 test(s)
+1..8
+*** t1503-rev-parse-verify.sh ***
+ok 1 - set up basic repo with 1 file (hello) and 4 commits
+ok 2 - works with one good rev
+ok 3 - fails with any bad rev or many good revs
+ok 4 - fails silently when using -q
+ok 5 - no stdout output on error
+ok 6 - use --default
+ok 7 - [email protected]{n} for various n
+# passed all 7 test(s)
+1..7
+*** t1504-ceiling-dirs.sh ***
+ok 1 - no_ceil
+ok 2 - ceil_empty
+ok 3 - ceil_at_parent
+ok 4 - ceil_at_parent_slash
+ok 5 - ceil_at_trash
+ok 6 - ceil_at_trash_slash
+ok 7 - ceil_at_sub
+ok 8 - ceil_at_sub_slash
+ok 9 - subdir_no_ceil
+ok 10 - subdir_ceil_empty
+ok 11 - subdir_ceil_at_trash: prefix
+ok 12 - subdir_ceil_at_trash_slash: prefix
+ok 13 - subdir_ceil_at_sub: prefix
+ok 14 - subdir_ceil_at_sub_slash: prefix
+ok 15 - subdir_ceil_at_subdir
+ok 16 - subdir_ceil_at_subdir_slash
+ok 17 - subdir_ceil_at_su
+ok 18 - subdir_ceil_at_su_slash
+ok 19 - subdir_ceil_at_sub_di
+ok 20 - subdir_ceil_at_sub_di_slash
+ok 21 - subdir_ceil_at_subdi
+ok 22 - subdir_ceil_at_subdi_slash
+ok 23 - second_of_two: prefix
+ok 24 - first_of_two: prefix
+ok 25 - second_of_three: prefix
+ok 26 - git_dir_specified
+ok 27 - sd_no_ceil
+ok 28 - sd_ceil_empty
+ok 29 - sd_ceil_at_trash: prefix
+ok 30 - sd_ceil_at_trash_slash: prefix
+ok 31 - sd_ceil_at_s: prefix
+ok 32 - sd_ceil_at_s_slash: prefix
+ok 33 - sd_ceil_at_sd
+ok 34 - sd_ceil_at_sd_slash
+ok 35 - sd_ceil_at_su
+ok 36 - sd_ceil_at_su_slash
+ok 37 - sd_ceil_at_s_di
+ok 38 - sd_ceil_at_s_di_slash
+ok 39 - sd_ceil_at_sdi
+ok 40 - sd_ceil_at_sdi_slash
+# passed all 40 test(s)
+1..40
+*** t1505-rev-parse-last.sh ***
+ok 1 - setup
+ok 2 - @{-1} works
+ok 3 - @{-1}~2 works
+ok 4 - @{-1}^2 works
+ok 5 - @{-1}@{1} works
+ok 6 - @{-2} works
+ok 7 - @{-3} fails
+# passed all 7 test(s)
+1..7
+*** t1506-rev-parse-diagnosis.sh ***
+ok 1 - set up basic repo
+ok 2 - correct file objects
+ok 3 - correct relative file objects (0)
+ok 4 - correct relative file objects (1)
+ok 5 - correct relative file objects (2)
+ok 6 - correct relative file objects (3)
+ok 7 - correct relative file objects (4)
+ok 8 - correct relative file objects (5)
+ok 9 - correct relative file objects (6)
+ok 10 - incorrect revision id
+ok 11 - incorrect file in sha1:path
+ok 12 - incorrect file in :path and :N:path
+ok 13 - invalid @{n} reference
+ok 14 - relative path not found
+ok 15 - relative path outside worktree
+ok 16 - relative path when cwd is outside worktree
+ok 17 - relative path when startup_info is NULL
+# passed all 17 test(s)
+1..17
+*** t1507-rev-parse-upstream.sh ***
+ok 1 - setup
+ok 2 - @{upstream} resolves to correct full name
+ok 3 - @{u} resolves to correct full name
+ok 4 - [email protected]{upstream} resolves to correct full name
+ok 5 - [email protected]{u} resolves to correct commit
+ok 6 - [email protected]{u} fails
+ok 7 - <branch>@{u}@{1} resolves correctly
+ok 8 - @{u} without specifying branch fails on a detached HEAD
+ok 9 - checkout -b new [email protected]{u} forks from the same
+ok 10 - merge [email protected]{u} records the correct name
+ok 11 - branch -d [email protected]{u}
+ok 12 - checkout [email protected]{u}
+ok 13 - log -g [email protected]{u}
+ok 14 - log -g [email protected]{u}@{now}
+# passed all 14 test(s)
+1..14
+*** t1508-at-combinations.sh ***
+ok 1 - setup
+ok 2 - HEAD = new-two
+ok 3 - @{1} = new-one
+ok 4 - @{-1} = old-two
+ok 5 - @{-1}@{1} = old-one
+ok 6 - @{u} = upstream-two
+ok 7 - @{u}@{1} = upstream-one
+ok 8 - @{-1}@{u} = master-two
+ok 9 - @{-1}@{u}@{1} = master-one
+ok 10 - @{u}@{-1} is nonsensical
+ok 11 - @{1}@{u} is nonsensical
+# passed all 11 test(s)
+1..11
+*** t1509-root-worktree.sh ***
+# passed all 0 test(s)
+1..0 # SKIP Dangerous test skipped. Read this test if you want to execute it
+*** t1510-repo-setup.sh ***
+ok 1 - #0: nonbare repo, no explicit configuration
+ok 2 - #1: GIT_WORK_TREE without explicit GIT_DIR is accepted
+ok 3 - #2: worktree defaults to cwd with explicit GIT_DIR
+ok 4 - #2b: relative GIT_DIR
+ok 5 - #3: setup
+ok 6 - #3: explicit GIT_WORK_TREE and GIT_DIR at toplevel
+ok 7 - #3: explicit GIT_WORK_TREE and GIT_DIR in subdir
+ok 8 - #3: explicit GIT_WORK_TREE from parent of worktree
+ok 9 - #3: explicit GIT_WORK_TREE from nephew of worktree
+ok 10 - #3: chdir_to_toplevel uses worktree, not git dir
+ok 11 - #3: chdir_to_toplevel uses worktree (from subdir)
+ok 12 - #4: core.worktree without GIT_DIR set is accepted
+ok 13 - #5: core.worktree + GIT_WORK_TREE is accepted
+ok 14 - #6: setting GIT_DIR brings core.worktree to life
+ok 15 - #6b: GIT_DIR set, core.worktree relative
+ok 16 - #6c: GIT_DIR set, core.worktree=../wt (absolute)
+ok 17 - #6d: GIT_DIR set, core.worktree=../wt (relative)
+ok 18 - #6e: GIT_DIR set, core.worktree=../.. (absolute)
+ok 19 - #6f: GIT_DIR set, core.worktree=../.. (relative)
+ok 20 - #7: setup
+ok 21 - #7: explicit GIT_WORK_TREE and GIT_DIR at toplevel
+ok 22 - #7: explicit GIT_WORK_TREE and GIT_DIR in subdir
+ok 23 - #7: explicit GIT_WORK_TREE from parent of worktree
+ok 24 - #7: explicit GIT_WORK_TREE from nephew of worktree
+ok 25 - #7: chdir_to_toplevel uses worktree, not git dir
+ok 26 - #7: chdir_to_toplevel uses worktree (from subdir)
+ok 27 - #8: gitfile, easy case
+ok 28 - #9: GIT_WORK_TREE accepted with gitfile
+ok 29 - #10: GIT_DIR can point to gitfile
+ok 30 - #10b: relative GIT_DIR can point to gitfile
+ok 31 - #11: setup
+ok 32 - #11: explicit GIT_WORK_TREE and GIT_DIR at toplevel
+ok 33 - #11: explicit GIT_WORK_TREE and GIT_DIR in subdir
+ok 34 - #11: explicit GIT_WORK_TREE from parent of worktree
+ok 35 - #11: explicit GIT_WORK_TREE from nephew of worktree
+ok 36 - #11: chdir_to_toplevel uses worktree, not git dir
+ok 37 - #11: chdir_to_toplevel uses worktree (from subdir)
+ok 38 - #12: core.worktree with gitfile is accepted
+ok 39 - #13: core.worktree+GIT_WORK_TREE accepted (with gitfile)
+ok 40 - #14: core.worktree with GIT_DIR pointing to gitfile
+ok 41 - #14b: core.worktree is relative to actual git dir
+ok 42 - #15: setup
+ok 43 - #15: explicit GIT_WORK_TREE and GIT_DIR at toplevel
+ok 44 - #15: explicit GIT_WORK_TREE and GIT_DIR in subdir
+ok 45 - #15: explicit GIT_WORK_TREE from parent of worktree
+ok 46 - #15: explicit GIT_WORK_TREE from nephew of worktree
+ok 47 - #15: chdir_to_toplevel uses worktree, not git dir
+ok 48 - #15: chdir_to_toplevel uses worktree (from subdir)
+ok 49 - #16a: implicitly bare repo (cwd inside .git dir)
+ok 50 - #16b: bare .git (cwd inside .git dir)
+ok 51 - #16c: bare .git has no worktree
+ok 52 - #17: GIT_WORK_TREE without explicit GIT_DIR is accepted (bare case)
+ok 53 - #18: bare .git named by GIT_DIR has no worktree
+ok 54 - #19: setup
+ok 55 - #19: explicit GIT_WORK_TREE and GIT_DIR at toplevel
+ok 56 - #19: explicit GIT_WORK_TREE and GIT_DIR in subdir
+ok 57 - #19: explicit GIT_WORK_TREE from parent of worktree
+ok 58 - #19: explicit GIT_WORK_TREE from nephew of worktree
+ok 59 - #19: chdir_to_toplevel uses worktree, not git dir
+ok 60 - #19: chdir_to_toplevel uses worktree (from subdir)
+ok 61 - #20a: core.worktree without GIT_DIR accepted (inside .git)
+ok 62 - #20b/c: core.worktree and core.bare conflict
+ok 63 - #21: setup, core.worktree warns before overriding core.bare
+ok 64 - #21: explicit GIT_WORK_TREE and GIT_DIR at toplevel
+ok 65 - #21: explicit GIT_WORK_TREE and GIT_DIR in subdir
+ok 66 - #21: explicit GIT_WORK_TREE from parent of worktree
+ok 67 - #21: explicit GIT_WORK_TREE from nephew of worktree
+ok 68 - #21: chdir_to_toplevel uses worktree, not git dir
+ok 69 - #21: chdir_to_toplevel uses worktree (from subdir)
+ok 70 - #22a: core.worktree = GIT_DIR = .git dir
+ok 71 - #22b: core.worktree child of .git, GIT_DIR=.git
+ok 72 - #22c: core.worktree = .git/.., GIT_DIR=.git
+ok 73 - #22.2: core.worktree and core.bare conflict
+ok 74 - #23: setup
+ok 75 - #23: explicit GIT_WORK_TREE and GIT_DIR at toplevel
+ok 76 - #23: explicit GIT_WORK_TREE and GIT_DIR in subdir
+ok 77 - #23: explicit GIT_WORK_TREE from parent of worktree
+ok 78 - #23: explicit GIT_WORK_TREE from nephew of worktree
+ok 79 - #23: chdir_to_toplevel uses worktree, not git dir
+ok 80 - #23: chdir_to_toplevel uses worktree (from subdir)
+ok 81 - #24: bare repo has no worktree (gitfile case)
+ok 82 - #25: GIT_WORK_TREE accepted if GIT_DIR unset (bare gitfile case)
+ok 83 - #26: bare repo has no worktree (GIT_DIR -> gitfile case)
+ok 84 - #27: setup
+ok 85 - #27: explicit GIT_WORK_TREE and GIT_DIR at toplevel
+ok 86 - #27: explicit GIT_WORK_TREE and GIT_DIR in subdir
+ok 87 - #27: explicit GIT_WORK_TREE from parent of worktree
+ok 88 - #27: explicit GIT_WORK_TREE from nephew of worktree
+ok 89 - #27: chdir_to_toplevel uses worktree, not git dir
+ok 90 - #27: chdir_to_toplevel uses worktree (from subdir)
+ok 91 - #28: core.worktree and core.bare conflict (gitfile case)
+ok 92 - #29: setup
+ok 93 - #29: explicit GIT_WORK_TREE and GIT_DIR at toplevel
+ok 94 - #29: explicit GIT_WORK_TREE and GIT_DIR in subdir
+ok 95 - #29: explicit GIT_WORK_TREE from parent of worktree
+ok 96 - #29: explicit GIT_WORK_TREE from nephew of worktree
+ok 97 - #29: chdir_to_toplevel uses worktree, not git dir
+ok 98 - #29: chdir_to_toplevel uses worktree (from subdir)
+ok 99 - #30: core.worktree and core.bare conflict (gitfile version)
+ok 100 - #31: setup
+ok 101 - #31: explicit GIT_WORK_TREE and GIT_DIR at toplevel
+ok 102 - #31: explicit GIT_WORK_TREE and GIT_DIR in subdir
+ok 103 - #31: explicit GIT_WORK_TREE from parent of worktree
+ok 104 - #31: explicit GIT_WORK_TREE from nephew of worktree
+ok 105 - #31: chdir_to_toplevel uses worktree, not git dir
+ok 106 - #31: chdir_to_toplevel uses worktree (from subdir)
+# passed all 106 test(s)
+1..106
+*** t1511-rev-parse-caret.sh ***
+ok 1 - setup
+ok 2 - ref^{non-existent}
+ok 3 - ref^{}
+ok 4 - ref^{commit}
+ok 5 - ref^{tree}
+ok 6 - ref^{/.}
+ok 7 - ref^{/non-existent}
+ok 8 - ref^{/Initial}
+# passed all 8 test(s)
+1..8
+*** t2000-checkout-cache-clash.sh ***
+ok 1 - git update-index --add various paths.
+ok 2 - git checkout-index without -f should fail on conflicting work tree.
+ok 3 - git checkout-index with -f should succeed.
+ok 4 - git checkout-index conflicting paths.
+ok 5 - checkout-index -f twice with --prefix
+# passed all 5 test(s)
+1..5
+*** t2001-checkout-cache-clash.sh ***
+ok 1 - git update-index --add path0/file0
+ok 2 - writing tree out with git write-tree
+ok 3 - git update-index --add path1/file1
+ok 4 - writing tree out with git write-tree
+ok 5 - read previously written tree and checkout.
+ok 6 - git update-index --add a symlink.
+ok 7 - writing tree out with git write-tree
+ok 8 - read previously written tree and checkout.
+ok 9 - checking out conflicting path with -f
+# passed all 9 test(s)
+1..9
+*** t2002-checkout-cache-u.sh ***
+ok 1 - preparation
+ok 2 - without -u, git checkout-index smudges stat information.
+ok 3 - with -u, git checkout-index picks up stat information from new files.
+# passed all 3 test(s)
+1..3
+*** t2003-checkout-cache-mkdir.sh ***
+ok 1 - setup
+ok 2 - have symlink in place where dir is expected.
+ok 3 - use --prefix=path2/
+ok 4 - use --prefix=tmp-
+ok 5 - use --prefix=tmp- but with a conflicting file and dir
+ok 6 - use --prefix=tmp/orary/ where tmp is a symlink
+ok 7 - use --prefix=tmp/orary- where tmp is a symlink
+ok 8 - use --prefix=tmp- where tmp-path1 is a symlink
+# passed all 8 test(s)
+1..8
+*** t2004-checkout-cache-temp.sh ***
+ok 1 - preparation
+ok 2 - checkout one stage 0 to temporary file
+ok 3 - checkout all stage 0 to temporary files
+ok 4 - prepare 3-way merge
+ok 5 - checkout one stage 2 to temporary file
+ok 6 - checkout all stage 2 to temporary files
+ok 7 - checkout all stages/one file to nothing
+ok 8 - checkout all stages/one file to temporary files
+ok 9 - checkout some stages/one file to temporary files
+ok 10 - checkout all stages/all files to temporary files
+ok 11 - -- path0: no entry
+ok 12 - -- path1: all 3 stages
+ok 13 - -- path2: no stage 1, have stage 2 and 3
+ok 14 - -- path3: no stage 2, have stage 1 and 3
+ok 15 - -- path4: no stage 3, have stage 1 and 3
+ok 16 - -- asubdir/path5: no stage 2 and 3 have stage 1
+ok 17 - checkout --temp within subdir
+ok 18 - checkout --temp symlink
+# passed all 18 test(s)
+1..18
+*** t2005-checkout-index-symlinks.sh ***
+ok 1 - preparation
+ok 2 - the checked-out symlink must be a file
+ok 3 - the file must be the blob we added during the setup
+# passed all 3 test(s)
+1..3
+*** t2006-checkout-index-basic.sh ***
+ok 1 - checkout-index --gobbledegook
+ok 2 - checkout-index -h in broken repository
+# passed all 2 test(s)
+1..2
+*** t2007-checkout-symlink.sh ***
+ok 1 - setup
+ok 2 - switch from symlink to dir
+ok 3 - Remove temporary directories & switch to master
+ok 4 - switch from dir to symlink
+# passed all 4 test(s)
+1..4
+*** t2008-checkout-subdir.sh ***
+ok 1 - setup
+ok 2 - remove and restore with relative path
+ok 3 - checkout with empty prefix
+ok 4 - checkout with simple prefix
+ok 5 - relative path outside tree should fail
+ok 6 - incorrect relative path to file should fail (1)
+ok 7 - incorrect relative path should fail (2)
+ok 8 - incorrect relative path should fail (3)
+# passed all 8 test(s)
+1..8
+*** t2009-checkout-statinfo.sh ***
+ok 1 - setup
+ok 2 - branch switching
+ok 3 - path checkout
+# passed all 3 test(s)
+1..3
+*** t2010-checkout-ambiguous.sh ***
+ok 1 - setup
+ok 2 - reference must be a tree
+ok 3 - branch switching
+ok 4 - checkout world from the index
+ok 5 - non ambiguous call
+ok 6 - allow the most common case
+ok 7 - check ambiguity
+ok 8 - disambiguate checking out from a tree-ish
+# passed all 8 test(s)
+1..8
+*** t2011-checkout-invalid-head.sh ***
+ok 1 - setup
+ok 2 - checkout should not start branch from a tree
+ok 3 - checkout master from invalid HEAD
+# passed all 3 test(s)
+1..3
+*** t2012-checkout-last.sh ***
+ok 1 - setup
+ok 2 - "checkout -" does not work initially
+ok 3 - first branch switch
+ok 4 - "checkout -" switches back
+ok 5 - "checkout -" switches forth
+ok 6 - detach HEAD
+ok 7 - "checkout -" attaches again
+ok 8 - "checkout -" detaches again
+ok 9 - more switches
+ok 10 - switch to the last
+ok 11 - switch to second from the last
+ok 12 - switch to third from the last
+ok 13 - switch to fourth from the last
+ok 14 - switch to twelfth from the last
+ok 15 - merge base test setup
+ok 16 - another...master
+ok 17 - ...master
+ok 18 - master...
+# passed all 18 test(s)
+1..18
+*** t2013-checkout-submodule.sh ***
+ok 1 - setup
+ok 2 - "reset <submodule>" updates the index
+ok 3 - "checkout <submodule>" updates the index only
+ok 4 - "checkout <submodule>" honors diff.ignoreSubmodules
+ok 5 - "checkout <submodule>" honors submodule.*.ignore from .gitmodules
+ok 6 - "checkout <submodule>" honors submodule.*.ignore from .git/config
+# passed all 6 test(s)
+1..6
+*** t2014-switch.sh ***
+ok 1 - setup
+ok 2 - check all changes are staged
+ok 3 - second commit
+ok 4 - check
+# passed all 4 test(s)
+1..4
+*** t2015-checkout-unborn.sh ***
+ok 1 - setup
+ok 2 - checkout from unborn preserves untracked files
+ok 3 - checkout from unborn preserves index contents
+ok 4 - checkout from unborn merges identical index contents
+ok 5 - checking out another branch from unborn state
+# passed all 5 test(s)
+1..5
+*** t2016-checkout-patch.sh ***
+ok 1 - setup
+ok 2 - saying "n" does nothing
+ok 3 - git checkout -p
+ok 4 - git checkout -p with staged changes
+ok 5 - git checkout -p HEAD with NO staged changes: abort
+ok 6 - git checkout -p HEAD with NO staged changes: apply
+ok 7 - git checkout -p HEAD with change already staged
+ok 8 - git checkout -p HEAD^
+ok 9 - git checkout -p handles deletion
+ok 10 - path limiting works: dir
+ok 11 - path limiting works: -- dir
+ok 12 - path limiting works: HEAD^ -- dir
+ok 13 - path limiting works: foo inside dir
+ok 14 - none of this moved HEAD
+# passed all 14 test(s)
+1..14
+*** t2017-checkout-orphan.sh ***
+ok 1 - Setup
+ok 2 - --orphan creates a new orphan branch from HEAD
+ok 3 - --orphan creates a new orphan branch from <start_point>
+ok 4 - --orphan must be rejected with -b
+ok 5 - --orphan must be rejected with -t
+ok 6 - --orphan ignores branch.autosetupmerge
+ok 7 - --orphan makes reflog by default
+ok 8 - --orphan does not make reflog when core.logAllRefUpdates = false
+ok 9 - --orphan with -l makes reflog when core.logAllRefUpdates = false
+ok 10 - giving up --orphan not committed when -l and core.logAllRefUpdates = false deletes reflog
+ok 11 - --orphan is rejected with an existing name
+ok 12 - --orphan refuses to switch if a merge is needed
+# passed all 12 test(s)
+1..12
+*** t2018-checkout-branch.sh ***
+ok 1 - setup
+ok 2 - checkout -b to a new branch, set to HEAD
+ok 3 - checkout -b to a new branch, set to an explicit ref
+ok 4 - checkout -b to a new branch with unmergeable changes fails
+ok 5 - checkout -f -b to a new branch with unmergeable changes discards changes
+ok 6 - checkout -b to a new branch preserves mergeable changes
+ok 7 - checkout -f -b to a new branch with mergeable changes discards changes
+ok 8 - checkout -b to an existing branch fails
+ok 9 - checkout -b to @{-1} fails with the right branch name
+ok 10 - checkout -B to an existing branch resets branch to HEAD
+ok 11 - checkout -B to an existing branch from detached HEAD resets branch to HEAD
+ok 12 - checkout -B to an existing branch with an explicit ref resets branch to that ref
+ok 13 - checkout -B to an existing branch with unmergeable changes fails
+ok 14 - checkout -f -B to an existing branch with unmergeable changes discards changes
+ok 15 - checkout -B to an existing branch preserves mergeable changes
+ok 16 - checkout -f -B to an existing branch with mergeable changes discards changes
+ok 17 - checkout -b <describe>
+ok 18 - checkout -B to the current branch works
+# passed all 18 test(s)
+1..18
+*** t2019-checkout-ambiguous-ref.sh ***
+ok 1 - setup ambiguous refs
+ok 2 - checkout ambiguous ref succeeds
+ok 3 - checkout produces ambiguity warning
+ok 4 - checkout chooses branch over tag
+ok 5 - checkout reports switch to branch
+ok 6 - checkout vague ref succeeds
+ok 7 - checkout produces ambiguity warning
+ok 8 - checkout chooses branch over tag
+ok 9 - checkout reports switch to branch
+# passed all 9 test(s)
+1..9
+*** t2020-checkout-detach.sh ***
+ok 1 - setup
+ok 2 - checkout branch does not detach
+ok 3 - checkout tag detaches
+ok 4 - checkout branch by full name detaches
+ok 5 - checkout non-ref detaches
+ok 6 - checkout ref^0 detaches
+ok 7 - checkout --detach detaches
+ok 8 - checkout --detach without branch name
+ok 9 - checkout --detach errors out for non-commit
+ok 10 - checkout --detach errors out for extra argument
+ok 11 - checkout --detached and -b are incompatible
+ok 12 - checkout --detach moves HEAD
+ok 13 - checkout warns on orphan commits
+ok 14 - checkout warns on orphan commits: output
+ok 15 - checkout does not warn leaving ref tip
+ok 16 - checkout does not warn leaving ref tip
+ok 17 - checkout does not warn leaving reachable commit
+ok 18 - checkout does not warn leaving reachable commit
+ok 19 - tracking count is accurate after orphan check
+# passed all 19 test(s)
+1..19
+*** t2021-checkout-overwrite.sh ***
+ok 1 - setup
+ok 2 - create a commit where dir a/b changed to file
+ok 3 - checkout commit with dir must not remove untracked a/b
+ok 4 - create a commit where dir a/b changed to symlink
+ok 5 - checkout commit with dir must not remove untracked a/b
+# passed all 5 test(s)
+1..5
+*** t2022-checkout-paths.sh ***
+ok 1 - setup
+ok 2 - checking out paths out of a tree does not clobber unrelated paths
+# passed all 2 test(s)
+1..2
+*** t2023-checkout-m.sh ***
+ok 1 - setup
+ok 2 - git merge master
+ok 3 - -m restores 2-way conflicted+resolved file
+ok 4 - -m restores 3-way conflicted+resolved file
+# passed all 4 test(s)
+1..4
+*** t2030-unresolve-info.sh ***
+ok 1 - setup
+ok 2 - add records switch clears
+ok 3 - rm records reset clears
+ok 4 - plumbing clears
+ok 5 - add records checkout -m undoes
+ok 6 - unmerge with plumbing
+ok 7 - rerere and rerere forget
+ok 8 - rerere and rerere forget (subdirectory)
+# passed all 8 test(s)
+1..8
+*** t2050-git-dir-relative.sh ***
+ok 1 - Setting up post-commit hook
+ok 2 - post-commit hook used ordinarily
+ok 3 - post-commit-hook created and used from top dir
+ok 4 - post-commit-hook from sub dir
+# passed all 4 test(s)
+1..4
+*** t2100-update-cache-badpath.sh ***
+ok 1 - git update-index --add to add various paths.
+ok 2 - git update-index to add conflicting path path0/file0 should fail.
+ok 3 - git update-index to add conflicting path path1/file1 should fail.
+ok 4 - git update-index to add conflicting path path2 should fail.
+ok 5 - git update-index to add conflicting path path3 should fail.
+# passed all 5 test(s)
+1..5
+*** t2101-update-index-reupdate.sh ***
+ok 1 - update-index --add
+ok 2 - update-index --again
+ok 3 - update-index --remove --again
+ok 4 - first commit
+ok 5 - update-index again
+ok 6 - update-index --update from subdir
+ok 7 - update-index --update with pathspec
+# passed all 7 test(s)
+1..7
+*** t2102-update-index-symlinks.sh ***
+ok 1 - preparation
+ok 2 - modify the symbolic link
+ok 3 - the index entry must still be a symbolic link
+# passed all 3 test(s)
+1..3
+*** t2103-update-index-ignore-missing.sh ***
+ok 1 - basics
+ok 2 - --ignore-missing --refresh
+ok 3 - --unmerged --refresh
+ok 4 - --ignore-submodules --refresh (1)
+ok 5 - --ignore-submodules --refresh (2)
+# passed all 5 test(s)
+1..5
+*** t2104-update-index-skip-worktree.sh ***
+ok 1 - setup
+ok 2 - index is at version 2
+ok 3 - update-index --skip-worktree
+ok 4 - index is at version 3 after having some skip-worktree entries
+ok 5 - ls-files -t
+ok 6 - update-index --no-skip-worktree
+ok 7 - index version is back to 2 when there is no skip-worktree entry
+# passed all 7 test(s)
+1..7
+*** t2105-update-index-gitfile.sh ***
+ok 1 - submodule with absolute .git file
+ok 2 - add gitlink to absolute .git file
+ok 3 - submodule with relative .git file
+ok 4 - add gitlink to relative .git file
+# passed all 4 test(s)
+1..4
+*** t2106-update-index-assume-unchanged.sh ***
+ok 1 - setup
+ok 2 - do not switch branches with dirty file
+# passed all 2 test(s)
+1..2
+*** t2107-update-index-basic.sh ***
+ok 1 - update-index --nonsense fails
+ok 2 - update-index --nonsense dumps usage
+ok 3 - update-index -h with corrupt index
+# passed all 3 test(s)
+1..3
+*** t2200-add-update.sh ***
+ok 1 - setup
+ok 2 - update
+ok 3 - update noticed a removal
+ok 4 - update touched correct path
+ok 5 - update did not touch other tracked files
+ok 6 - update did not touch untracked files
+ok 7 - cache tree has not been corrupted
+ok 8 - update from a subdirectory
+ok 9 - change gets noticed
+ok 10 - replace a file with a symlink
+ok 11 - add everything changed
+ok 12 - touch and then add -u
+ok 13 - touch and then add explicitly
+ok 14 - add -n -u should not add but just report
+ok 15 - add -u resolves unmerged paths
+ok 16 - "add -u non-existent" should fail
+# passed all 16 test(s)
+1..16
+*** t2201-add-update-typechange.sh ***
+ok 1 - setup
+ok 2 - modify
+ok 3 - diff-files
+ok 4 - diff-index
+ok 5 - add -u
+ok 6 - commit -a
+# passed all 6 test(s)
+1..6
+*** t2202-add-addremove.sh ***
+ok 1 - setup
+ok 2 - git add --all
+# passed all 2 test(s)
+1..2
+*** t2203-add-intent.sh ***
+ok 1 - intent to add
+ok 2 - check result of "add -N"
+ok 3 - intent to add is just an ordinary empty blob
+ok 4 - intent to add does not clobber existing paths
+ok 5 - i-t-a entry is simply ignored
+ok 6 - can commit with an unrelated i-t-a entry in index
+ok 7 - can "commit -a" with an i-t-a entry
+# passed all 7 test(s)
+1..7
+*** t2204-add-ignored.sh ***
+ok 1 - setup
+ok 2 - no complaints for unignored file
+ok 3 - no complaints for unignored dir/file
+ok 4 - no complaints for unignored dir
+ok 5 - no complaints for unignored d*
+ok 6 - complaints for ignored ign
+ok 7 - complaints for ignored ign output
+ok 8 - complaints for ignored ign with unignored file
+ok 9 - complaints for ignored ign with unignored file output
+ok 10 - complaints for ignored dir/ign
+ok 11 - complaints for ignored dir/ign output
+ok 12 - complaints for ignored dir/ign with unignored file
+ok 13 - complaints for ignored dir/ign with unignored file output
+ok 14 - complaints for ignored dir/sub
+ok 15 - complaints for ignored dir/sub output
+ok 16 - complaints for ignored dir/sub with unignored file
+ok 17 - complaints for ignored dir/sub with unignored file output
+ok 18 - complaints for ignored dir/sub/ign
+ok 19 - complaints for ignored dir/sub/ign output
+ok 20 - complaints for ignored dir/sub/ign with unignored file
+ok 21 - complaints for ignored dir/sub/ign with unignored file output
+ok 22 - complaints for ignored sub/file
+ok 23 - complaints for ignored sub/file output
+ok 24 - complaints for ignored sub/file with unignored file
+ok 25 - complaints for ignored sub/file with unignored file output
+ok 26 - complaints for ignored sub
+ok 27 - complaints for ignored sub output
+ok 28 - complaints for ignored sub with unignored file
+ok 29 - complaints for ignored sub with unignored file output
+ok 30 - complaints for ignored sub/file
+ok 31 - complaints for ignored sub/file output
+ok 32 - complaints for ignored sub/file with unignored file
+ok 33 - complaints for ignored sub/file with unignored file output
+ok 34 - complaints for ignored sub/ign
+ok 35 - complaints for ignored sub/ign output
+ok 36 - complaints for ignored sub/ign with unignored file
+ok 37 - complaints for ignored sub/ign with unignored file output
+ok 38 - complaints for ignored sub in dir
+ok 39 - complaints for ignored sub in dir output
+ok 40 - complaints for ignored sub/file in dir
+ok 41 - complaints for ignored sub/file in dir output
+ok 42 - complaints for ignored sub/ign in dir
+ok 43 - complaints for ignored sub/ign in dir output
+ok 44 - complaints for ignored ign in sub
+ok 45 - complaints for ignored ign in sub output
+ok 46 - complaints for ignored file in sub
+ok 47 - complaints for ignored file in sub output
+# passed all 47 test(s)
+1..47
+*** t2300-cd-to-toplevel.sh ***
+ok 1 - at physical root
+ok 2 - at physical subdir
+ok 3 - at symbolic root
+ok 4 - at symbolic subdir
+ok 5 - at internal symbolic subdir
+# passed all 5 test(s)
+1..5
+*** t3000-ls-files-others.sh ***
+ok 1 - setup 
+ok 2 - setup: expected output
+ok 3 - ls-files --others
+ok 4 - ls-files --others --directory
+ok 5 - --no-empty-directory hides empty directory
+ok 6 - ls-files --others with symlinked submodule
+# passed all 6 test(s)
+1..6
+*** t3001-ls-files-others-exclude.sh ***
+ok 1 - git ls-files --others with various exclude options.
+ok 2 - git ls-files --others with 
+ line endings.
+ok 3 - setup skip-worktree gitignore
+ok 4 - git ls-files --others with various exclude options.
+ok 5 - restore gitignore
+ok 6 - git status honors core.excludesfile
+ok 7 - trailing slash in exclude allows directory match(1)
+ok 8 - trailing slash in exclude allows directory match (2)
+ok 9 - trailing slash in exclude forces directory match (1)
+ok 10 - trailing slash in exclude forces directory match (2)
+ok 11 - negated exclude matches can override previous ones
+ok 12 - subdirectory ignore (setup)
+ok 13 - subdirectory ignore (toplevel)
+ok 14 - subdirectory ignore (l1/l2)
+ok 15 - subdirectory ignore (l1)
+# passed all 15 test(s)
+1..15
+*** t3002-ls-files-dashpath.sh ***
+ok 1 - setup
+ok 2 - git ls-files without path restriction.
+ok 3 - git ls-files with path restriction.
+ok 4 - git ls-files with path restriction with --.
+ok 5 - git ls-files with path restriction with -- --.
+ok 6 - git ls-files with no path restriction.
+# passed all 6 test(s)
+1..6
+*** t3003-ls-files-exclude.sh ***
+ok 1 - create repo with file
+ok 2 - ls-files output contains file (cached)
+ok 3 - ls-files output contains file (modified)
+ok 4 - add file to gitignore
+ok 5 - ls-files output contains file (cached)
+ok 6 - ls-files output contains file (modified)
+ok 7 - ls-files -i lists only tracked-but-ignored files
+# passed all 7 test(s)
+1..7
+*** t3004-ls-files-basic.sh ***
+ok 1 - ls-files in empty repository
+ok 2 - ls-files with nonexistent path
+ok 3 - ls-files with nonsense option
+ok 4 - ls-files -h in corrupt repository
+# passed all 4 test(s)
+1..4
+*** t3005-ls-files-relative.sh ***
+ok 1 - prepare
+ok 2 - ls-files with mixed levels
+ok 3 - ls-files -c
+ok 4 - ls-files -o
+# passed all 4 test(s)
+1..4
+*** t3010-ls-files-killed-modified.sh ***
+ok 1 - git update-index --add to add various paths.
+ok 2 - git ls-files -k to show killed files.
+ok 3 - validate git ls-files -k output.
+ok 4 - git ls-files -m to show modified files.
+ok 5 - validate git ls-files -m output.
+# passed all 5 test(s)
+1..5
+*** t3020-ls-files-error-unmatch.sh ***
+ok 1 - setup
+ok 2 - git ls-files --error-unmatch should fail with unmatched path.
+ok 3 - git ls-files --error-unmatch should succeed eith matched paths.
+# passed all 3 test(s)
+1..3
+*** t3030-merge-recursive.sh ***
+ok 1 - setup 1
+ok 2 - setup 2
+ok 3 - setup 3
+ok 4 - setup 4
+ok 5 - setup 5
+ok 6 - setup 6
+ok 7 - setup 7
+ok 8 - setup 8
+ok 9 - setup 9
+ok 10 - merge-recursive simple
+ok 11 - merge-recursive result
+ok 12 - fail if the index has unresolved entries
+ok 13 - merge-recursive remove conflict
+ok 14 - merge-recursive remove conflict
+ok 15 - merge-recursive d/f simple
+ok 16 - merge-recursive result
+ok 17 - merge-recursive d/f conflict
+ok 18 - merge-recursive d/f conflict result
+ok 19 - merge-recursive d/f conflict the other way
+ok 20 - merge-recursive d/f conflict result the other way
+ok 21 - merge-recursive d/f conflict
+ok 22 - merge-recursive d/f conflict result
+ok 23 - merge-recursive d/f conflict
+ok 24 - merge-recursive d/f conflict result
+ok 25 - reset and 3-way merge
+ok 26 - reset and bind merge
+ok 27 - merge removes empty directories
+not ok 28 - merge-recursive simple w/submodule # TODO known breakage
+not ok 29 - merge-recursive simple w/submodule result # TODO known breakage
+ok 30 - merge-recursive copy vs. rename
+not ok 31 - merge-recursive rename vs. rename/symlink # TODO known breakage
+# still have 3 known breakage(s)
+# passed all remaining 28 test(s)
+1..31
+*** t3031-merge-criscross.sh ***
+ok 1 - setup repo with criss-cross history
+ok 2 - recursive merge between F and G, causes segfault
+# passed all 2 test(s)
+1..2
+*** t3032-merge-recursive-options.sh ***
+ok 1 - setup
+ok 2 - naive merge fails
+ok 3 - --ignore-space-change makes merge succeed
+ok 4 - naive cherry-pick fails
+ok 5 - -Xignore-space-change makes cherry-pick succeed
+ok 6 - --ignore-space-change: our w/s-only change wins
+ok 7 - --ignore-space-change: their real change wins over w/s
+ok 8 - --ignore-space-change: does not ignore new spaces
+ok 9 - --ignore-all-space drops their new spaces
+ok 10 - --ignore-all-space keeps our new spaces
+ok 11 - --ignore-space-at-eol
+# passed all 11 test(s)
+1..11
+*** t3040-subprojects-basic.sh ***
+ok 1 - setup: create superproject
+ok 2 - setup: create subprojects
+ok 3 - check if fsck ignores the subprojects
+ok 4 - check if commit in a subproject detected
+ok 5 - check if a changed subproject HEAD can be committed
+ok 6 - check if diff-index works for subproject elements
+ok 7 - check if diff-tree works for subproject elements
+ok 8 - check if git diff works for subproject elements
+ok 9 - check if clone works
+ok 10 - removing and adding subproject
+ok 11 - checkout in superproject
+# passed all 11 test(s)
+1..11
+*** t3050-subprojects-fetch.sh ***
+ok 1 - setup
+ok 2 - clone
+ok 3 - advance
+ok 4 - fetch
+# passed all 4 test(s)
+1..4
+*** t3060-ls-files-with-tree.sh ***
+ok 1 - setup
+ok 2 - git -ls-files --with-tree should succeed from subdir
+ok 3 - git -ls-files --with-tree should add entries from named tree.
+# passed all 3 test(s)
+1..3
+*** t3100-ls-tree-restrict.sh ***
+ok 1 - setup
+ok 2 - ls-tree plain
+ok 3 - ls-tree recursive
+ok 4 - ls-tree recursive with -t
+ok 5 - ls-tree recursive with -d
+ok 6 - ls-tree filtered with path
+ok 7 - ls-tree filtered with path1 path0
+ok 8 - ls-tree filtered with path0/
+ok 9 - ls-tree filtered with path2
+ok 10 - ls-tree filtered with path2/
+ok 11 - ls-tree filtered with path2/baz
+ok 12 - ls-tree filtered with path2/bak
+ok 13 - ls-tree -t filtered with path2/bak
+ok 14 - ls-tree with one path a prefix of the other
+# passed all 14 test(s)
+1..14
+*** t3101-ls-tree-dirname.sh ***
+ok 1 - setup
+ok 2 - ls-tree plain
+ok 3 - ls-tree recursive
+ok 4 - ls-tree filter 1.txt
+ok 5 - ls-tree filter path1/b/c/1.txt
+ok 6 - ls-tree filter all 1.txt files
+ok 7 - ls-tree filter directories
+ok 8 - ls-tree filter odd names
+ok 9 - ls-tree filter missing files and extra slashes
+ok 10 - ls-tree filter is leading path match
+ok 11 - ls-tree --full-name
+ok 12 - ls-tree --full-tree
+ok 13 - ls-tree --full-tree -r
+ok 14 - ls-tree --abbrev=5
+ok 15 - ls-tree --name-only
+ok 16 - ls-tree --name-only -r
+# passed all 16 test(s)
+1..16
+*** t3102-ls-tree-wildcards.sh ***
+ok 1 - setup
+ok 2 - ls-tree a[a] matches literally
+# passed all 2 test(s)
+1..2
+*** t3103-ls-tree-misc.sh ***
+ok 1 - setup
+ok 2 - ls-tree fails with non-zero exit code on broken tree
+# passed all 2 test(s)
+1..2
+*** t3200-branch.sh ***
+ok 1 - prepare a trivial repository
+ok 2 - git branch --help should not have created a bogus branch
+ok 3 - branch -h in broken repository
+ok 4 - git branch abc should create a branch
+ok 5 - git branch a/b/c should create a branch
+ok 6 - git branch -l d/e/f should create a branch and a log
+ok 7 - git branch -d d/e/f should delete a branch and a log
+ok 8 - git branch j/k should work after branch j has been deleted
+ok 9 - git branch l should work after branch l/m has been deleted
+ok 10 - git branch -m dumps usage
+ok 11 - git branch -m m m/m should work
+ok 12 - git branch -m n/n n should work
+ok 13 - git branch -m o/o o should fail when o/p exists
+ok 14 - git branch -m q r/q should fail when r exists
+ok 15 - git branch -M foo bar should fail when bar is checked out
+ok 16 - git branch -M baz bam should succeed when baz is checked out
+ok 17 - git branch -M master should work when master is checked out
+ok 18 - git branch -M master master should work when master is checked out
+ok 19 - git branch -M master2 master2 should work when master is checked out
+ok 20 - git branch -v -d t should work
+ok 21 - git branch -v -m t s should work
+ok 22 - git branch -m -d t s should fail
+ok 23 - git branch --list -d t should fail
+ok 24 - git branch -m q q2 without config should succeed
+ok 25 - git branch -m s/s s should work when s/t is deleted
+ok 26 - config information was renamed, too
+ok 27 - renaming a symref is not allowed
+ok 28 - git branch -m u v should fail when the reflog for u is a symlink
+ok 29 - test tracking setup via --track
+ok 30 - test tracking setup (non-wildcard, matching)
+ok 31 - test tracking setup (non-wildcard, not matching)
+ok 32 - test tracking setup via config
+ok 33 - test overriding tracking setup via --no-track
+ok 34 - no tracking without .fetch entries
+ok 35 - test tracking setup via --track but deeper
+ok 36 - test deleting branch deletes branch config
+ok 37 - test deleting branch without config
+ok 38 - test --track without .fetch entries
+ok 39 - branch from non-branch HEAD w/autosetupmerge=always
+ok 40 - branch from non-branch HEAD w/--track causes failure
+ok 41 - branch from tag w/--track causes failure
+ok 42 - git checkout -b g/h/i -l should create a branch and a log
+ok 43 - checkout -b makes reflog by default
+ok 44 - checkout -b does not make reflog when core.logAllRefUpdates = false
+ok 45 - checkout -b with -l makes reflog when core.logAllRefUpdates = false
+ok 46 - avoid ambiguous track
+ok 47 - autosetuprebase local on a tracked local branch
+ok 48 - autosetuprebase always on a tracked local branch
+ok 49 - autosetuprebase remote on a tracked local branch
+ok 50 - autosetuprebase never on a tracked local branch
+ok 51 - autosetuprebase local on a tracked remote branch
+ok 52 - autosetuprebase never on a tracked remote branch
+ok 53 - autosetuprebase remote on a tracked remote branch
+ok 54 - autosetuprebase always on a tracked remote branch
+ok 55 - autosetuprebase unconfigured on a tracked remote branch
+ok 56 - autosetuprebase unconfigured on a tracked local branch
+ok 57 - autosetuprebase unconfigured on untracked local branch
+ok 58 - autosetuprebase unconfigured on untracked remote branch
+ok 59 - autosetuprebase never on an untracked local branch
+ok 60 - autosetuprebase local on an untracked local branch
+ok 61 - autosetuprebase remote on an untracked local branch
+ok 62 - autosetuprebase always on an untracked local branch
+ok 63 - autosetuprebase never on an untracked remote branch
+ok 64 - autosetuprebase local on an untracked remote branch
+ok 65 - autosetuprebase remote on an untracked remote branch
+ok 66 - autosetuprebase always on an untracked remote branch
+ok 67 - autosetuprebase always on detached HEAD
+ok 68 - detect misconfigured autosetuprebase (bad value)
+ok 69 - detect misconfigured autosetuprebase (no value)
+ok 70 - attempt to delete a branch without base and unmerged to HEAD
+ok 71 - attempt to delete a branch merged to its base
+ok 72 - attempt to delete a branch merged to its base
+ok 73 - use set-upstream on the current branch
+ok 74 - use --edit-description
+ok 75 - detect typo in branch name when using --edit-description
+ok 76 - refuse --edit-description on unborn branch for now
+# passed all 76 test(s)
+1..76
+*** t3201-branch-contains.sh ***
+ok 1 - setup
+ok 2 - branch --contains=master
+ok 3 - branch --contains master
+ok 4 - branch --contains=side
+ok 5 - side: branch --merged
+ok 6 - side: branch --no-merged
+ok 7 - master: branch --merged
+ok 8 - master: branch --no-merged
+# passed all 8 test(s)
+1..8
+*** t3202-show-branch-octopus.sh ***
+ok 1 - setup
+ok 2 - show-branch with more than 8 branches
+ok 3 - show-branch with showbranch.default
+# passed all 3 test(s)
+1..3
+*** t3203-branch-output.sh ***
+ok 1 - make commits
+ok 2 - make branches
+ok 3 - make remote branches
+ok 4 - git branch shows local branches
+ok 5 - git branch --list shows local branches
+ok 6 - git branch --list pattern shows matching local branches
+ok 7 - git branch -r shows remote branches
+ok 8 - git branch -a shows local and remote branches
+ok 9 - git branch -v shows branch summaries
+ok 10 - git branch --list -v pattern shows branch summaries
+ok 11 - git branch -v pattern does not show branch summaries
+ok 12 - git branch shows detached HEAD properly
+# passed all 12 test(s)
+1..12
+*** t3210-pack-refs.sh ***
+ok 1 - prepare a trivial repository
+ok 2 - see if git show-ref works as expected
+ok 3 - see if a branch still exists when packed
+ok 4 - git branch c/d should barf if branch c exists
+ok 5 - see if a branch still exists after git pack-refs --prune
+ok 6 - see if git pack-refs --prune remove ref files
+ok 7 - see if git pack-refs --prune removes empty dirs
+ok 8 - git branch g should work when git branch g/h has been deleted
+ok 9 - git branch i/j/k should barf if branch i exists
+ok 10 - test git branch k after branch k/l/m and k/lm have been deleted
+ok 11 - test git branch n after some branch deletion and pruning
+ok 12 - see if up-to-date packed refs are preserved
+ok 13 - pack, prune and repack
+# passed all 13 test(s)
+1..13
+*** t3300-funny-names.sh ***
+ok 1 - setup expect
+ok 2 - git ls-files no-funny
+ok 3 - setup expect
+ok 4 - git ls-files with-funny
+ok 5 - setup expect
+ok 6 - git ls-files -z with-funny
+ok 7 - setup expect
+ok 8 - git ls-tree with funny
+ok 9 - setup expect
+ok 10 - git diff-index with-funny
+ok 11 - git diff-tree with-funny
+ok 12 - setup expect
+ok 13 - git diff-index -z with-funny
+ok 14 - git diff-tree -z with-funny
+ok 15 - setup expect
+ok 16 - git diff-tree -C with-funny
+ok 17 - setup expect
+ok 18 - git diff-tree delete with-funny
+ok 19 - setup expect
+ok 20 - git diff-tree delete with-funny
+ok 21 - setup expect
+ok 22 - git diff-tree delete with-funny
+ok 23 - setup expect
+ok 24 - git diff-tree rename with-funny applied
+ok 25 - setup expect
+ok 26 - git diff-tree delete with-funny applied
+ok 27 - git apply non-git diff
+# passed all 27 test(s)
+1..27
+*** t3301-notes.sh ***
+ok 1 - cannot annotate non-existing HEAD
+ok 2 - setup
+ok 3 - need valid notes ref
+ok 4 - refusing to add notes in refs/heads/
+ok 5 - refusing to edit notes in refs/remotes/
+ok 6 - handle empty notes gracefully
+ok 7 - show non-existent notes entry with %N
+ok 8 - create notes
+ok 9 - show notes entry with %N
+ok 10 - create reflog entry
+ok 11 - edit existing notes
+ok 12 - cannot "git notes add -m" where notes already exists
+ok 13 - can overwrite existing note with "git notes add -f -m"
+ok 14 - add w/no options on existing note morphs into edit
+ok 15 - can overwrite existing note with "git notes add -f"
+ok 16 - show notes
+ok 17 - create multi-line notes (setup)
+ok 18 - show multi-line notes
+ok 19 - create -F notes (setup)
+ok 20 - show -F notes
+ok 21 - Re-adding -F notes without -f fails
+ok 22 - git log --pretty=raw does not show notes
+ok 23 - git log --show-notes
+ok 24 - git log --no-notes
+ok 25 - git format-patch does not show notes
+ok 26 - git format-patch --show-notes does show notes
+ok 27 - git show  does show notes
+ok 28 - git show --pretty does not show notes
+ok 29 - git show --pretty=raw does not show notes
+ok 30 - git show --pretty=short does not show notes
+ok 31 - git show --pretty=medium does not show notes
+ok 32 - git show --pretty=full does not show notes
+ok 33 - git show --pretty=fuller does not show notes
+ok 34 - git show --pretty=format:%s does not show notes
+ok 35 - git show --oneline does not show notes
+ok 36 - setup alternate notes ref
+ok 37 - git log --notes shows default notes
+ok 38 - git log --notes=X shows only X
+ok 39 - git log --notes --notes=X shows both
+ok 40 - git log --no-notes resets default state
+ok 41 - git log --no-notes resets ref list
+ok 42 - create -m notes (setup)
+ok 43 - show -m notes
+ok 44 - remove note with add -f -F /dev/null (setup)
+ok 45 - verify note removal with -F /dev/null
+ok 46 - do not create empty note with -m "" (setup)
+ok 47 - verify non-creation of note with -m ""
+ok 48 - create note with combination of -m and -F
+ok 49 - remove note with "git notes remove" (setup)
+ok 50 - verify note removal with "git notes remove"
+ok 51 - removing non-existing note should not create new commit
+ok 52 - removing more than one
+ok 53 - removing is atomic
+ok 54 - removing with --ignore-missing
+ok 55 - removing with --ignore-missing but bogus ref
+ok 56 - remove reads from --stdin
+ok 57 - remove --stdin is also atomic
+ok 58 - removing with --stdin --ignore-missing
+ok 59 - list notes with "git notes list"
+ok 60 - list notes with "git notes"
+ok 61 - list specific note with "git notes list <object>"
+ok 62 - listing non-existing notes fails
+ok 63 - append to existing note with "git notes append"
+ok 64 - "git notes list" does not expand to "git notes list HEAD"
+ok 65 - appending empty string does not change existing note
+ok 66 - git notes append == add when there is no existing note
+ok 67 - appending empty string to non-existing note does not create note
+ok 68 - create other note on a different notes ref (setup)
+ok 69 - Do not show note on other ref by default
+ok 70 - Do show note when ref is given in GIT_NOTES_REF
+ok 71 - Do show note when ref is given in core.notesRef config
+ok 72 - Do not show note when core.notesRef is overridden
+ok 73 - Show all notes when notes.displayRef=refs/notes/*
+ok 74 - core.notesRef is implicitly in notes.displayRef
+ok 75 - notes.displayRef can be given more than once
+ok 76 - notes.displayRef respects order
+ok 77 - GIT_NOTES_DISPLAY_REF works
+ok 78 - GIT_NOTES_DISPLAY_REF overrides config
+ok 79 - --show-notes=* adds to GIT_NOTES_DISPLAY_REF
+ok 80 - --no-standard-notes
+ok 81 - --standard-notes
+ok 82 - --show-notes=ref accumulates
+ok 83 - Allow notes on non-commits (trees, blobs, tags)
+ok 84 - create note from other note with "git notes add -C"
+ok 85 - create note from non-existing note with "git notes add -C" fails
+ok 86 - create note from other note with "git notes add -c"
+ok 87 - create note from non-existing note with "git notes add -c" fails
+ok 88 - append to note from other note with "git notes append -C"
+ok 89 - create note from other note with "git notes append -c"
+ok 90 - append to note from other note with "git notes append -c"
+ok 91 - copy note with "git notes copy"
+ok 92 - prevent overwrite with "git notes copy"
+ok 93 - allow overwrite with "git notes copy -f"
+ok 94 - cannot copy note from object without notes
+ok 95 - git notes copy --stdin
+ok 96 - git notes copy --for-rewrite (unconfigured)
+ok 97 - git notes copy --for-rewrite (enabled)
+ok 98 - git notes copy --for-rewrite (disabled)
+ok 99 - git notes copy --for-rewrite (overwrite)
+ok 100 - git notes copy --for-rewrite (ignore)
+ok 101 - git notes copy --for-rewrite (append)
+ok 102 - git notes copy --for-rewrite (append two to one)
+ok 103 - git notes copy --for-rewrite (append empty)
+ok 104 - GIT_NOTES_REWRITE_MODE works
+ok 105 - GIT_NOTES_REWRITE_REF works
+ok 106 - GIT_NOTES_REWRITE_REF overrides config
+ok 107 - git notes copy diagnoses too many or too few parameters
+ok 108 - git notes get-ref (no overrides)
+ok 109 - git notes get-ref (core.notesRef)
+ok 110 - git notes get-ref (GIT_NOTES_REF)
+ok 111 - git notes get-ref (--ref)
+# passed all 111 test(s)
+1..111
+*** t3302-notes-index-expensive.sh ***
+ok 1 - setup / mkdir
+ok 2 - setup 10
+ok 3 - notes work
+ok 4 - notes timing with /usr/bin/time
+ok 5 - teardown / cd ..
+ok 6 # skip setup / mkdir (missing EXPENSIVE)
+ok 7 # skip setup 100 (missing EXPENSIVE)
+ok 8 # skip notes work (missing EXPENSIVE)
+ok 9 # skip notes timing with /usr/bin/time (missing EXPENSIVE of USR_BIN_TIME,EXPENSIVE)
+ok 10 # skip teardown / cd .. (missing EXPENSIVE)
+ok 11 # skip setup / mkdir (missing EXPENSIVE)
+ok 12 # skip setup 1000 (missing EXPENSIVE)
+ok 13 # skip notes work (missing EXPENSIVE)
+ok 14 # skip notes timing with /usr/bin/time (missing EXPENSIVE of USR_BIN_TIME,EXPENSIVE)
+ok 15 # skip teardown / cd .. (missing EXPENSIVE)
+ok 16 # skip setup / mkdir (missing EXPENSIVE)
+ok 17 # skip setup 10000 (missing EXPENSIVE)
+ok 18 # skip notes work (missing EXPENSIVE)
+ok 19 # skip notes timing with /usr/bin/time (missing EXPENSIVE of USR_BIN_TIME,EXPENSIVE)
+ok 20 # skip teardown / cd .. (missing EXPENSIVE)
+# passed all 20 test(s)
+1..20
+*** t3303-notes-subtrees.sh ***
+ok 1 - setup: create 100 commits
+ok 2 - test notes in 2/38-fanout
+ok 3 - verify notes in 2/38-fanout
+ok 4 - test notes in 2/2/36-fanout
+ok 5 - verify notes in 2/2/36-fanout
+ok 6 - test notes in 2/2/2/34-fanout
+ok 7 - verify notes in 2/2/2/34-fanout
+ok 8 - test same notes in no fanout and 2/38-fanout
+ok 9 - verify same notes in no fanout and 2/38-fanout
+ok 10 - test same notes in no fanout and 2/2/36-fanout
+ok 11 - verify same notes in no fanout and 2/2/36-fanout
+ok 12 - test same notes in 2/38-fanout and 2/2/36-fanout
+ok 13 - verify same notes in 2/38-fanout and 2/2/36-fanout
+ok 14 - test same notes in 2/2/2/34-fanout and 2/2/36-fanout
+ok 15 - verify same notes in 2/2/2/34-fanout and 2/2/36-fanout
+ok 16 - test notes in no fanout concatenated with 2/38-fanout
+ok 17 - verify notes in no fanout concatenated with 2/38-fanout
+ok 18 - test notes in no fanout concatenated with 2/2/36-fanout
+ok 19 - verify notes in no fanout concatenated with 2/2/36-fanout
+ok 20 - test notes in 2/38-fanout concatenated with 2/2/36-fanout
+ok 21 - verify notes in 2/38-fanout concatenated with 2/2/36-fanout
+ok 22 - test notes in 2/2/36-fanout concatenated with 2/2/2/34-fanout
+ok 23 - verify notes in 2/2/36-fanout concatenated with 2/2/2/34-fanout
+# passed all 23 test(s)
+1..23
+*** t3304-notes-mixed.sh ***
+ok 1 - setup: create a couple of commits
+ok 2 - create a notes tree with both notes and non-notes
+ok 3 - verify contents of notes
+ok 4 - verify contents of non-notes
+ok 5 - git-notes preserves non-notes
+ok 6 - verify contents of non-notes after git-notes
+# passed all 6 test(s)
+1..6
+*** t3305-notes-fanout.sh ***
+ok 1 - creating many notes with git-notes
+ok 2 - many notes created correctly with git-notes
+ok 3 - many notes created with git-notes triggers fanout
+ok 4 - deleting most notes with git-notes
+ok 5 - most notes deleted correctly with git-notes
+ok 6 - deleting most notes triggers fanout consolidation
+# passed all 6 test(s)
+1..6
+*** t3306-notes-prune.sh ***
+ok 1 - setup: create a few commits with notes
+ok 2 - verify commits and notes
+ok 3 - remove some commits
+ok 4 - verify that commits are gone
+ok 5 - verify that notes are still present
+ok 6 - prune -n does not remove notes
+ok 7 - prune -n lists prunable notes
+ok 8 - prune notes
+ok 9 - verify that notes are gone
+ok 10 - remove some commits
+ok 11 - prune -v notes
+ok 12 - verify that notes are gone
+# passed all 12 test(s)
+1..12
+*** t3307-notes-man.sh ***
+ok 1 - setup
+ok 2 - example 1: notes to add an Acked-by line
+ok 3 - example 2: binary notes
+# passed all 3 test(s)
+1..3
+*** t3308-notes-merge.sh ***
+ok 1 - setup
+ok 2 - verify initial notes (x)
+ok 3 - fail to merge empty notes ref into empty notes ref (z => y)
+ok 4 - fail to merge into various non-notes refs
+ok 5 - fail to merge various non-note-trees
+ok 6 - merge notes into empty notes ref (x => y)
+ok 7 - merge empty notes ref (z => y)
+ok 8 - change notes on other notes ref (y)
+ok 9 - merge previous notes commit (y^ => y) => No-op
+ok 10 - verify changed notes on other notes ref (y)
+ok 11 - verify unchanged notes on original notes ref (x)
+ok 12 - merge original notes (x) into changed notes (y) => No-op
+ok 13 - merge changed (y) into original (x) => Fast-forward
+ok 14 - merge empty notes ref (z => y)
+ok 15 - change notes on other notes ref (y)
+ok 16 - change notes on notes ref (x)
+ok 17 - merge y into x => Non-conflicting 3-way merge
+ok 18 - create notes on new, separate notes ref (w)
+ok 19 - merge w into x => Non-conflicting history-less merge
+# passed all 19 test(s)
+1..19
+*** t3309-notes-merge-auto-resolve.sh ***
+ok 1 - setup commits
+ok 2 - setup merge base (x)
+ok 3 - verify state of merge base (x)
+ok 4 - setup local branch (y)
+ok 5 - verify state of local branch (y)
+ok 6 - setup remote branch (z)
+ok 7 - verify state of remote branch (z)
+ok 8 - merge z into y with invalid strategy => Fail/No changes
+ok 9 - merge z into y with "ours" strategy => Non-conflicting 3-way merge
+ok 10 - reset to pre-merge state (y)
+ok 11 - merge z into y with "theirs" strategy => Non-conflicting 3-way merge
+ok 12 - reset to pre-merge state (y)
+ok 13 - merge z into y with "union" strategy => Non-conflicting 3-way merge
+ok 14 - reset to pre-merge state (y)
+ok 15 - merge y into z with "union" strategy => Non-conflicting 3-way merge
+ok 16 - reset to pre-merge state (z)
+ok 17 - merge y into z with "cat_sort_uniq" strategy => Non-conflicting 3-way merge
+# passed all 17 test(s)
+1..17
+*** t3310-notes-merge-manual-resolve.sh ***
+ok 1 - setup commits
+ok 2 - setup merge base (x)
+ok 3 - setup local branch (y)
+ok 4 - setup remote branch (z)
+ok 5 - merge z into m (== y) with default ("manual") resolver => Conflicting 3-way merge
+ok 6 - change notes in z
+ok 7 - cannot do merge w/conflicts when previous merge is unfinished
+ok 8 - setup unrelated notes ref (w)
+ok 9 - can do merge without conflicts even if previous merge is unfinished (x => w)
+ok 10 - finalize conflicting merge (z => m)
+ok 11 - redo merge of z into m (== y) with default ("manual") resolver => Conflicting 3-way merge
+ok 12 - abort notes merge
+ok 13 - redo merge of z into m (== y) with default ("manual") resolver => Conflicting 3-way merge
+ok 14 - add + remove notes in finalized merge (z => m)
+ok 15 - redo merge of z into m (== y) with default ("manual") resolver => Conflicting 3-way merge
+ok 16 - reset notes ref m to somewhere else (w)
+ok 17 - fail to finalize conflicting merge if underlying ref has moved in the meantime (m != NOTES_MERGE_PARTIAL^1)
+ok 18 - resolve situation by aborting the notes merge
+# passed all 18 test(s)
+1..18
+*** t3311-notes-merge-fanout.sh ***
+ok 1 - setup a few initial commits with notes (notes ref: x)
+ok 2 - sanity check (x)
+ok 3 - Add a few hundred commits w/notes to trigger fanout (x -> y)
+ok 4 - notes tree has fanout (y)
+ok 5 - No-op merge (already included) (x => y)
+ok 6 - Fast-forward merge (y => x)
+ok 7 - change some of the initial 5 notes (x -> z)
+ok 8 - notes tree has no fanout (z)
+ok 9 - successful merge without conflicts (y => z)
+ok 10 - notes tree still has fanout after merge (m)
+ok 11 - introduce conflicting changes (y -> w)
+ok 12 - successful merge using "ours" strategy (z => w)
+ok 13 - notes tree still has fanout after merge (m)
+ok 14 - successful merge using "theirs" strategy (z => w)
+ok 15 - notes tree still has fanout after merge (m)
+ok 16 - successful merge using "union" strategy (z => w)
+ok 17 - notes tree still has fanout after merge (m)
+ok 18 - successful merge using "cat_sort_uniq" strategy (z => w)
+ok 19 - notes tree still has fanout after merge (m)
+ok 20 - fails to merge using "manual" strategy (z => w)
+ok 21 - notes tree still has fanout after merge (m)
+ok 22 - verify conflict entries (with no fanout)
+ok 23 - resolve and finalize merge (z => w)
+ok 24 - notes tree still has fanout after merge (m)
+# passed all 24 test(s)
+1..24
+*** t3400-rebase.sh ***
+ok 1 - prepare repository with topic branches
+ok 2 - rebase on dirty worktree
+ok 3 - rebase on dirty cache
+ok 4 - rebase against master
+ok 5 - rebase against master twice
+ok 6 - rebase against master twice with --force
+ok 7 - rebase against master twice from another branch
+ok 8 - rebase fast-forward to master
+ok 9 - the rebase operation should not have destroyed author information
+ok 10 - the rebase operation should not have destroyed author information (2)
+ok 11 - HEAD was detached during rebase
+ok 12 - rebase after merge master
+ok 13 - rebase of history with merges is linearized
+ok 14 - rebase of history with merges after upstream merge is linearized
+ok 15 - rebase a single mode change
+ok 16 - rebase is not broken by diff.renames
+ok 17 - setup: recover
+ok 18 - Show verbose error when HEAD could not be detached
+ok 19 - fail when upstream arg is missing and not on branch
+ok 20 - fail when upstream arg is missing and not configured
+ok 21 - default to @{upstream} when upstream arg is missing
+ok 22 - rebase -q is quiet
+ok 23 - Rebase a commit that sprinkles CRs in
+ok 24 - rebase can copy notes
+ok 25 - rebase -m can copy notes
+ok 26 - rebase commit with an ancient timestamp
+# passed all 26 test(s)
+1..26
+*** t3401-rebase-partial.sh ***
+ok 1 - prepare repository with topic branch
+ok 2 - pick top patch from topic branch into master
+ok 3 - rebase topic branch against new master and check git am did not get halted
+ok 4 - rebase --merge topic branch that was partially merged upstream
+# passed all 4 test(s)
+1..4
+*** t3402-rebase-merge.sh ***
+ok 1 - setup
+ok 2 - reference merge
+ok 3 - rebase
+ok 4 - [email protected]{1} is pre rebase
+ok 5 - merge and rebase should match
+ok 6 - rebase the other way
+ok 7 - rebase -Xtheirs
+ok 8 - merge and rebase should match
+ok 9 - picking rebase
+ok 10 - rebase -s funny -Xopt
+# passed all 10 test(s)
+1..10
+*** t3403-rebase-skip.sh ***
+ok 1 - setup
+ok 2 - rebase with git am -3 (default)
+ok 3 - rebase --skip can not be used with other options
+ok 4 - rebase --skip with am -3
+ok 5 - rebase moves back to skip-reference
+ok 6 - checkout skip-merge
+ok 7 - rebase with --merge
+ok 8 - rebase --skip with --merge
+ok 9 - merge and reference trees equal
+ok 10 - moved back to branch correctly
+# passed all 10 test(s)
+1..10
+*** t3404-rebase-interactive.sh ***
+ok 1 - setup
+ok 2 - rebase -i with the exec command
+ok 3 - rebase -i with the exec command runs from tree root
+ok 4 - rebase -i with the exec command checks tree cleanness
+ok 5 - no changes are a nop
+ok 6 - test the [branch] option
+ok 7 - test --onto <branch>
+ok 8 - rebase on top of a non-conflicting commit
+ok 9 - reflog for the branch shows state before rebase
+ok 10 - exchange two commits
+ok 11 - stop on conflicting pick
+ok 12 - abort
+ok 13 - abort with error when new base cannot be checked out
+ok 14 - retain authorship
+ok 15 - squash
+ok 16 - retain authorship when squashing
+ok 17 - -p handles "no changes" gracefully
+not ok 18 - exchange two commits with -p # TODO known breakage
+ok 19 - preserve merges with -p
+ok 20 - edit ancestor with -p
+ok 21 - --continue tries to commit
+ok 22 - verbose flag is heeded, even after --continue
+ok 23 - multi-squash only fires up editor once
+ok 24 - multi-fixup does not fire up editor
+ok 25 - commit message used after conflict
+ok 26 - commit message retained after conflict
+ok 27 - squash and fixup generate correct log messages
+ok 28 - squash ignores comments
+ok 29 - squash ignores blank lines
+ok 30 - squash works as expected
+ok 31 - interrupted squash works as expected
+ok 32 - interrupted squash works as expected (case 2)
+ok 33 - ignore patch if in upstream
+ok 34 - --continue tries to commit, even for "edit"
+ok 35 - aborted --continue does not squash commits after "edit"
+ok 36 - auto-amend only edited commits after "edit"
+ok 37 - clean error after failed "exec"
+ok 38 - rebase a detached HEAD
+ok 39 - rebase a commit violating pre-commit
+ok 40 - rebase with a file named HEAD in worktree
+ok 41 - do "noop" when there is nothing to cherry-pick
+ok 42 - submodule rebase setup
+ok 43 - submodule rebase -i
+ok 44 - avoid unnecessary reset
+ok 45 - reword
+ok 46 - rebase -i can copy notes
+ok 47 - rebase -i can copy notes over a fixup
+ok 48 - rebase while detaching HEAD
+ok 49 - always cherry-pick with --no-ff
+ok 50 - set up commits with funny messages
+ok 51 - rebase-i history with funny messages
+# still have 1 known breakage(s)
+# passed all remaining 50 test(s)
+1..51
+*** t3405-rebase-malformed.sh ***
+ok 1 - setup
+ok 2 - rebase
+# passed all 2 test(s)
+1..2
+*** t3406-rebase-message.sh ***
+ok 1 - setup
+ok 2 - rebase -m
+ok 3 - rebase --stat
+ok 4 - rebase w/config rebase.stat
+ok 5 - rebase -n overrides config rebase.stat config
+# passed all 5 test(s)
+1..5
+*** t3407-rebase-abort.sh ***
+ok 1 - setup
+ok 2 - rebase --abort
+ok 3 - rebase --abort after --skip
+ok 4 - rebase --abort after --continue
+ok 5 - rebase --abort does not update reflog
+ok 6 - rebase --abort can not be used with other options
+ok 7 - rebase --merge --abort
+ok 8 - rebase --merge --abort after --skip
+ok 9 - rebase --merge --abort after --continue
+ok 10 - rebase --merge --abort does not update reflog
+ok 11 - rebase --abort can not be used with other options
+# passed all 11 test(s)
+1..11
+*** t3408-rebase-multi-line.sh ***
+ok 1 - setup
+ok 2 - rebase
+# passed all 2 test(s)
+1..2
+*** t3409-rebase-preserve-merges.sh ***
+ok 1 - setup for merge-preserving rebase
+ok 2 - rebase -p fakes interactive rebase
+ok 3 - --continue works after a conflict
+ok 4 - rebase -p preserves no-ff merges
+ok 5 - rebase -p works when base inside second parent
+# passed all 5 test(s)
+1..5
+*** t3410-rebase-preserve-dropped-merges.sh ***
+ok 1 - setup
+ok 2 - skip same-resolution merges with -p
+ok 3 - keep different-resolution merges with -p
+# passed all 3 test(s)
+1..3
+*** t3411-rebase-preserve-around-merges.sh ***
+ok 1 - setup
+ok 2 - squash F1 into D1
+ok 3 - rebase two levels of merge
+# passed all 3 test(s)
+1..3
+*** t3412-rebase-root.sh ***
+ok 1 - prepare repository
+ok 2 - rebase --root expects --onto
+ok 3 - setup pre-rebase hook
+ok 4 - rebase --root --onto <newbase>
+ok 5 - pre-rebase got correct input (1)
+ok 6 - rebase --root --onto <newbase> <branch>
+ok 7 - pre-rebase got correct input (2)
+ok 8 - rebase -i --root --onto <newbase>
+ok 9 - pre-rebase got correct input (3)
+ok 10 - rebase -i --root --onto <newbase> <branch>
+ok 11 - pre-rebase got correct input (4)
+ok 12 - rebase -i -p with linear history
+ok 13 - pre-rebase got correct input (5)
+ok 14 - set up merge history
+ok 15 - rebase -i -p with merge
+ok 16 - set up second root and merge
+ok 17 - rebase -i -p with two roots
+ok 18 - setup pre-rebase hook that fails
+ok 19 - pre-rebase hook stops rebase
+ok 20 - pre-rebase hook stops rebase -i
+ok 21 - remove pre-rebase hook
+ok 22 - set up a conflict
+ok 23 - rebase --root with conflict (first part)
+ok 24 - fix the conflict
+ok 25 - rebase --root with conflict (second part)
+ok 26 - rebase -i --root with conflict (first part)
+ok 27 - fix the conflict
+ok 28 - rebase -i --root with conflict (second part)
+ok 29 - rebase -i -p --root with conflict (first part)
+ok 30 - fix the conflict
+ok 31 - rebase -i -p --root with conflict (second part)
+# passed all 31 test(s)
+1..31
+*** t3413-rebase-hook.sh ***
+ok 1 - setup
+ok 2 - rebase
+ok 3 - rebase -i
+ok 4 - setup pre-rebase hook
+ok 5 - pre-rebase hook gets correct input (1)
+ok 6 - pre-rebase hook gets correct input (2)
+ok 7 - pre-rebase hook gets correct input (3)
+ok 8 - pre-rebase hook gets correct input (4)
+ok 9 - pre-rebase hook gets correct input (5)
+ok 10 - pre-rebase hook gets correct input (6)
+ok 11 - setup pre-rebase hook that fails
+ok 12 - pre-rebase hook stops rebase (1)
+ok 13 - pre-rebase hook stops rebase (2)
+ok 14 - rebase --no-verify overrides pre-rebase (1)
+ok 15 - rebase --no-verify overrides pre-rebase (2)
+# passed all 15 test(s)
+1..15
+*** t3414-rebase-preserve-onto.sh ***
+ok 1 - setup
+ok 2 - rebase from B1 onto H1
+ok 3 - rebase from E1 onto H1
+ok 4 - rebase from C1 onto H1
+# passed all 4 test(s)
+1..4
+*** t3415-rebase-autosquash.sh ***
+ok 1 - setup
+ok 2 - auto fixup (option)
+ok 3 - auto fixup (config)
+ok 4 - auto squash (option)
+ok 5 - auto squash (config)
+ok 6 - misspelled auto squash
+ok 7 - auto squash that matches 2 commits
+ok 8 - auto squash that matches a commit after the squash
+ok 9 - auto squash that matches a sha1
+ok 10 - auto squash that matches longer sha1
+ok 11 - use commit --fixup
+ok 12 - use commit --squash
+# passed all 12 test(s)
+1..12
+*** t3416-rebase-onto-threedots.sh ***
+ok 1 - setup
+ok 2 - rebase --onto master...topic
+ok 3 - rebase --onto master...
+ok 4 - rebase --onto master...side
+ok 5 - rebase -i --onto master...topic
+ok 6 - rebase -i --onto master...
+ok 7 - rebase -i --onto master...side
+# passed all 7 test(s)
+1..7
+*** t3417-rebase-whitespace-fix.sh ***
+ok 1 - blank line at end of file; extend at end of file
+ok 2 - two blanks line at end of file; extend at end of file
+ok 3 - same, but do not remove trailing spaces
+ok 4 - at beginning of file
+# passed all 4 test(s)
+1..4
+*** t3418-rebase-continue.sh ***
+ok 1 - setup
+ok 2 - interactive rebase --continue works with touched file
+ok 3 - non-interactive rebase --continue works with touched file
+ok 4 - rebase --continue can not be used with other options
+ok 5 - rebase --continue remembers merge strategy and options
+ok 6 - rebase --continue remembers --rerere-autoupdate
+# passed all 6 test(s)
+1..6
+*** t3419-rebase-patch-id.sh ***
+ok 1 - setup
+ok 2 - setup: 500 lines
+ok 3 - setup attributes
+ok 4 - detect upstream patch
+ok 5 - do not drop patch
+ok 6 # skip setup: 50000 lines (missing EXPENSIVE)
+ok 7 # skip setup attributes (missing EXPENSIVE)
+ok 8 # skip detect upstream patch (missing EXPENSIVE)
+ok 9 # skip do not drop patch (missing EXPENSIVE)
+# passed all 9 test(s)
+1..9
+*** t3500-cherry.sh ***
+ok 1 - prepare repository with topic branch, and check cherry finds the 2 patches from there
+ok 2 - check that cherry with limit returns only the top patch
+ok 3 - cherry-pick one of the 2 patches, and check cherry recognized one and only one as new
+# passed all 3 test(s)
+1..3
+*** t3501-revert-cherry-pick.sh ***
+ok 1 - setup
+ok 2 - cherry-pick --nonsense
+ok 3 - revert --nonsense
+ok 4 - cherry-pick after renaming branch
+ok 5 - revert after renaming branch
+ok 6 - cherry-pick on stat-dirty working tree
+ok 7 - revert forbidden on dirty working tree
+# passed all 7 test(s)
+1..7
+*** t3502-cherry-pick-merge.sh ***
+ok 1 - setup
+ok 2 - cherry-pick a non-merge with -m should fail
+ok 3 - cherry pick a merge without -m should fail
+ok 4 - cherry pick a merge (1)
+ok 5 - cherry pick a merge (2)
+ok 6 - cherry pick a merge relative to nonexistent parent should fail
+ok 7 - revert a non-merge with -m should fail
+ok 8 - revert a merge without -m should fail
+ok 9 - revert a merge (1)
+ok 10 - revert a merge (2)
+ok 11 - revert a merge relative to nonexistent parent should fail
+# passed all 11 test(s)
+1..11
+*** t3503-cherry-pick-root.sh ***
+ok 1 - setup
+ok 2 - cherry-pick a root commit
+ok 3 - revert a root commit
+ok 4 - cherry-pick a root commit with an external strategy
+ok 5 - revert a root commit with an external strategy
+ok 6 - cherry-pick two root commits
+# passed all 6 test(s)
+1..6
+*** t3504-cherry-pick-rerere.sh ***
+ok 1 - setup
+ok 2 - conflicting merge
+ok 3 - fixup
+ok 4 - cherry-pick conflict
+ok 5 - reconfigure
+ok 6 - cherry-pick conflict without rerere
+# passed all 6 test(s)
+1..6
+*** t3505-cherry-pick-empty.sh ***
+ok 1 - setup
+ok 2 - cherry-pick an empty commit
+ok 3 - index lockfile was removed
+ok 4 - cherry-pick a commit with an empty message
+ok 5 - index lockfile was removed
+# passed all 5 test(s)
+1..5
+*** t3506-cherry-pick-ff.sh ***
+ok 1 - setup
+ok 2 - cherry-pick using --ff fast forwards
+ok 3 - cherry-pick not using --ff does not fast forwards
+ok 4 - merge setup
+ok 5 - cherry-pick a non-merge with --ff and -m should fail
+ok 6 - cherry pick a merge with --ff but without -m should fail
+ok 7 - cherry pick with --ff a merge (1)
+ok 8 - cherry pick with --ff a merge (2)
+ok 9 - cherry pick a merge relative to nonexistent parent with --ff should fail
+ok 10 - cherry pick a root commit with --ff
+# passed all 10 test(s)
+1..10
+*** t3507-cherry-pick-conflict.sh ***
+ok 1 - setup
+ok 2 - failed cherry-pick does not advance HEAD
+ok 3 - advice from failed cherry-pick
+ok 4 - failed cherry-pick sets CHERRY_PICK_HEAD
+ok 5 - successful cherry-pick does not set CHERRY_PICK_HEAD
+ok 6 - cherry-pick --no-commit does not set CHERRY_PICK_HEAD
+ok 7 - cherry-pick w/dirty tree does not set CHERRY_PICK_HEAD
+ok 8 - cherry-pick --strategy=resolve w/dirty tree does not set CHERRY_PICK_HEAD
+ok 9 - GIT_CHERRY_PICK_HELP suppresses CHERRY_PICK_HEAD
+ok 10 - git reset clears CHERRY_PICK_HEAD
+ok 11 - failed commit does not clear CHERRY_PICK_HEAD
+ok 12 - cancelled commit does not clear CHERRY_PICK_HEAD
+ok 13 - successful commit clears CHERRY_PICK_HEAD
+ok 14 - failed cherry-pick produces dirty index
+ok 15 - failed cherry-pick registers participants in index
+ok 16 - failed cherry-pick describes conflict in work tree
+ok 17 - diff3 -m style
+ok 18 - revert also handles conflicts sanely
+ok 19 - failed revert sets REVERT_HEAD
+ok 20 - successful revert does not set REVERT_HEAD
+ok 21 - revert --no-commit sets REVERT_HEAD
+ok 22 - revert w/dirty tree does not set REVERT_HEAD
+ok 23 - GIT_CHERRY_PICK_HELP does not suppress REVERT_HEAD
+ok 24 - git reset clears REVERT_HEAD
+ok 25 - failed commit does not clear REVERT_HEAD
+ok 26 - revert conflict, diff3 -m style
+# passed all 26 test(s)
+1..26
+*** t3508-cherry-pick-many-commits.sh ***
+ok 1 - setup
+ok 2 - cherry-pick first..fourth works
+ok 3 - cherry-pick --strategy resolve first..fourth works
+ok 4 - cherry-pick --ff first..fourth works
+ok 5 - cherry-pick -n first..fourth works
+ok 6 - revert first..fourth works
+ok 7 - revert ^first fourth works
+ok 8 - revert fourth fourth~1 fourth~2 works
+ok 9 - cherry-pick -3 fourth works
+ok 10 - cherry-pick --stdin works
+# passed all 10 test(s)
+1..10
+*** t3509-cherry-pick-merge-df.sh ***
+ok 1 - Initialize repository
+ok 2 - Setup rename across paths each below D/F conflicts
+ok 3 - Cherry-pick succeeds with rename across D/F conflicts
+ok 4 - Setup rename with file on one side matching directory name on other
+ok 5 - Cherry-pick succeeds with was_a_dir/file -> was_a_dir (resolve)
+ok 6 - Cherry-pick succeeds with was_a_dir/file -> was_a_dir (recursive)
+ok 7 - Setup rename with file on one side matching different dirname on other
+ok 8 - Cherry-pick with rename to different D/F conflict succeeds (resolve)
+ok 9 - Cherry-pick with rename to different D/F conflict succeeds (recursive)
+# passed all 9 test(s)
+1..9
+*** t3510-cherry-pick-sequence.sh ***
+ok 1 - setup
+ok 2 - cherry-pick persists data on failure
+ok 3 - cherry-pick mid-cherry-pick-sequence
+ok 4 - cherry-pick persists opts correctly
+ok 5 - cherry-pick cleans up sequencer state upon success
+ok 6 - --quit does not complain when no cherry-pick is in progress
+ok 7 - --abort requires cherry-pick in progress
+ok 8 - --quit cleans up sequencer state
+ok 9 - --quit keeps HEAD and conflicted index intact
+ok 10 - --abort to cancel multiple cherry-pick
+ok 11 - --abort to cancel single cherry-pick
+ok 12 - cherry-pick --abort to cancel multiple revert
+ok 13 - revert --abort works, too
+ok 14 - --abort to cancel single revert
+ok 15 - --abort keeps unrelated change, easy case
+ok 16 - --abort refuses to clobber unrelated change, harder case
+ok 17 - cherry-pick still writes sequencer state when one commit is left
+ok 18 - --abort after last commit in sequence
+ok 19 - cherry-pick does not implicitly stomp an existing operation
+ok 20 - --continue complains when no cherry-pick is in progress
+ok 21 - --continue complains when there are unresolved conflicts
+ok 22 - --continue of single cherry-pick
+ok 23 - --continue of single revert
+ok 24 - --continue after resolving conflicts
+ok 25 - --continue after resolving conflicts and committing
+ok 26 - --continue asks for help after resolving patch to nil
+ok 27 - follow advice and skip nil patch
+ok 28 - --continue respects opts
+ok 29 - --continue of single-pick respects -x
+ok 30 - --continue respects -x in first commit in multi-pick
+ok 31 - --signoff is not automatically propagated to resolved conflict
+ok 32 - --signoff dropped for implicit commit of resolution, multi-pick case
+ok 33 - sign-off needs to be reaffirmed after conflict resolution, single-pick case
+ok 34 - malformed instruction sheet 1
+ok 35 - malformed instruction sheet 2
+ok 36 - empty commit set
+ok 37 - malformed instruction sheet 3
+ok 38 - instruction sheet, fat-fingers version
+ok 39 - commit descriptions in insn sheet are optional
+# passed all 39 test(s)
+1..39
+*** t3600-rm.sh ***
+ok 1 - Initialize test directory
+ok 2 - add files with funny names
+ok 3 - Pre-check that foo exists and is in index before git rm foo
+ok 4 - Test that git rm foo succeeds
+ok 5 - Test that git rm --cached foo succeeds if the index matches the file
+ok 6 - Test that git rm --cached foo succeeds if the index matches the file
+ok 7 - Test that git rm --cached foo fails if the index matches neither the file nor HEAD
+ok 8 - Test that git rm --cached -f foo works in case where --cached only did not
+ok 9 - Post-check that foo exists but is not in index after git rm foo
+ok 10 - Pre-check that bar exists and is in index before "git rm bar"
+ok 11 - Test that "git rm bar" succeeds
+ok 12 - Post-check that bar does not exist and is not in index after "git rm -f bar"
+ok 13 - Test that "git rm -- -q" succeeds (remove a file that looks like an option)
+ok 14 - Test that "git rm -f" succeeds with embedded space, tab, or newline characters.
+ok 15 - Test that "git rm -f" fails if its rm fails
+ok 16 - When the rm in "git rm -f" fails, it should not remove the file from the index
+ok 17 - Remove nonexistent file with --ignore-unmatch
+ok 18 - "rm" command printed
+ok 19 - "rm" command suppressed with --quiet
+ok 20 - Re-add foo and baz
+ok 21 - Modify foo -- rm should refuse
+ok 22 - Modified foo -- rm -f should work
+ok 23 - Re-add foo and baz for HEAD tests
+ok 24 - foo is different in index from HEAD -- rm should refuse
+ok 25 - but with -f it should work.
+ok 26 - refuse to remove cached empty file with modifications
+ok 27 - remove intent-to-add file without --force
+ok 28 - Recursive test setup
+ok 29 - Recursive without -r fails
+ok 30 - Recursive with -r but dirty
+ok 31 - Recursive with -r -f
+ok 32 - Remove nonexistent file returns nonzero exit status
+ok 33 - Call "rm" from outside the work tree
+ok 34 - refresh index before checking if it is up-to-date
+ok 35 - choking "git rm" should not let it die with cruft
+ok 36 - rm removes subdirectories recursively
+# passed all 36 test(s)
+1..36
+*** t3700-add.sh ***
+ok 1 - Test of git add
+ok 2 - Post-check that foo is in the index
+ok 3 - Test that "git add -- -q" works
+ok 4 - git add: Test that executable bit is not used if core.filemode=0
+ok 5 - git add: filemode=0 should not get confused by symlink
+ok 6 - git update-index --add: Test that executable bit is not used...
+ok 7 - git add: filemode=0 should not get confused by symlink
+ok 8 - git update-index --add: Test that executable bit is not used...
+ok 9 - .gitignore test setup
+ok 10 - .gitignore is honored
+ok 11 - error out when attempting to add ignored ones without -f
+ok 12 - error out when attempting to add ignored ones without -f
+ok 13 - add ignored ones with -f
+ok 14 - add ignored ones with -f
+ok 15 - add ignored ones with -f
+ok 16 - .gitignore with subdirectory
+ok 17 - check correct prefix detection
+ok 18 - git add with filemode=0, symlinks=0, and unmerged entries
+ok 19 - git add with filemode=0, symlinks=0 prefers stage 2 over stage 1
+ok 20 - git add --refresh
+ok 21 - git add should fail atomically upon an unreadable file
+ok 22 - git add --ignore-errors
+ok 23 - git add (add.ignore-errors)
+ok 24 - git add (add.ignore-errors = false)
+ok 25 - --no-ignore-errors overrides config
+ok 26 - git add 'fo\[ou\]bar' ignores foobar
+ok 27 - git add to resolve conflicts on otherwise ignored path
+ok 28 - "add non-existent" should fail
+ok 29 - git add --dry-run of existing changed file
+ok 30 - git add --dry-run of non-existing file
+ok 31 - git add --dry-run of an existing file output
+ok 32 - git add --dry-run --ignore-missing of non-existing file
+ok 33 - git add --dry-run --ignore-missing of non-existing file output
+# passed all 33 test(s)
+1..33
+*** t3701-add-interactive.sh ***
+ok 1 - setup (initial)
+ok 2 - status works (initial)
+ok 3 - setup expected
+ok 4 - diff works (initial)
+ok 5 - revert works (initial)
+ok 6 - setup (commit)
+ok 7 - status works (commit)
+ok 8 - setup expected
+ok 9 - diff works (commit)
+ok 10 - revert works (commit)
+ok 11 - setup expected
+ok 12 - setup fake editor
+ok 13 - dummy edit works
+ok 14 - setup patch
+ok 15 - setup fake editor
+ok 16 - bad edit rejected
+ok 17 - setup patch
+ok 18 - garbage edit rejected
+ok 19 - setup patch
+ok 20 - setup expected
+ok 21 - real edit works
+ok 22 - skip files similarly as commit -a
+ok 23 - patch does not affect mode
+ok 24 - stage mode but not hunk
+ok 25 - stage mode and hunk
+ok 26 - setup again
+ok 27 - setup patch
+ok 28 - setup expected
+ok 29 - add first line works
+ok 30 - setup expected
+ok 31 - deleting a non-empty file
+ok 32 - setup expected
+ok 33 - deleting an empty file
+ok 34 - split hunk setup
+ok 35 - split hunk "add -p (edit)"
+# passed all 35 test(s)
+1..35
+*** t3702-add-edit.sh ***
+ok 1 - setup
+ok 2 - add -e
+# passed all 2 test(s)
+1..2
+*** t3703-add-magic-pathspec.sh ***
+ok 1 - setup
+ok 2 - add :/
+ok 3 - add :/anothersub
+ok 4 - add :/non-existent
+ok 5 - a file with the same (long) magic name exists
+ok 6 - a file with the same (short) magic name exists
+# passed all 6 test(s)
+1..6
+*** t3800-mktag.sh ***
+ok 1 - setup
+ok 2 - Tag object length check
+ok 3 - "object" line label check
+ok 4 - "object" line SHA1 check
+ok 5 - "type" line label check
+ok 6 - "type" line eol check
+ok 7 - "tag" line label check #1
+ok 8 - "tag" line label check #2
+ok 9 - "type" line type-name length check
+ok 10 - verify object (SHA1/type) check
+ok 11 - verify tag-name check
+ok 12 - "tagger" line label check #1
+ok 13 - "tagger" line label check #2
+ok 14 - disallow missing tag author name
+ok 15 - disallow malformed tagger
+ok 16 - allow empty tag email
+ok 17 - disallow spaces in tag email
+ok 18 - disallow missing tag timestamp
+ok 19 - detect invalid tag timestamp1
+ok 20 - detect invalid tag timestamp2
+ok 21 - detect invalid tag timezone1
+ok 22 - detect invalid tag timezone2
+ok 23 - detect invalid tag timezone3
+ok 24 - detect invalid header entry
+ok 25 - create valid tag
+ok 26 - check mytag
+# passed all 26 test(s)
+1..26
+*** t3900-i18n-commit.sh ***
+ok 1 - setup
+ok 2 - no encoding header for base case
+not ok 3 - UTF-16 refused because of NULs # TODO known breakage
+ok 4 - ISO8859-1 setup
+ok 5 - eucJP setup
+ok 6 - ISO-2022-JP setup
+ok 7 - check encoding header for ISO8859-1
+ok 8 - check encoding header for eucJP
+ok 9 - check encoding header for ISO-2022-JP
+ok 10 - config to remove customization
+ok 11 - ISO8859-1 should be shown in UTF-8 now
+ok 12 - eucJP should be shown in UTF-8 now
+ok 13 - ISO-2022-JP should be shown in UTF-8 now
+ok 14 - config to add customization
+ok 15 - ISO8859-1 should be shown in itself now
+ok 16 - eucJP should be shown in itself now
+ok 17 - ISO-2022-JP should be shown in itself now
+ok 18 - config to tweak customization
+ok 19 - ISO8859-1 should be shown in UTF-8 now
+ok 20 - eucJP should be shown in UTF-8 now
+ok 21 - ISO-2022-JP should be shown in UTF-8 now
+ok 22 - eucJP should be shown in eucJP now
+ok 23 - ISO-2022-JP should be shown in eucJP now
+ok 24 - eucJP should be shown in ISO-2022-JP now
+ok 25 - ISO-2022-JP should be shown in ISO-2022-JP now
+ok 26 - No conversion with ISO8859-1
+ok 27 - No conversion with eucJP
+ok 28 - No conversion with ISO-2022-JP
+ok 29 - commit --fixup with eucJP encoding
+ok 30 - commit --squash with ISO-2022-JP encoding
+# still have 1 known breakage(s)
+# passed all remaining 29 test(s)
+1..30
+*** t3901-i18n-patch.sh ***
+ok 1 - setup
+ok 2 - format-patch output (ISO-8859-1)
+ok 3 - format-patch output (UTF-8)
+ok 4 - rebase (U/U)
+ok 5 - rebase (U/L)
+ok 6 - rebase (L/L)
+ok 7 - rebase (L/U)
+ok 8 - cherry-pick(U/U)
+ok 9 - cherry-pick(L/L)
+ok 10 - cherry-pick(U/L)
+ok 11 - cherry-pick(L/U)
+ok 12 - rebase --merge (U/U)
+ok 13 - rebase --merge (U/L)
+ok 14 - rebase --merge (L/L)
+ok 15 - rebase --merge (L/U)
+# passed all 15 test(s)
+1..15
+*** t3902-quoted.sh ***
+ok 1 - setup
+ok 2 - setup expected files
+ok 3 - check fully quoted output from ls-files
+ok 4 - check fully quoted output from diff-files
+ok 5 - check fully quoted output from diff-index
+ok 6 - check fully quoted output from diff-tree
+ok 7 - check fully quoted output from ls-tree
+ok 8 - setting core.quotepath
+ok 9 - check fully quoted output from ls-files
+ok 10 - check fully quoted output from diff-files
+ok 11 - check fully quoted output from diff-index
+ok 12 - check fully quoted output from diff-tree
+ok 13 - check fully quoted output from ls-tree
+# passed all 13 test(s)
+1..13
+*** t3903-stash.sh ***
+ok 1 - stash some dirty working directory
+ok 2 - parents of stash
+ok 3 - applying bogus stash does nothing
+ok 4 - apply does not need clean working directory
+ok 5 - apply does not clobber working directory changes
+ok 6 - apply stashed changes
+ok 7 - apply stashed changes (including index)
+ok 8 - unstashing in a subdirectory
+ok 9 - drop top stash
+ok 10 - drop middle stash
+ok 11 - stash pop
+ok 12 - stash branch
+ok 13 - apply -q is quiet
+ok 14 - save -q is quiet
+ok 15 - pop -q is quiet
+ok 16 - pop -q --index works and is quiet
+ok 17 - drop -q is quiet
+ok 18 - stash -k
+ok 19 - stash --no-keep-index
+ok 20 - stash --invalid-option
+ok 21 - stash an added file
+ok 22 - stash rm then recreate
+ok 23 - stash rm and ignore
+ok 24 - stash rm and ignore (stage .gitignore)
+ok 25 - stash file to symlink
+ok 26 - stash file to symlink (stage rm)
+ok 27 - stash file to symlink (full stage)
+ok 28 - stash symlink to file
+ok 29 - stash symlink to file (stage rm)
+ok 30 - stash symlink to file (full stage)
+not ok 31 - stash directory to file # TODO known breakage
+not ok 32 - stash file to directory # TODO known breakage
+ok 33 - stash branch - no stashes on stack, stash-like argument
+ok 34 - stash branch - stashes on stack, stash-like argument
+ok 35 - stash show - stashes on stack, stash-like argument
+ok 36 - stash show -p - stashes on stack, stash-like argument
+ok 37 - stash show - no stashes on stack, stash-like argument
+ok 38 - stash show -p - no stashes on stack, stash-like argument
+ok 39 - stash drop - fail early if specified stash is not a stash reference
+ok 40 - stash pop - fail early if specified stash is not a stash reference
+ok 41 - ref with non-existent reflog
+ok 42 - invalid ref of the form [email protected]{n}, n >= N
+ok 43 - stash branch should not drop the stash if the branch exists
+ok 44 - stash apply shows status same as git status (relative to current directory)
+ok 45 - stash where working directory contains "HEAD" file
+# still have 2 known breakage(s)
+# passed all remaining 43 test(s)
+1..45
+*** t3904-stash-patch.sh ***
+ok 1 - setup
+ok 2 - saying "n" does nothing
+ok 3 - git stash -p
+ok 4 - git stash -p --no-keep-index
+ok 5 - git stash --no-keep-index -p
+ok 6 - none of this moved HEAD
+# passed all 6 test(s)
+1..6
+*** t3905-stash-include-untracked.sh ***
+ok 1 - stash save --include-untracked some dirty working directory
+ok 2 - stash save --include-untracked cleaned the untracked files
+ok 3 - stash save --include-untracked stashed the untracked files
+ok 4 - stash save --patch --include-untracked fails
+ok 5 - stash save --patch --all fails
+ok 6 - stash pop after save --include-untracked leaves files untracked again
+ok 7 - stash save -u dirty index
+ok 8 - stash save --include-untracked dirty index got stashed
+ok 9 - stash save --include-untracked -q is quiet
+ok 10 - stash save --include-untracked removed files
+ok 11 - stash save --include-untracked removed files got stashed
+ok 12 - stash save --include-untracked respects .gitignore
+ok 13 - stash save -u can stash with only untracked files different
+ok 14 - stash save --all does not respect .gitignore
+ok 15 - stash save --all is stash poppable
+# passed all 15 test(s)
+1..15
+*** t4000-diff-format.sh ***
+ok 1 - update-index --add two files with and without +x.
+ok 2 - git diff-files -p after editing work tree.
+ok 3 - validate git diff-files -p output.
+# passed all 3 test(s)
+1..3
+*** t4001-diff-rename.sh ***
+ok 1 - update-index --add a file.
+ok 2 - write that tree.
+ok 3 - renamed and edited the file.
+ok 4 - git diff-index -p -M after rename and editing.
+ok 5 - validate the output.
+ok 6 - favour same basenames over different ones
+ok 7 - favour same basenames even with minor differences
+ok 8 - setup for many rename source candidates
+# passed all 8 test(s)
+1..8
+*** t4002-diff-basic.sh ***
+ok 1 - adding test file NN and Z/NN
+ok 2 - adding test file ND and Z/ND
+ok 3 - adding test file NM and Z/NM
+ok 4 - adding test file DN and Z/DN
+ok 5 - adding test file DD and Z/DD
+ok 6 - adding test file DM and Z/DM
+ok 7 - adding test file MN and Z/MN
+ok 8 - adding test file MD and Z/MD
+ok 9 - adding test file MM and Z/MM
+ok 10 - adding test file SS
+ok 11 - adding test file TT
+ok 12 - prepare initial tree
+ok 13 - change in branch A (removal)
+ok 14 - change in branch A (modification)
+ok 15 - change in branch A (modification)
+ok 16 - change in branch A (modification)
+ok 17 - change in branch A (modification)
+ok 18 - change in branch A (modification)
+ok 19 - change in branch A (modification)
+ok 20 - change in branch A (addition)
+ok 21 - change in branch A (addition)
+ok 22 - change in branch A (addition)
+ok 23 - change in branch A (addition)
+ok 24 - change in branch A (addition)
+ok 25 - change in branch A (edit)
+ok 26 - change in branch A (change file to directory)
+ok 27 - recording branch A tree
+ok 28 - reading original tree and checking out
+ok 29 - change in branch B (removal)
+ok 30 - change in branch B (modification)
+ok 31 - change in branch B (modification)
+ok 32 - change in branch B (modification)
+ok 33 - change in branch B (modification)
+ok 34 - change in branch B (modification)
+ok 35 - change in branch B (modification)
+ok 36 - change in branch B (addition)
+ok 37 - change in branch B (addition)
+ok 38 - change in branch B (addition)
+ok 39 - change in branch B (addition)
+ok 40 - change in branch B (addition and modification)
+ok 41 - change in branch B (modification)
+ok 42 - change in branch B (addition of a file to conflict with directory)
+ok 43 - recording branch B tree
+ok 44 - keep contents of 3 trees for easy access
+ok 45 - diff-tree of known trees.
+ok 46 - diff-tree of known trees.
+ok 47 - diff-tree of known trees.
+ok 48 - diff-tree of known trees.
+ok 49 - diff-tree of known trees.
+ok 50 - diff-tree of known trees.
+ok 51 - diff-tree --stdin of known trees.
+ok 52 - diff-tree --stdin of known trees.
+ok 53 - diff-cache O with A in cache
+ok 54 - diff-cache O with B in cache
+ok 55 - diff-cache A with B in cache
+ok 56 - diff-files with O in cache and A checked out
+ok 57 - diff-files with O in cache and B checked out
+ok 58 - diff-files with A in cache and B checked out
+ok 59 - diff-tree O A == diff-tree -R A O
+ok 60 - diff-tree -r O A == diff-tree -r -R A O
+ok 61 - diff-tree B A == diff-tree -R A B
+ok 62 - diff-tree -r B A == diff-tree -r -R A B
+ok 63 - diff can read from stdin
+# passed all 63 test(s)
+1..63
+*** t4003-diff-rename-1.sh ***
+ok 1 - prepare reference tree
+ok 2 - prepare work tree
+ok 3 - validate output from rename/copy detection (#1)
+ok 4 - prepare work tree again
+ok 5 - validate output from rename/copy detection (#2)
+ok 6 - prepare work tree once again
+ok 7 - validate output from rename/copy detection (#3)
+# passed all 7 test(s)
+1..7
+*** t4004-diff-rename-symlink.sh ***
+ok 1 - prepare reference tree
+ok 2 - prepare work tree
+ok 3 - setup diff output
+ok 4 - validate diff output
+# passed all 4 test(s)
+1..4
+*** t4005-diff-rename-2.sh ***
+ok 1 - prepare reference tree
+ok 2 - prepare work tree
+ok 3 - validate output from rename/copy detection (#1)
+ok 4 - prepare work tree again
+ok 5 - validate output from rename/copy detection (#2)
+ok 6 - prepare work tree once again
+ok 7 - validate output from rename/copy detection (#3)
+# passed all 7 test(s)
+1..7
+*** t4006-diff-mode.sh ***
+ok 1 - setup
+ok 2 - chmod
+ok 3 - verify
+# passed all 3 test(s)
+1..3
+*** t4007-rename-3.sh ***
+ok 1 - prepare reference tree
+ok 2 - prepare work tree
+ok 3 - copy detection
+ok 4 - copy detection, cached
+ok 5 - copy, limited to a subtree
+ok 6 - tweak work tree
+ok 7 - rename detection
+ok 8 - rename, limited to a subtree
+# passed all 8 test(s)
+1..8
+*** t4008-diff-break-rewrite.sh ***
+ok 1 - setup
+ok 2 - change file1 with copy-edit of file0 and remove file0
+ok 3 - run diff with -B
+ok 4 - validate result of -B (#1)
+ok 5 - run diff with -B and -M
+ok 6 - validate result of -B -M (#2)
+ok 7 - swap file0 and file1
+ok 8 - run diff with -B
+ok 9 - validate result of -B (#3)
+ok 10 - run diff with -B and -M
+ok 11 - validate result of -B -M (#4)
+ok 12 - make file0 into something completely different
+ok 13 - run diff with -B
+ok 14 - validate result of -B (#5)
+ok 15 - run diff with -B -M
+ok 16 - validate result of -B -M (#6)
+ok 17 - run diff with -M
+ok 18 - validate result of -M (#7)
+ok 19 - file1 edited to look like file0 and file0 rename-edited to file2
+ok 20 - run diff with -B
+ok 21 - validate result of -B (#8)
+ok 22 - run diff with -B -C
+ok 23 - validate result of -B -M (#9)
+# passed all 23 test(s)
+1..23
+*** t4009-diff-rename-4.sh ***
+ok 1 - prepare reference tree
+ok 2 - prepare work tree
+ok 3 - validate output from rename/copy detection (#1)
+ok 4 - prepare work tree again
+ok 5 - validate output from rename/copy detection (#2)
+ok 6 - prepare work tree once again
+ok 7 - validate output from rename/copy detection (#3)
+# passed all 7 test(s)
+1..7
+*** t4010-diff-pathspec.sh ***
+ok 1 - setup
+ok 2 - limit to path should show nothing
+ok 3 - limit to path1 should show path1/file1
+ok 4 - limit to path1/ should show path1/file1
+ok 5 - "*file1" should show path1/file1
+ok 6 - limit to file0 should show file0
+ok 7 - limit to file0/ should emit nothing.
+ok 8 - diff-tree pathspec
+ok 9 - diff-tree with wildcard shows dir also matches
+ok 10 - diff-tree -r with wildcard
+ok 11 - diff-tree with wildcard shows dir also matches
+ok 12 - diff-tree -r with wildcard from beginning
+ok 13 - diff-tree -r with wildcard
+# passed all 13 test(s)
+1..13
+*** t4011-diff-symlink.sh ***
+ok 1 - diff new symlink
+ok 2 - diff unchanged symlink
+ok 3 - diff removed symlink
+ok 4 - diff identical, but newly created symlink
+ok 5 - diff different symlink
+ok 6 - diff symlinks with non-existing targets
+ok 7 - setup symlinks with attributes
+ok 8 - symlinks do not respect userdiff config by path
+# passed all 8 test(s)
+1..8
+*** t4012-diff-binary.sh ***
+ok 1 - prepare repository
+ok 2 - diff without --binary
+ok 3 - diff with --binary
+ok 4 - apply detecting corrupt patch correctly
+ok 5 - apply detecting corrupt patch correctly
+ok 6 - initial commit
+ok 7 - diff-index with --binary
+ok 8 - apply binary patch
+ok 9 - diff --no-index with binary creation
+# passed all 9 test(s)
+1..9
+*** t4013-diff-various.sh ***
+ok 1 - setup
+ok 2 - git diff-tree initial
+ok 3 - git diff-tree -r initial
+ok 4 - git diff-tree -r --abbrev initial
+ok 5 - git diff-tree -r --abbrev=4 initial
+ok 6 - git diff-tree --root initial
+ok 7 - git diff-tree --root --abbrev initial
+ok 8 - git diff-tree --root -r initial
+ok 9 - git diff-tree --root -r --abbrev initial
+ok 10 - git diff-tree --root -r --abbrev=4 initial
+ok 11 - git diff-tree -p initial
+ok 12 - git diff-tree --root -p initial
+ok 13 - git diff-tree --patch-with-stat initial
+ok 14 - git diff-tree --root --patch-with-stat initial
+ok 15 - git diff-tree --patch-with-raw initial
+ok 16 - git diff-tree --root --patch-with-raw initial
+ok 17 - git diff-tree --pretty initial
+ok 18 - git diff-tree --pretty --root initial
+ok 19 - git diff-tree --pretty -p initial
+ok 20 - git diff-tree --pretty --stat initial
+ok 21 - git diff-tree --pretty --summary initial
+ok 22 - git diff-tree --pretty --stat --summary initial
+ok 23 - git diff-tree --pretty --root -p initial
+ok 24 - git diff-tree --pretty --root --stat initial
+ok 25 - git diff-tree --pretty --root --summary initial
+ok 26 - git diff-tree --pretty --root --summary -r initial
+ok 27 - git diff-tree --pretty --root --stat --summary initial
+ok 28 - git diff-tree --pretty --patch-with-stat initial
+ok 29 - git diff-tree --pretty --root --patch-with-stat initial
+ok 30 - git diff-tree --pretty --patch-with-raw initial
+ok 31 - git diff-tree --pretty --root --patch-with-raw initial
+ok 32 - git diff-tree --pretty=oneline initial
+ok 33 - git diff-tree --pretty=oneline --root initial
+ok 34 - git diff-tree --pretty=oneline -p initial
+ok 35 - git diff-tree --pretty=oneline --root -p initial
+ok 36 - git diff-tree --pretty=oneline --patch-with-stat initial
+ok 37 - git diff-tree --pretty=oneline --root --patch-with-stat initial
+ok 38 - git diff-tree --pretty=oneline --patch-with-raw initial
+ok 39 - git diff-tree --pretty=oneline --root --patch-with-raw initial
+ok 40 - git diff-tree --pretty side
+ok 41 - git diff-tree --pretty -p side
+ok 42 - git diff-tree --pretty --patch-with-stat side
+ok 43 - git diff-tree master
+ok 44 - git diff-tree -p master
+ok 45 - git diff-tree -p -m master
+ok 46 - git diff-tree -c master
+ok 47 - git diff-tree -c --abbrev master
+ok 48 - git diff-tree --cc master
+ok 49 - git diff-tree -c --stat master
+ok 50 - git diff-tree --cc --stat master
+ok 51 - git diff-tree -c --stat --summary master
+ok 52 - git diff-tree --cc --stat --summary master
+ok 53 - git diff-tree -c --stat --summary side
+ok 54 - git diff-tree --cc --stat --summary side
+ok 55 - git diff-tree --cc --patch-with-stat master
+ok 56 - git diff-tree --cc --patch-with-stat --summary master
+ok 57 - git diff-tree --cc --patch-with-stat --summary side
+ok 58 - git log master
+ok 59 - git log -p master
+ok 60 - git log --root master
+ok 61 - git log --root -p master
+ok 62 - git log --patch-with-stat master
+ok 63 - git log --root --patch-with-stat master
+ok 64 - git log --root --patch-with-stat --summary master
+ok 65 - git log --root -c --patch-with-stat --summary master
+ok 66 - git log --root --cc --patch-with-stat --summary master
+ok 67 - git log -p --first-parent master
+ok 68 - git log -m -p --first-parent master
+ok 69 - git log -m -p master
+ok 70 - git log -SF master
+ok 71 - git log -S F master
+ok 72 - git log -SF -p master
+ok 73 - git log -SF master --max-count=0
+ok 74 - git log -SF master --max-count=1
+ok 75 - git log -SF master --max-count=2
+ok 76 - git log -GF master
+ok 77 - git log -GF -p master
+ok 78 - git log -GF -p --pickaxe-all master
+ok 79 - git log --decorate --all
+ok 80 - git log --decorate=full --all
+ok 81 - git rev-list --parents HEAD
+ok 82 - git rev-list --children HEAD
+ok 83 - git whatchanged master
+ok 84 - git whatchanged -p master
+ok 85 - git whatchanged --root master
+ok 86 - git whatchanged --root -p master
+ok 87 - git whatchanged --patch-with-stat master
+ok 88 - git whatchanged --root --patch-with-stat master
+ok 89 - git whatchanged --root --patch-with-stat --summary master
+ok 90 - git whatchanged --root -c --patch-with-stat --summary master
+ok 91 - git whatchanged --root --cc --patch-with-stat --summary master
+ok 92 - git whatchanged -SF master
+ok 93 - git whatchanged -SF -p master
+ok 94 - git log --patch-with-stat master -- dir/
+ok 95 - git whatchanged --patch-with-stat master -- dir/
+ok 96 - git log --patch-with-stat --summary master -- dir/
+ok 97 - git whatchanged --patch-with-stat --summary master -- dir/
+ok 98 - git show initial
+ok 99 - git show --root initial
+ok 100 - git show side
+ok 101 - git show master
+ok 102 - git show -c master
+ok 103 - git show -m master
+ok 104 - git show --first-parent master
+ok 105 - git show --stat side
+ok 106 - git show --stat --summary side
+ok 107 - git show --patch-with-stat side
+ok 108 - git show --patch-with-raw side
+ok 109 - git show --patch-with-stat --summary side
+ok 110 - git format-patch --stdout initial..side
+ok 111 - git format-patch --stdout initial..master^
+ok 112 - git format-patch --stdout initial..master
+ok 113 - git format-patch --stdout --no-numbered initial..master
+ok 114 - git format-patch --stdout --numbered initial..master
+ok 115 - git format-patch --attach --stdout initial..side
+ok 116 - git format-patch --attach --stdout --suffix=.diff initial..side
+ok 117 - git format-patch --attach --stdout initial..master^
+ok 118 - git format-patch --attach --stdout initial..master
+ok 119 - git format-patch --inline --stdout initial..side
+ok 120 - git format-patch --inline --stdout initial..master^
+ok 121 - git format-patch --inline --stdout --numbered-files initial..master
+ok 122 - git format-patch --inline --stdout initial..master
+ok 123 - git format-patch --inline --stdout --subject-prefix=TESTCASE initial..master
+ok 124 - git config format.subjectprefix DIFFERENT_PREFIX
+ok 125 - git format-patch --inline --stdout initial..master^^
+ok 126 - git format-patch --stdout --cover-letter -n initial..master^
+ok 127 - git diff --abbrev initial..side
+ok 128 - git diff -r initial..side
+ok 129 - git diff --stat initial..side
+ok 130 - git diff -r --stat initial..side
+ok 131 - git diff initial..side
+ok 132 - git diff --patch-with-stat initial..side
+ok 133 - git diff --patch-with-raw initial..side
+ok 134 - git diff --patch-with-stat -r initial..side
+ok 135 - git diff --patch-with-raw -r initial..side
+ok 136 - git diff --name-status dir2 dir
+ok 137 - git diff --no-index --name-status dir2 dir
+ok 138 - git diff --no-index --name-status -- dir2 dir
+ok 139 - git diff --no-index dir dir3
+ok 140 - git diff master master^ side
+ok 141 - git diff --dirstat master~1 master~2
+ok 142 - git diff --dirstat initial rearrange
+ok 143 - git diff --dirstat-by-file initial rearrange
+ok 144 - log -S requires an argument
+ok 145 - diff --cached on unborn branch
+ok 146 - diff --cached -- file on unborn branch
+# passed all 146 test(s)
+1..146
+*** t4014-format-patch.sh ***
+ok 1 - set up terminal for tests
+ok 2 - setup
+ok 3 - format-patch --ignore-if-in-upstream
+ok 4 - format-patch --ignore-if-in-upstream
+ok 5 - format-patch doesn't consider merge commits
+ok 6 - format-patch result applies
+ok 7 - format-patch --ignore-if-in-upstream result applies
+ok 8 - commit did not screw up the log message
+ok 9 - format-patch did not screw up the log message
+ok 10 - replay did not screw up the log message
+ok 11 - extra headers
+ok 12 - extra headers without newlines
+ok 13 - extra headers with multiple To:s
+ok 14 - additional command line cc
+ok 15 - command line headers
+ok 16 - configuration headers and command line headers
+ok 17 - command line To: header
+ok 18 - configuration To: header
+ok 19 - --no-to overrides config.to
+ok 20 - --no-to and --to replaces config.to
+ok 21 - --no-cc overrides config.cc
+ok 22 - --no-add-header overrides config.headers
+ok 23 - multiple files
+ok 24 - no threading
+ok 25 - thread
+ok 26 - thread in-reply-to
+ok 27 - thread cover-letter
+ok 28 - thread cover-letter in-reply-to
+ok 29 - thread explicit shallow
+ok 30 - thread deep
+ok 31 - thread deep in-reply-to
+ok 32 - thread deep cover-letter
+ok 33 - thread deep cover-letter in-reply-to
+ok 34 - thread via config
+ok 35 - thread deep via config
+ok 36 - thread config + override
+ok 37 - thread config + --no-thread
+ok 38 - excessive subject
+ok 39 - cover-letter inherits diff options
+ok 40 - shortlog of cover-letter wraps overly-long onelines
+ok 41 - format-patch respects -U
+ok 42 - format-patch -p suppresses stat
+ok 43 - format-patch from a subdirectory (1)
+ok 44 - format-patch from a subdirectory (2)
+ok 45 - format-patch from a subdirectory (3)
+ok 46 - format-patch --in-reply-to
+ok 47 - format-patch --signoff
+ok 48 - options no longer allowed for format-patch
+ok 49 - format-patch --numstat should produce a patch
+ok 50 - format-patch -- <path>
+ok 51 - format-patch --ignore-if-in-upstream HEAD
+ok 52 - format-patch --signature
+ok 53 - format-patch with format.signature config
+ok 54 - format-patch --signature overrides format.signature
+ok 55 - format-patch --no-signature ignores format.signature
+ok 56 - format-patch --signature --cover-letter
+ok 57 - format.signature="" supresses signatures
+ok 58 - format-patch --no-signature supresses signatures
+ok 59 - format-patch --signature="" supresses signatures
+ok 60 # skip format-patch --stdout paginates (missing TTY)
+ok 61 # skip format-patch --stdout pagination can be disabled (missing TTY)
+ok 62 - format-patch handles multi-line subjects
+ok 63 - format-patch handles multi-line encoded subjects
+ok 64 - format-patch wraps extremely long headers (ascii)
+ok 65 - format-patch wraps extremely long headers (rfc2047)
+ok 66 - format-patch wraps non-quotable headers
+ok 67 - format-patch quotes dot in headers
+ok 68 - format-patch quotes double-quote in headers
+ok 69 - rfc2047-encoded headers also double-quote 822 specials
+ok 70 - subject lines do not have 822 atom-quoting
+ok 71 - subject prefixes have space prepended
+ok 72 - empty subject prefix does not have extra space
+ok 73 - format patch ignores color.ui
+# passed all 73 test(s)
+1..73
+*** t4015-diff-whitespace.sh ***
+ok 1 - Ray's example without options
+ok 2 - Ray's example with -w
+ok 3 - Ray's example with -b
+ok 4 - another test, without options
+ok 5 - another test, with -w
+ok 6 - another test, with -w -b
+ok 7 - another test, with -w --ignore-space-at-eol
+ok 8 - another test, with -w -b --ignore-space-at-eol
+ok 9 - another test, with -b
+ok 10 - another test, with -b --ignore-space-at-eol
+ok 11 - another test, with --ignore-space-at-eol
+ok 12 - check mixed spaces and tabs in indent
+ok 13 - check mixed tabs and spaces in indent
+ok 14 - check with no whitespace errors
+ok 15 - check with trailing whitespace
+ok 16 - check with space before tab in indent
+ok 17 - --check and --exit-code are not exclusive
+ok 18 - --check and --quiet are not exclusive
+ok 19 - check staged with no whitespace errors
+ok 20 - check staged with trailing whitespace
+ok 21 - check staged with space before tab in indent
+ok 22 - check with no whitespace errors (diff-index)
+ok 23 - check with trailing whitespace (diff-index)
+ok 24 - check with space before tab in indent (diff-index)
+ok 25 - check staged with no whitespace errors (diff-index)
+ok 26 - check staged with trailing whitespace (diff-index)
+ok 27 - check staged with space before tab in indent (diff-index)
+ok 28 - check with no whitespace errors (diff-tree)
+ok 29 - check with trailing whitespace (diff-tree)
+ok 30 - check with space before tab in indent (diff-tree)
+ok 31 - check trailing whitespace (trailing-space: off)
+ok 32 - check trailing whitespace (trailing-space: on)
+ok 33 - check space before tab in indent (space-before-tab: off)
+ok 34 - check space before tab in indent (space-before-tab: on)
+ok 35 - check spaces as indentation (indent-with-non-tab: off)
+ok 36 - check spaces as indentation (indent-with-non-tab: on)
+ok 37 - ditto, but tabwidth=9
+ok 38 - check tabs and spaces as indentation (indent-with-non-tab: on)
+ok 39 - ditto, but tabwidth=10
+ok 40 - ditto, but tabwidth=20
+ok 41 - check tabs as indentation (tab-in-indent: off)
+ok 42 - check tabs as indentation (tab-in-indent: on)
+ok 43 - check tabs and spaces as indentation (tab-in-indent: on)
+ok 44 - ditto, but tabwidth=1 (must be irrelevant)
+ok 45 - check tab-in-indent and indent-with-non-tab conflict
+ok 46 - check tab-in-indent excluded from wildcard whitespace attribute
+ok 47 - line numbers in --check output are correct
+ok 48 - checkdiff detects new trailing blank lines (1)
+ok 49 - checkdiff detects new trailing blank lines (2)
+ok 50 - checkdiff allows new blank lines
+ok 51 - whitespace-only changes not reported
+ok 52 - whitespace-only changes reported across renames
+ok 53 - rename empty
+ok 54 - combined diff with autocrlf conversion
+ok 55 - setup diff colors
+ok 56 - diff that introduces a line with only tabs
+# passed all 56 test(s)
+1..56
+*** t4016-diff-quote.sh ***
+ok 1 - setup
+ok 2 - setup expected files
+ok 3 - git diff --summary -M HEAD
+ok 4 - setup expected files
+ok 5 - git diff --stat -M HEAD
+# passed all 5 test(s)
+1..5
+*** t4017-diff-retval.sh ***
+ok 1 - setup
+ok 2 - git diff --quiet -w  HEAD^^ HEAD^
+ok 3 - git diff --quiet HEAD^^ HEAD^
+ok 4 - git diff --quiet -w  HEAD^ HEAD
+ok 5 - git diff-tree HEAD^ HEAD
+ok 6 - git diff-tree HEAD^ HEAD -- a
+ok 7 - git diff-tree HEAD^ HEAD -- b
+ok 8 - echo HEAD | git diff-tree --stdin
+ok 9 - git diff-tree HEAD HEAD
+ok 10 - git diff-files
+ok 11 - git diff-index --cached HEAD
+ok 12 - git diff-index --cached HEAD^
+ok 13 - git diff-index --cached HEAD^
+ok 14 - git diff-tree -Stext HEAD^ HEAD -- b
+ok 15 - git diff-tree -Snot-found HEAD^ HEAD -- b
+ok 16 - git diff-files
+ok 17 - git diff-index --cached HEAD
+ok 18 - --check --exit-code returns 0 for no difference
+ok 19 - --check --exit-code returns 1 for a clean difference
+ok 20 - --check --exit-code returns 3 for a dirty difference
+ok 21 - --check with --no-pager returns 2 for dirty difference
+ok 22 - check should test not just the last line
+ok 23 - check detects leftover conflict markers
+ok 24 - check honors conflict marker length
+# passed all 24 test(s)
+1..24
+*** t4018-diff-funcname.sh ***
+ok 1 - builtin bibtex pattern compiles
+ok 2 - builtin bibtex wordRegex pattern compiles
+ok 3 - builtin cpp pattern compiles
+ok 4 - builtin cpp wordRegex pattern compiles
+ok 5 - builtin csharp pattern compiles
+ok 6 - builtin csharp wordRegex pattern compiles
+ok 7 - builtin fortran pattern compiles
+ok 8 - builtin fortran wordRegex pattern compiles
+ok 9 - builtin html pattern compiles
+ok 10 - builtin html wordRegex pattern compiles
+ok 11 - builtin java pattern compiles
+ok 12 - builtin java wordRegex pattern compiles
+ok 13 - builtin matlab pattern compiles
+ok 14 - builtin matlab wordRegex pattern compiles
+ok 15 - builtin objc pattern compiles
+ok 16 - builtin objc wordRegex pattern compiles
+ok 17 - builtin pascal pattern compiles
+ok 18 - builtin pascal wordRegex pattern compiles
+ok 19 - builtin perl pattern compiles
+ok 20 - builtin perl wordRegex pattern compiles
+ok 21 - builtin php pattern compiles
+ok 22 - builtin php wordRegex pattern compiles
+ok 23 - builtin python pattern compiles
+ok 24 - builtin python wordRegex pattern compiles
+ok 25 - builtin ruby pattern compiles
+ok 26 - builtin ruby wordRegex pattern compiles
+ok 27 - builtin tex pattern compiles
+ok 28 - builtin tex wordRegex pattern compiles
+ok 29 - default behaviour
+ok 30 - set up .gitattributes declaring drivers to test
+ok 31 - preset java pattern
+ok 32 - preset perl pattern
+ok 33 - perl pattern accepts K&R style brace placement, too
+ok 34 - but is not distracted by end of <<here document
+ok 35 - perl pattern is not distracted by sub within POD
+ok 36 - perl pattern gets full line of POD header
+ok 37 - perl pattern is not distracted by forward declaration
+ok 38 - custom pattern
+ok 39 - last regexp must not be negated
+ok 40 - pattern which matches to end of line
+ok 41 - alternation in pattern
+# passed all 41 test(s)
+1..41
+*** t4019-diff-wserror.sh ***
+ok 1 - setup
+ok 2 - default
+ok 3 - default (attribute)
+ok 4 - default, tabwidth=10 (attribute)
+ok 5 - no check (attribute)
+ok 6 - no check, tabwidth=10 (attribute), must be irrelevant
+ok 7 - without -trail
+ok 8 - without -trail (attribute)
+ok 9 - without -space
+ok 10 - without -space (attribute)
+ok 11 - with indent-non-tab only
+ok 12 - with indent-non-tab only (attribute)
+ok 13 - with indent-non-tab only, tabwidth=10
+ok 14 - with indent-non-tab only, tabwidth=10 (attribute)
+ok 15 - with cr-at-eol
+ok 16 - with cr-at-eol (attribute)
+ok 17 - trailing empty lines (1)
+ok 18 - trailing empty lines (2)
+ok 19 - checkdiff shows correct line number for trailing blank lines
+ok 20 - do not color trailing cr in context
+ok 21 - color new trailing blank lines
+# passed all 21 test(s)
+1..21
+*** t4020-diff-external.sh ***
+ok 1 - setup
+ok 2 - GIT_EXTERNAL_DIFF environment
+ok 3 - GIT_EXTERNAL_DIFF environment should apply only to diff
+ok 4 - GIT_EXTERNAL_DIFF environment and --no-ext-diff
+ok 5 - diff attribute
+ok 6 - diff attribute should apply only to diff
+ok 7 - diff attribute and --no-ext-diff
+ok 8 - diff attribute
+ok 9 - diff attribute should apply only to diff
+ok 10 - diff attribute and --no-ext-diff
+ok 11 - no diff with -diff
+ok 12 - force diff with "diff"
+ok 13 - GIT_EXTERNAL_DIFF with more than one changed files
+ok 14 - GIT_EXTERNAL_DIFF generates pretty paths
+ok 15 - external diff with autocrlf = true
+ok 16 - diff --cached
+# passed all 16 test(s)
+1..16
+*** t4021-format-patch-numbered.sh ***
+ok 1 - setup
+ok 2 - single patch defaults to no numbers
+ok 3 - multiple patch defaults to numbered
+ok 4 - Use --numbered
+ok 5 - format.numbered = true
+ok 6 - format.numbered && single patch
+ok 7 - format.numbered && --no-numbered
+ok 8 - format.numbered && --keep-subject
+ok 9 - format.numbered = auto
+ok 10 - format.numbered = auto && single patch
+ok 11 - format.numbered = auto && --no-numbered
+ok 12 - --start-number && --numbered
+# passed all 12 test(s)
+1..12
+*** t4022-diff-rewrite.sh ***
+ok 1 - setup
+ok 2 - detect rewrite
+ok 3 - show deletion diff without -D
+ok 4 - suppress deletion diff with -D
+ok 5 - show deletion diff with -B
+ok 6 - suppress deletion diff with -B -D
+# passed all 6 test(s)
+1..6
+*** t4023-diff-rename-typechange.sh ***
+ok 1 - setup
+ok 2 - cross renames to be detected for regular files
+ok 3 - cross renames to be detected for typechange
+ok 4 - moves and renames
+# passed all 4 test(s)
+1..4
+*** t4024-diff-optimize-common.sh ***
+ok 1 - setup
+ok 2 - diff -U0
+# passed all 2 test(s)
+1..2
+*** t4025-hunk-header.sh ***
+ok 1 - setup
+ok 2 - hunk header truncation with an overly long line
+# passed all 2 test(s)
+1..2
+*** t4026-color.sh ***
+ok 1 - reset
+ok 2 - attribute before color name
+ok 3 - color name before attribute
+ok 4 - attr fg bg
+ok 5 - fg attr bg
+ok 6 - fg bg attr
+ok 7 - fg bg attr...
+ok 8 - long color specification
+ok 9 - 256 colors
+ok 10 - color too small
+ok 11 - color too big
+ok 12 - extra character after color number
+ok 13 - extra character after color name
+ok 14 - extra character after attribute
+ok 15 - unknown color slots are ignored (diff)
+ok 16 - unknown color slots are ignored (branch)
+ok 17 - unknown color slots are ignored (status)
+# passed all 17 test(s)
+1..17
+*** t4027-diff-submodule.sh ***
+ok 1 - setup
+ok 2 - git diff --raw HEAD
+ok 3 - git diff-index --raw HEAD
+ok 4 - git diff-files --raw
+ok 5 - git diff HEAD
+ok 6 - git diff HEAD with dirty submodule (work tree)
+ok 7 - git diff HEAD with dirty submodule (index)
+ok 8 - git diff HEAD with dirty submodule (untracked)
+ok 9 - git diff HEAD with dirty submodule (work tree, refs match)
+ok 10 - git diff HEAD with dirty submodule (work tree, refs match) [.git/config]
+ok 11 - git diff HEAD with dirty submodule (work tree, refs match) [.gitmodules]
+ok 12 - git diff HEAD with dirty submodule (index, refs match)
+ok 13 - git diff HEAD with dirty submodule (untracked, refs match)
+ok 14 - git diff HEAD with dirty submodule (untracked, refs match) [.git/config]
+ok 15 - git diff HEAD with dirty submodule (untracked, refs match) [.gitmodules]
+ok 16 - git diff between submodule commits
+ok 17 - git diff between submodule commits [.git/config]
+ok 18 - git diff between submodule commits [.gitmodules]
+ok 19 - git diff (empty submodule dir)
+ok 20 - conflicted submodule setup
+ok 21 - combined (empty submodule)
+ok 22 - combined (with submodule)
+# passed all 22 test(s)
+1..22
+*** t4028-format-patch-mime-headers.sh ***
+ok 1 - create commit with utf-8 body
+ok 2 - patch has mime headers
+ok 3 - patch has mime and extra headers
+# passed all 3 test(s)
+1..3
+*** t4029-diff-trailing-space.sh ***
+ok 1 - diff honors config option, diff.suppressBlankEmpty
+# passed all 1 test(s)
+1..1
+*** t4030-diff-textconv.sh ***
+ok 1 - setup binary file with history
+ok 2 - file is considered binary by porcelain
+ok 3 - file is considered binary by plumbing
+ok 4 - setup textconv filters
+ok 5 - diff produces text
+ok 6 - diff-tree produces binary
+ok 7 - log produces text
+ok 8 - format-patch produces binary
+ok 9 - status -v produces text
+ok 10 - diffstat does not run textconv
+ok 11 - textconv does not act on symlinks
+# passed all 11 test(s)
+1..11
+*** t4031-diff-rewrite-binary.sh ***
+ok 1 - create binary file with changes
+ok 2 - vanilla diff is binary
+ok 3 - rewrite diff is binary
+ok 4 - rewrite diff can show binary patch
+ok 5 - rewrite diff --stat shows binary changes
+ok 6 - setup textconv
+ok 7 - rewrite diff respects textconv
+# passed all 7 test(s)
+1..7
+*** t4032-diff-inter-hunk-context.sh ***
+ok 1 - diff -U0, 1 common line: count hunks (2)
+ok 2 - diff -U0, 1 common line: check output
+ok 3 - diff -U0 --inter-hunk-context=0, 1 common line: count hunks (2)
+ok 4 - diff -U0 --inter-hunk-context=0, 1 common line: check output
+ok 5 - diff -U0 --inter-hunk-context=1, 1 common line: count hunks (1)
+ok 6 - diff -U0 --inter-hunk-context=1, 1 common line: check output
+ok 7 - diff -U0 --inter-hunk-context=2, 1 common line: count hunks (1)
+ok 8 - diff -U0 --inter-hunk-context=2, 1 common line: check output
+ok 9 - diff -U1, 1 common line: count hunks (1)
+ok 10 - diff -U0, 2 common lines: count hunks (2)
+ok 11 - diff -U0 --inter-hunk-context=0, 2 common lines: count hunks (2)
+ok 12 - diff -U0 --inter-hunk-context=1, 2 common lines: count hunks (2)
+ok 13 - diff -U0 --inter-hunk-context=2, 2 common lines: count hunks (1)
+ok 14 - diff -U1, 2 common lines: count hunks (1)
+ok 15 - diff -U1, 3 common lines: count hunks (2)
+ok 16 - diff -U1 --inter-hunk-context=0, 3 common lines: count hunks (2)
+ok 17 - diff -U1 --inter-hunk-context=1, 3 common lines: count hunks (1)
+ok 18 - diff -U1 --inter-hunk-context=2, 3 common lines: count hunks (1)
+ok 19 - diff -U3, 9 common lines: count hunks (2)
+ok 20 - diff -U3 --inter-hunk-context=2, 9 common lines: count hunks (2)
+ok 21 - diff -U3 --inter-hunk-context=3, 9 common lines: count hunks (1)
+# passed all 21 test(s)
+1..21
+*** t4033-diff-patience.sh ***
+ok 1 - patience diff
+ok 2 - patience diff output is valid
+ok 3 - completely different files
+# passed all 3 test(s)
+1..3
+*** t4034-diff-words.sh ***
+ok 1 - setup
+ok 2 - set up pre and post with runs of whitespace
+ok 3 - word diff with runs of whitespace
+ok 4 - --word-diff=porcelain
+ok 5 - --word-diff=plain
+ok 6 - --word-diff=plain --color
+ok 7 - word diff without context
+ok 8 - word diff with a regular expression
+ok 9 - set up a diff driver
+ok 10 - option overrides .gitattributes
+ok 11 - use regex supplied by driver
+ok 12 - set up diff.wordRegex option
+ok 13 - command-line overrides config
+ok 14 - command-line overrides config: --word-diff-regex
+ok 15 - .gitattributes override config
+ok 16 - setup: remove diff driver regex
+ok 17 - use configured regex
+ok 18 - test parsing words for newline
+ok 19 - test when words are only removed at the end
+ok 20 - --word-diff=none
+ok 21 - diff driver 'bibtex'
+ok 22 - diff driver 'cpp'
+ok 23 - diff driver 'csharp'
+ok 24 - diff driver 'fortran'
+ok 25 - diff driver 'html'
+ok 26 - diff driver 'java'
+ok 27 - diff driver 'matlab'
+ok 28 - diff driver 'objc'
+ok 29 - diff driver 'pascal'
+ok 30 - diff driver 'perl'
+ok 31 - diff driver 'php'
+ok 32 - diff driver 'python'
+ok 33 - diff driver 'ruby'
+ok 34 - diff driver 'tex'
+ok 35 - word-diff with diff.sbe
+ok 36 - word-diff with no newline at EOF
+# passed all 36 test(s)
+1..36
+*** t4035-diff-quiet.sh ***
+ok 1 - setup
+ok 2 - git diff-tree HEAD^ HEAD
+ok 3 - git diff-tree HEAD^ HEAD -- a
+ok 4 - git diff-tree HEAD^ HEAD -- b
+ok 5 - echo HEAD | git diff-tree --stdin
+ok 6 - git diff-tree HEAD HEAD
+ok 7 - git diff-files
+ok 8 - git diff-index --cached HEAD
+ok 9 - git diff-index --cached HEAD^
+ok 10 - git diff-index --cached HEAD^
+ok 11 - git diff-tree -Stext HEAD^ HEAD -- b
+ok 12 - git diff-tree -Snot-found HEAD^ HEAD -- b
+ok 13 - git diff-files
+ok 14 - git diff-index --cached HEAD
+# passed all 14 test(s)
+1..14
+*** t4036-format-patch-signer-mime.sh ***
+ok 1 - setup
+ok 2 - format normally
+ok 3 - format with signoff without funny signer name
+ok 4 - format with non ASCII signer name
+ok 5 - attach and signoff do not duplicate mime headers
+# passed all 5 test(s)
+1..5
+*** t4037-diff-r-t-dirs.sh ***
+ok 1 - setup
+ok 2 - verify
+# passed all 2 test(s)
+1..2
+*** t4038-diff-combined.sh ***
+ok 1 - setup
+ok 2 - check combined output (1)
+ok 3 - check combined output (2)
+ok 4 - diagnose truncated file
+# passed all 4 test(s)
+1..4
+*** t4039-diff-assume-unchanged.sh ***
+ok 1 - setup
+ok 2 - diff-index does not examine assume-unchanged entries
+ok 3 - diff-files does not examine assume-unchanged entries
+# passed all 3 test(s)
+1..3
+*** t4040-whitespace-status.sh ***
+ok 1 - setup
+ok 2 - diff-tree --exit-code
+ok 3 - diff-tree -b --exit-code
+ok 4 - diff-index --cached --exit-code
+ok 5 - diff-index -b -p --cached --exit-code
+ok 6 - diff-index --exit-code
+ok 7 - diff-index -b -p --exit-code
+ok 8 - diff-files --exit-code
+ok 9 - diff-files -b -p --exit-code
+ok 10 - diff-files --diff-filter --quiet
+ok 11 - diff-tree --diff-filter --quiet
+# passed all 11 test(s)
+1..11
+*** t4041-diff-submodule-option.sh ***
+ok 1 - added submodule
+ok 2 - modified submodule(forward)
+ok 3 - modified submodule(forward)
+ok 4 - modified submodule(forward) --submodule
+ok 5 - modified submodule(forward) --submodule=short
+ok 6 - modified submodule(backward)
+ok 7 - modified submodule(backward and forward)
+ok 8 - typechanged submodule(submodule->blob), --cached
+ok 9 - typechanged submodule(submodule->blob)
+ok 10 - typechanged submodule(submodule->blob)
+ok 11 - nonexistent commit
+ok 12 - typechanged submodule(blob->submodule)
+ok 13 - submodule is up to date
+ok 14 - submodule contains untracked content
+ok 15 - submodule contains untracked content (untracked ignored)
+ok 16 - submodule contains untracked content (dirty ignored)
+ok 17 - submodule contains untracked content (all ignored)
+ok 18 - submodule contains untracked and modifed content
+ok 19 - submodule contains untracked and modifed content (untracked ignored)
+ok 20 - submodule contains untracked and modifed content (dirty ignored)
+ok 21 - submodule contains untracked and modifed content (all ignored)
+ok 22 - submodule contains modifed content
+ok 23 - submodule is modified
+ok 24 - modified submodule contains untracked content
+ok 25 - modified submodule contains untracked content (untracked ignored)
+ok 26 - modified submodule contains untracked content (dirty ignored)
+ok 27 - modified submodule contains untracked content (all ignored)
+ok 28 - modified submodule contains untracked and modifed content
+ok 29 - modified submodule contains untracked and modifed content (untracked ignored)
+ok 30 - modified submodule contains untracked and modifed content (dirty ignored)
+ok 31 - modified submodule contains untracked and modifed content (all ignored)
+ok 32 - modified submodule contains modifed content
+ok 33 - deleted submodule
+ok 34 - multiple submodules
+ok 35 - path filter
+ok 36 - given commit
+ok 37 - given commit --submodule
+ok 38 - given commit --submodule=short
+ok 39 - setup .git file for sm2
+ok 40 - diff --submodule with .git file
+# passed all 40 test(s)
+1..40
+*** t4042-diff-textconv-caching.sh ***
+ok 1 - setup
+ok 2 - first textconv works
+ok 3 - cached textconv produces same output
+ok 4 - cached textconv does not run helper
+ok 5 - changing textconv invalidates cache
+ok 6 - switching diff driver produces correct results
+# passed all 6 test(s)
+1..6
+*** t4043-diff-rename-binary.sh ***
+ok 1 - prepare repository
+ok 2 - move the files into a "sub" directory
+ok 3 - git show -C -C report renames
+# passed all 3 test(s)
+1..3
+*** t4044-diff-index-unique-abbrev.sh ***
+ok 1 - setup
+ok 2 - diff does not produce ambiguous index line
+# passed all 2 test(s)
+1..2
+*** t4045-diff-relative.sh ***
+ok 1 - setup
+ok 2 - -p --relative=subdir/
+ok 3 - -p --relative=subdir
+ok 4 - -p --relative=sub
+ok 5 - --stat --relative=subdir/
+ok 6 - --stat --relative=subdir
+ok 7 - --stat --relative=sub
+ok 8 - --raw --relative=subdir/
+ok 9 - --raw --relative=subdir
+ok 10 - --raw --relative=sub
+# passed all 10 test(s)
+1..10
+*** t4046-diff-unmerged.sh ***
+ok 1 - setup
+ok 2 - diff-files -0
+ok 3 - diff-files -1
+ok 4 - diff-files -2
+ok 5 - diff-files -3
+# passed all 5 test(s)
+1..5
+*** t4047-diff-dirstat.sh ***
+ok 1 - setup
+ok 2 - sanity check setup (--stat)
+ok 3 - various ways to misspell --dirstat
+ok 4 - vanilla --dirstat
+ok 5 - vanilla -X
+ok 6 - explicit defaults: --dirstat=changes,noncumulative,3
+ok 7 - explicit defaults: -Xchanges,noncumulative,3
+ok 8 - later options override earlier options:
+ok 9 - non-defaults in config overridden by explicit defaults on command line
+ok 10 - --dirstat=0
+ok 11 - -X0
+ok 12 - diff.dirstat=0
+ok 13 - --dirstat=0 --cumulative
+ok 14 - --dirstat=0,cumulative
+ok 15 - -X0,cumulative
+ok 16 - diff.dirstat=0,cumulative
+ok 17 - diff.dirstat=0 & --dirstat=cumulative
+ok 18 - --dirstat-by-file
+ok 19 - --dirstat=files
+ok 20 - diff.dirstat=files
+ok 21 - --dirstat-by-file=10
+ok 22 - --dirstat=files,10
+ok 23 - diff.dirstat=10,files
+ok 24 - --dirstat-by-file --cumulative
+ok 25 - --dirstat=files,cumulative
+ok 26 - diff.dirstat=cumulative,files
+ok 27 - --dirstat=files,cumulative,10
+ok 28 - diff.dirstat=10,cumulative,files
+ok 29 - --dirstat=files,cumulative,16.7
+ok 30 - diff.dirstat=16.7,cumulative,files
+ok 31 - diff.dirstat=16.70,cumulative,files
+ok 32 - --dirstat=files,cumulative,27.2
+ok 33 - --dirstat=files,cumulative,27.09
+ok 34 - --dirstat=lines
+ok 35 - diff.dirstat=lines
+ok 36 - --dirstat=lines,0
+ok 37 - diff.dirstat=0,lines
+ok 38 - --dirstat=future_param,lines,0 should fail loudly
+ok 39 - --dirstat=dummy1,cumulative,2dummy should report both unrecognized parameters
+ok 40 - diff.dirstat=future_param,0,lines should warn, but still work
+# passed all 40 test(s)
+1..40
+*** t4048-diff-combined-binary.sh ***
+ok 1 - setup binary merge conflict
+ok 2 - diff -m indicates binary-ness
+ok 3 - diff -c indicates binary-ness
+ok 4 - diff --cc indicates binary-ness
+ok 5 - setup non-binary with binary attribute
+ok 6 - diff -m respects binary attribute
+ok 7 - diff -c respects binary attribute
+ok 8 - diff --cc respects binary attribute
+ok 9 - setup textconv attribute
+ok 10 - diff -m respects textconv attribute
+ok 11 - diff -c respects textconv attribute
+ok 12 - diff --cc respects textconv attribute
+ok 13 - diff-tree plumbing does not respect textconv
+ok 14 - diff --cc respects textconv on worktree file
+# passed all 14 test(s)
+1..14
+*** t4049-diff-stat-count.sh ***
+ok 1 - setup
+# passed all 1 test(s)
+1..1
+*** t4050-diff-histogram.sh ***
+ok 1 - histogram diff
+ok 2 - histogram diff output is valid
+ok 3 - completely different files
+# passed all 3 test(s)
+1..3
+*** t4051-diff-function-context.sh ***
+ok 1 - setup
+ok 2 - diff -U0 -W
+ok 3 - diff -W
+# passed all 3 test(s)
+1..3
+*** t4100-apply-stat.sh ***
+ok 1 - rename
+ok 2 - rename with recount
+ok 3 - copy
+ok 4 - copy with recount
+ok 5 - rewrite
+ok 6 - rewrite with recount
+ok 7 - mode
+ok 8 - mode with recount
+ok 9 - non git (1)
+ok 10 - non git (1) with recount
+ok 11 - non git (2)
+ok 12 - non git (2) with recount
+ok 13 - non git (3)
+ok 14 - non git (3) with recount
+ok 15 - incomplete (1)
+ok 16 - incomplete (1) with recount
+ok 17 - incomplete (2)
+ok 18 - incomplete (2) with recount
+# passed all 18 test(s)
+1..18
+*** t4101-apply-nonl.sh ***
+ok 1 - apply diff between 0 and 1
+ok 2 - apply diff between 0 and 2
+ok 3 - apply diff between 0 and 3
+ok 4 - apply diff between 1 and 0
+ok 5 - apply diff between 1 and 2
+ok 6 - apply diff between 1 and 3
+ok 7 - apply diff between 2 and 0
+ok 8 - apply diff between 2 and 1
+ok 9 - apply diff between 2 and 3
+ok 10 - apply diff between 3 and 0
+ok 11 - apply diff between 3 and 1
+ok 12 - apply diff between 3 and 2
+# passed all 12 test(s)
+1..12
+*** t4102-apply-rename.sh ***
+ok 1 - setup
+ok 2 - apply
+ok 3 - validate
+ok 4 - apply reverse
+ok 5 - apply copy
+# passed all 5 test(s)
+1..5
+*** t4103-apply-binary.sh ***
+ok 1 - setup
+ok 2 - stat binary diff -- should not fail.
+ok 3 - stat binary diff (copy) -- should not fail.
+ok 4 - check binary diff -- should fail.
+ok 5 - check binary diff (copy) -- should fail.
+ok 6 - check incomplete binary diff with replacement -- should fail.
+ok 7 - check incomplete binary diff with replacement (copy) -- should fail.
+ok 8 - check binary diff with replacement.
+ok 9 - check binary diff with replacement (copy).
+ok 10 - apply binary diff -- should fail.
+ok 11 - apply binary diff -- should fail.
+ok 12 - apply binary diff (copy) -- should fail.
+ok 13 - apply binary diff (copy) -- should fail.
+ok 14 - apply binary diff with full-index
+ok 15 - apply binary diff with full-index (copy)
+ok 16 - apply full-index binary diff in new repo
+ok 17 - apply binary diff without replacement.
+ok 18 - apply binary diff without replacement (copy).
+ok 19 - apply binary diff.
+ok 20 - apply binary diff (copy).
+# passed all 20 test(s)
+1..20
+*** t4104-apply-boundary.sh ***
+ok 1 - setup
+ok 2 - apply add-a-patch with context
+ok 3 - apply add-z-patch with context
+ok 4 - apply insert-a-patch with context
+ok 5 - apply mod-a-patch with context
+ok 6 - apply mod-z-patch with context
+ok 7 - apply del-a-patch with context
+ok 8 - apply del-z-patch with context
+ok 9 - apply add-a-patch without context
+ok 10 - apply add-z-patch without context
+ok 11 - apply insert-a-patch without context
+ok 12 - apply mod-a-patch without context
+ok 13 - apply mod-z-patch without context
+ok 14 - apply del-a-patch without context
+ok 15 - apply del-z-patch without context
+ok 16 - apply non-git add-a-patch without context
+ok 17 - apply non-git add-z-patch without context
+ok 18 - apply non-git insert-a-patch without context
+ok 19 - apply non-git mod-a-patch without context
+ok 20 - apply non-git mod-z-patch without context
+ok 21 - apply non-git del-a-patch without context
+ok 22 - apply non-git del-z-patch without context
+ok 23 - two lines
+ok 24 - apply patch with 3 context lines matching at end
+# passed all 24 test(s)
+1..24
+*** t4105-apply-fuzz.sh ***
+ok 1 - setup
+ok 2 - unmodified patch
+ok 3 - minus offset
+ok 4 - plus offset
+ok 5 - big offset
+ok 6 - fuzz with no offset
+ok 7 - fuzz with minus offset
+ok 8 - fuzz with plus offset
+ok 9 - fuzz with big offset
+# passed all 9 test(s)
+1..9
+*** t4106-apply-stdin.sh ***
+ok 1 - setup
+ok 2 - git apply --numstat - < patch
+ok 3 - git apply --numstat - < patch patch
+# passed all 3 test(s)
+1..3
+*** t4107-apply-ignore-whitespace.sh ***
+ok 1 - file creation
+ok 2 - patch2 fails (retab)
+ok 3 - patch2 applies with --ignore-whitespace
+ok 4 - patch2 reverse applies with --ignore-space-change
+ok 5 - patch2 applies (apply.ignorewhitespace = change)
+ok 6 - patch3 fails (missing string at EOL)
+ok 7 - patch4 fails (missing EOL at EOF)
+ok 8 - patch5 applies (leading whitespace)
+ok 9 - patches do not mangle whitespace
+ok 10 - re-create file (with --ignore-whitespace)
+ok 11 - patch5 fails (--no-ignore-whitespace)
+# passed all 11 test(s)
+1..11
+*** t4109-apply-multifrag.sh ***
+ok 1 - git apply (1)
+ok 2 - git apply (2)
+ok 3 - git apply (3)
+# passed all 3 test(s)
+1..3
+*** t4110-apply-scan.sh ***
+ok 1 - git apply scan
+# passed all 1 test(s)
+1..1
+*** t4111-apply-subdir.sh ***
+ok 1 - setup
+ok 2 - setup: subdir
+ok 3 - apply from subdir of toplevel
+ok 4 - apply --cached from subdir of toplevel
+ok 5 - apply --index from subdir of toplevel
+ok 6 - apply from .git dir
+ok 7 - apply from subdir of .git dir
+ok 8 - apply --cached from .git dir
+ok 9 - apply --cached from subdir of .git dir
+# passed all 9 test(s)
+1..9
+*** t4112-apply-renames.sh ***
+ok 1 - check rename/copy patch
+ok 2 - apply rename/copy patch
+# passed all 2 test(s)
+1..2
+*** t4113-apply-ending.sh ***
+ok 1 - setup
+ok 2 - apply at the end
+ok 3 - apply at the beginning
+# passed all 3 test(s)
+1..3
+*** t4114-apply-typechange.sh ***
+ok 1 - setup repository and commits
+ok 2 - file renamed from foo to foo/baz
+ok 3 - file renamed from foo/baz to foo
+ok 4 - directory becomes file
+ok 5 - file becomes directory
+ok 6 - file becomes symlink
+ok 7 - symlink becomes file
+ok 8 - binary file becomes symlink
+ok 9 - symlink becomes binary file
+ok 10 - symlink becomes directory
+ok 11 - directory becomes symlink
+# passed all 11 test(s)
+1..11
+*** t4115-apply-symlink.sh ***
+ok 1 - setup
+ok 2 - apply symlink patch
+ok 3 - apply --index symlink patch
+# passed all 3 test(s)
+1..3
+*** t4116-apply-reverse.sh ***
+ok 1 - setup
+ok 2 - apply in forward
+ok 3 - apply in reverse
+ok 4 - setup separate repository lacking postimage
+ok 5 - apply in forward without postimage
+ok 6 - apply in reverse without postimage
+ok 7 - reversing a whitespace introduction
+# passed all 7 test(s)
+1..7
+*** t4117-apply-reject.sh ***
+ok 1 - setup
+ok 2 - apply without --reject should fail
+ok 3 - apply without --reject should fail
+ok 4 - apply with --reject should fail but update the file
+ok 5 - apply with --reject should fail but update the file
+ok 6 - the same test with --verbose
+ok 7 - apply cleanly with --verbose
+# passed all 7 test(s)
+1..7
+*** t4118-apply-empty-context.sh ***
+ok 1 - setup
+ok 2 - apply --numstat
+ok 3 - apply --apply
+# passed all 3 test(s)
+1..3
+*** t4119-apply-config.sh ***
+ok 1 - setup
+ok 2 - apply --whitespace=strip
+ok 3 - apply --whitespace=strip from config
+ok 4 - apply --whitespace=strip in subdir
+ok 5 - apply --whitespace=strip from config in subdir
+ok 6 - same in subdir but with traditional patch input
+ok 7 - same but with traditional patch input of depth 1
+ok 8 - same but with traditional patch input of depth 2
+ok 9 - same but with traditional patch input of depth 1
+ok 10 - same but with traditional patch input of depth 2
+# passed all 10 test(s)
+1..10
+*** t4120-apply-popt.sh ***
+ok 1 - setup
+ok 2 - apply git diff with -p2
+ok 3 - apply with too large -p
+ok 4 - apply (-p2) traditional diff with funny filenames
+ok 5 - apply with too large -p and fancy filename
+ok 6 - apply (-p2) diff, mode change only
+ok 7 - file mode was changed
+ok 8 - apply (-p2) diff, rename
+# passed all 8 test(s)
+1..8
+*** t4121-apply-diffs.sh ***
+ok 1 - setup
+ok 2 - check if contextually independent diffs for the same file apply
+# passed all 2 test(s)
+1..2
+*** t4122-apply-symlink-inside.sh ***
+ok 1 - setup
+ok 2 - apply
+ok 3 - check result
+# passed all 3 test(s)
+1..3
+*** t4123-apply-shrink.sh ***
+ok 1 - setup
+ok 2 - apply should fail gracefully
+# passed all 2 test(s)
+1..2
+*** t4124-apply-ws-rule.sh ***
+ok 1 - setup
+ok 2 - whitespace=nowarn, default rule
+ok 3 - whitespace=warn, default rule
+ok 4 - whitespace=error-all, default rule
+ok 5 - whitespace=error-all, no rule
+ok 6 - whitespace=error-all, no rule (attribute)
+ok 7 - spaces inserted by tab-in-indent
+ok 8 - rule=-trailing,-space,-indent,-tab
+ok 9 - rule=-trailing,-space,-indent,-tab,tabwidth=16
+ok 10 - rule=-trailing,-space,-indent,-tab (attributes)
+ok 11 - rule=-trailing,-space,-indent,-tab,tabwidth=16 (attributes)
+ok 12 - rule=-trailing,-space,-indent,tab
+ok 13 - rule=-trailing,-space,-indent,tab,tabwidth=16
+ok 14 - rule=-trailing,-space,-indent,tab (attributes)
+ok 15 - rule=-trailing,-space,-indent,tab,tabwidth=16 (attributes)
+ok 16 - rule=-trailing,-space,indent,-tab
+ok 17 - rule=-trailing,-space,indent,-tab,tabwidth=16
+ok 18 - rule=-trailing,-space,indent,-tab (attributes)
+ok 19 - rule=-trailing,-space,indent,-tab,tabwidth=16 (attributes)
+ok 20 - rule=-trailing,space,-indent,-tab
+ok 21 - rule=-trailing,space,-indent,-tab,tabwidth=16
+ok 22 - rule=-trailing,space,-indent,-tab (attributes)
+ok 23 - rule=-trailing,space,-indent,-tab,tabwidth=16 (attributes)
+ok 24 - rule=-trailing,space,-indent,tab
+ok 25 - rule=-trailing,space,-indent,tab,tabwidth=16
+ok 26 - rule=-trailing,space,-indent,tab (attributes)
+ok 27 - rule=-trailing,space,-indent,tab,tabwidth=16 (attributes)
+ok 28 - rule=-trailing,space,indent,-tab
+ok 29 - rule=-trailing,space,indent,-tab,tabwidth=16
+ok 30 - rule=-trailing,space,indent,-tab (attributes)
+ok 31 - rule=-trailing,space,indent,-tab,tabwidth=16 (attributes)
+ok 32 - rule=trailing,-space,-indent,-tab
+ok 33 - rule=trailing,-space,-indent,-tab,tabwidth=16
+ok 34 - rule=trailing,-space,-indent,-tab (attributes)
+ok 35 - rule=trailing,-space,-indent,-tab,tabwidth=16 (attributes)
+ok 36 - rule=trailing,-space,-indent,tab
+ok 37 - rule=trailing,-space,-indent,tab,tabwidth=16
+ok 38 - rule=trailing,-space,-indent,tab (attributes)
+ok 39 - rule=trailing,-space,-indent,tab,tabwidth=16 (attributes)
+ok 40 - rule=trailing,-space,indent,-tab
+ok 41 - rule=trailing,-space,indent,-tab,tabwidth=16
+ok 42 - rule=trailing,-space,indent,-tab (attributes)
+ok 43 - rule=trailing,-space,indent,-tab,tabwidth=16 (attributes)
+ok 44 - rule=trailing,space,-indent,-tab
+ok 45 - rule=trailing,space,-indent,-tab,tabwidth=16
+ok 46 - rule=trailing,space,-indent,-tab (attributes)
+ok 47 - rule=trailing,space,-indent,-tab,tabwidth=16 (attributes)
+ok 48 - rule=trailing,space,-indent,tab
+ok 49 - rule=trailing,space,-indent,tab,tabwidth=16
+ok 50 - rule=trailing,space,-indent,tab (attributes)
+ok 51 - rule=trailing,space,-indent,tab,tabwidth=16 (attributes)
+ok 52 - rule=trailing,space,indent,-tab
+ok 53 - rule=trailing,space,indent,-tab,tabwidth=16
+ok 54 - rule=trailing,space,indent,-tab (attributes)
+ok 55 - rule=trailing,space,indent,-tab,tabwidth=16 (attributes)
+ok 56 - trailing whitespace & no newline at the end of file
+ok 57 - blank at EOF with --whitespace=fix (1)
+ok 58 - blank at EOF with --whitespace=fix (2)
+ok 59 - blank at EOF with --whitespace=fix (3)
+ok 60 - blank at end of hunk, not at EOF with --whitespace=fix
+ok 61 - blank at EOF with --whitespace=warn
+ok 62 - blank at EOF with --whitespace=error
+ok 63 - blank but not empty at EOF
+ok 64 - applying beyond EOF requires one non-blank context line
+ok 65 - tons of blanks at EOF should not apply
+ok 66 - missing blank line at end with --whitespace=fix
+ok 67 - two missing blank lines at end with --whitespace=fix
+ok 68 - missing blank line at end, insert before end, --whitespace=fix
+ok 69 - shrink file with tons of missing blanks at end of file
+ok 70 - missing blanks at EOF must only match blank lines
+ok 71 - missing blank line should match context line with spaces
+ok 72 - same, but with the --ignore-space-option
+ok 73 - same, but with CR-LF line endings && cr-at-eol set
+ok 74 - same, but with CR-LF line endings && cr-at-eol unset
+# passed all 74 test(s)
+1..74
+*** t4125-apply-ws-fuzz.sh ***
+ok 1 - setup
+ok 2 - nofix
+ok 3 - withfix (forward)
+ok 4 - withfix (backward)
+# passed all 4 test(s)
+1..4
+*** t4126-apply-empty.sh ***
+ok 1 - setup
+ok 2 - apply empty
+ok 3 - apply --index empty
+ok 4 - apply create
+ok 5 - apply --index create
+# passed all 5 test(s)
+1..5
+*** t4127-apply-same-fn.sh ***
+ok 1 - setup
+ok 2 - apply same filename with independent changes
+ok 3 - apply same filename with overlapping changes
+ok 4 - apply same new filename after rename
+ok 5 - apply same old filename after rename -- should fail.
+ok 6 - apply A->B (rename), C->A (rename), A->A -- should pass.
+# passed all 6 test(s)
+1..6
+*** t4128-apply-root.sh ***
+ok 1 - setup
+ok 2 - apply --directory -p (1)
+ok 3 - apply --directory -p (2) 
+ok 4 - apply --directory (new file)
+ok 5 - apply --directory -p (new file)
+ok 6 - apply --directory (delete file)
+ok 7 - apply --directory (quoted filename)
+# passed all 7 test(s)
+1..7
+*** t4129-apply-samemode.sh ***
+ok 1 - setup
+ok 2 - same mode (no index)
+ok 3 - same mode (with index)
+ok 4 - same mode (index only)
+ok 5 - mode update (no index)
+ok 6 - mode update (with index)
+ok 7 - mode update (index only)
+# passed all 7 test(s)
+1..7
+*** t4130-apply-criss-cross-rename.sh ***
+ok 1 - setup
+ok 2 - criss-cross rename
+ok 3 - diff -M -B
+ok 4 - apply
+ok 5 - criss-cross rename
+ok 6 - diff -M -B
+ok 7 - apply
+# passed all 7 test(s)
+1..7
+*** t4131-apply-fake-ancestor.sh ***
+ok 1 - setup
+ok 2 - apply --build-fake-ancestor
+ok 3 - apply --build-fake-ancestor in a subdirectory
+# passed all 3 test(s)
+1..3
+*** t4132-apply-removal.sh ***
+ok 1 - setup
+ok 2 - test addEast.patch
+ok 3 - test addGMT.patch
+ok 4 - test addWest.patch
+ok 5 - test createEast.patch
+ok 6 - test createGMT.patch
+ok 7 - test createWest.patch
+ok 8 - test emptyEast.patch
+ok 9 - test emptyGMT.patch
+ok 10 - test emptyWest.patch
+ok 11 - test removeEast.patch
+ok 12 - test removeGMT.patch
+ok 13 - test removeWest.patch
+ok 14 - test removeWest2.patch
+# passed all 14 test(s)
+1..14
+*** t4133-apply-filenames.sh ***
+ok 1 - setup
+ok 2 - apply diff with inconsistent filenames in headers
+# passed all 2 test(s)
+1..2
+*** t4134-apply-submodule.sh ***
+ok 1 - setup
+ok 2 - removing a submodule also removes all leading subdirectories
+# passed all 2 test(s)
+1..2
+*** t4135-apply-weird-filenames.sh ***
+ok 1 - setup
+ok 2 - plain, git-style file creation patch
+ok 3 - plain, traditional patch
+ok 4 - plain, traditional file creation patch
+ok 5 - with spaces, git-style file creation patch
+ok 6 - with spaces, traditional patch
+ok 7 - with spaces, traditional file creation patch
+ok 8 - with tab, git-style file creation patch
+ok 9 - with tab, traditional patch
+ok 10 - with tab, traditional file creation patch
+ok 11 - with backslash, git-style file creation patch
+ok 12 - with backslash, traditional patch
+ok 13 - with backslash, traditional file creation patch
+ok 14 - with quote, git-style file creation patch
+not ok 15 - with quote, traditional patch # TODO known breakage
+ok 16 - with quote, traditional file creation patch
+ok 17 - whitespace-damaged traditional patch
+ok 18 - traditional patch with colon in timezone
+ok 19 - traditional, whitespace-damaged, colon in timezone
+# still have 1 known breakage(s)
+# passed all remaining 18 test(s)
+1..19
+*** t4136-apply-check.sh ***
+ok 1 - setup
+ok 2 - apply --check exits non-zero with unrecognized input
+# passed all 2 test(s)
+1..2
+*** t4150-am.sh ***
+ok 1 - setup: messages
+ok 2 - setup
+ok 3 - am applies patch correctly
+ok 4 - am applies patch e-mail not in a mbox
+ok 5 - am applies patch e-mail not in a mbox with CRLF
+ok 6 - am applies patch e-mail with preceding whitespace
+ok 7 - setup: new author and committer
+ok 8 - am changes committer and keeps author
+ok 9 - am --signoff adds Signed-off-by: line
+ok 10 - am stays in branch
+ok 11 - am --signoff does not add Signed-off-by: line if already there
+ok 12 - am without --keep removes Re: and [PATCH] stuff
+ok 13 - am --keep really keeps the subject
+ok 14 - am -3 falls back to 3-way merge
+ok 15 - am can rename a file
+ok 16 - am -3 can rename a file
+ok 17 - am -3 can rename a file after falling back to 3-way merge
+ok 18 - am -3 -q is quiet
+ok 19 - am pauses on conflict
+ok 20 - am --skip works
+ok 21 - am --resolved works
+ok 22 - am takes patches from a Pine mailbox
+ok 23 - am fails on mail without patch
+ok 24 - am fails on empty patch
+ok 25 - am works from stdin in subdirectory
+ok 26 - am works from file (relative path given) in subdirectory
+ok 27 - am works from file (absolute path given) in subdirectory
+ok 28 - am --committer-date-is-author-date
+ok 29 - am without --committer-date-is-author-date
+ok 30 - am --ignore-date
+ok 31 - am into an unborn branch
+ok 32 - am newline in subject
+ok 33 - am -q is quiet
+# passed all 33 test(s)
+1..33
+*** t4151-am-abort.sh ***
+ok 1 - setup
+ok 2 - am stops at a patch that does not apply
+ok 3 - am --skip continue after failed am
+ok 4 - am --abort goes back after failed am
+ok 5 - am -3 stops at a patch that does not apply
+ok 6 - am -3 --skip continue after failed am -3
+ok 7 - am --abort goes back after failed am -3
+ok 8 - am --abort will keep the local commits intact
+# passed all 8 test(s)
+1..8
+*** t4152-am-subjects.sh ***
+ok 1 - setup baseline commit
+ok 2 - create patches with short subject
+ok 3 - create patches with long subject
+ok 4 - create patches with multiline subject
+ok 5 - short subject preserved (format-patch | am)
+ok 6 - short subject preserved (format-patch -k | am)
+ok 7 - short subject preserved (format-patch -k | am -k)
+ok 8 - long subject preserved (format-patch | am)
+ok 9 - long subject preserved (format-patch -k | am)
+ok 10 - long subject preserved (format-patch -k | am -k)
+ok 11 - multiline subject unwrapped (format-patch | am)
+ok 12 - multiline subject unwrapped (format-patch -k | am)
+ok 13 - multiline subject preserved (format-patch -k | am -k)
+# passed all 13 test(s)
+1..13
+*** t4200-rerere.sh ***
+ok 1 - setup
+ok 2 - nothing recorded without rerere
+ok 3 - activate rerere, old style (conflicting merge)
+ok 4 - rerere.enabled works, too
+ok 5 - set up rr-cache
+ok 6 - rr-cache looks sane
+ok 7 - rerere diff
+ok 8 - rerere status
+ok 9 - first postimage wins
+ok 10 - rerere updates postimage timestamp
+ok 11 - rerere clear
+ok 12 - set up for garbage collection tests
+ok 13 - gc preserves young or recently used records
+ok 14 - old records rest in peace
+ok 15 - setup: file2 added differently in two branches
+ok 16 - resolution was recorded properly
+ok 17 - rerere.autoupdate
+ok 18 - merge --rerere-autoupdate
+ok 19 - merge --no-rerere-autoupdate
+ok 20 - set up an unresolved merge
+ok 21 - explicit rerere
+ok 22 - explicit rerere with autoupdate
+ok 23 - explicit rerere --rerere-autoupdate overrides
+ok 24 - rerere --no-no-rerere-autoupdate
+ok 25 - rerere -h
+# passed all 25 test(s)
+1..25
+*** t4201-shortlog.sh ***
+ok 1 - setup
+ok 2 - default output format
+ok 3 - pretty format
+ok 4 - --abbrev
+ok 5 - output from user-defined format is re-wrapped
+ok 6 - shortlog wrapping
+ok 7 - shortlog from non-git directory
+ok 8 - shortlog encoding
+# passed all 8 test(s)
+1..8
+*** t4202-log.sh ***
+ok 1 - setup
+ok 2 - pretty
+ok 3 - pretty (tformat)
+ok 4 - pretty (shortcut)
+ok 5 - format
+ok 6 - format %w(12,1,2)
+ok 7 - format %w(,1,2)
+ok 8 - oneline
+ok 9 - diff-filter=A
+ok 10 - diff-filter=M
+ok 11 - diff-filter=D
+ok 12 - diff-filter=R
+ok 13 - diff-filter=C
+ok 14 - git log --follow
+ok 15 - git log --no-walk <commits> sorts by commit time
+ok 16 - git show <commits> leaves list of commits as given
+ok 17 - setup case sensitivity tests
+ok 18 - log --grep
+ok 19 - log --grep option parsing
+ok 20 - log -i --grep
+ok 21 - log --grep -i
+ok 22 - simple log --graph
+ok 23 - set up merge history
+ok 24 - log --graph with merge
+ok 25 - log --graph with full output
+ok 26 - set up more tangled history
+ok 27 - log --graph with merge
+ok 28 - log.decorate configuration
+ok 29 - reflog is expected format
+ok 30 - whatchanged is expected format
+ok 31 - log.abbrevCommit configuration
+ok 32 - show added path under "--follow -M"
+# passed all 32 test(s)
+1..32
+*** t4203-mailmap.sh ***
+ok 1 - setup
+ok 2 - No mailmap
+ok 3 - default .mailmap
+ok 4 - mailmap.file set
+ok 5 - mailmap.file override
+ok 6 - mailmap.file non-existent
+ok 7 - name entry after email entry
+ok 8 - name entry after email entry, case-insensitive
+ok 9 - No mailmap files, but configured
+ok 10 - Shortlog output (complex mapping)
+ok 11 - Log output (complex mapping)
+ok 12 - Blame output (complex mapping)
+# passed all 12 test(s)
+1..12
+*** t4204-patch-id.sh ***
+ok 1 - setup
+ok 2 - patch-id output is well-formed
+ok 3 - patch-id detects equality
+ok 4 - patch-id detects inequality
+ok 5 - patch-id supports git-format-patch output
+ok 6 - whitespace is irrelevant in footer
+ok 7 - patch-id supports git-format-patch MIME output
+ok 8 - patch-id handles no-nl-at-eof markers
+# passed all 8 test(s)
+1..8
+*** t4205-log-pretty-formats.sh ***
+ok 1 - set up basic repos
+ok 2 - alias builtin format
+ok 3 - alias masking builtin format
+ok 4 - alias user-defined format
+ok 5 - alias user-defined tformat
+ok 6 - alias non-existent format
+ok 7 - alias of an alias
+ok 8 - alias masking an alias
+ok 9 - alias loop
+# passed all 9 test(s)
+1..9
+*** t4206-log-follow-harder-copies.sh ***
+ok 1 - add a file path0 and commit.
+ok 2 - Change path0.
+ok 3 - copy path0 to path1.
+ok 4 - find the copy path0 -> path1 harder
+ok 5 - validate the output.
+# passed all 5 test(s)
+1..5
+*** t4207-log-decoration-colors.sh ***
+ok 1 - setup
+ok 2 - Commit Decorations Colored Correctly
+# passed all 2 test(s)
+1..2
+*** t4208-log-magic-pathspec.sh ***
+ok 1 - setup
+ok 2 - "git log :/" should be ambiguous
+ok 3 - "git log :" should be ambiguous
+ok 4 - git log -- :
+ok 5 - git log HEAD -- :/
+# passed all 5 test(s)
+1..5
+*** t4252-am-options.sh ***
+ok 1 - setup
+ok 2 - interrupted am --whitespace=fix
+ok 3 - interrupted am -C1
+ok 4 - interrupted am -p2
+ok 5 - interrupted am -C1 -p2
+ok 6 - interrupted am --directory="frotz nitfol"
+ok 7 - apply to a funny path
+ok 8 - am --reject
+# passed all 8 test(s)
+1..8
+*** t4253-am-keep-cr-dos.sh ***
+ok 1 - setup repository with dos files
+ok 2 - am with dos files without --keep-cr
+ok 3 - am with dos files with --keep-cr
+ok 4 - am with dos files config am.keepcr
+ok 5 - am with dos files config am.keepcr overriden by --no-keep-cr
+ok 6 - am with dos files with --keep-cr continue
+ok 7 - am with unix files config am.keepcr overriden by --no-keep-cr
+# passed all 7 test(s)
+1..7
+*** t4254-am-corrupt.sh ***
+ok 1 - setup
+ok 2 - try to apply corrupted patch
+ok 3 - compare diagnostic; ensure file is still here
+# passed all 3 test(s)
+1..3
+*** t4300-merge-tree.sh ***
+ok 1 - setup
+ok 2 - file add A, !B
+ok 3 - file add !A, B
+ok 4 - file add A, B (same)
+ok 5 - file add A, B (different)
+ok 6 - file change A, !B
+ok 7 - file change !A, B
+ok 8 - file change A, B (same)
+ok 9 - file change A, B (different)
+ok 10 - file change A, B (mixed)
+ok 11 - file remove A, !B
+ok 12 - file remove !A, B
+ok 13 - file change A, remove B
+ok 14 - file remove A, change B
+# passed all 14 test(s)
+1..14
+*** t5000-tar-tree.sh ***
+ok 1 - populate workdir
+ok 2 - add ignored file
+ok 3 - add files to repository
+ok 4 - create bare clone
+ok 5 - remove ignored file
+ok 6 - git archive
+ok 7 - git tar-tree
+ok 8 - git archive vs. git tar-tree
+ok 9 - git archive in a bare repo
+ok 10 - git archive vs. the same in a bare repo
+ok 11 - git archive with --output
+ok 12 - git archive --remote
+ok 13 - validate file modification time
+ok 14 - git get-tar-commit-id
+ok 15 - extract tar archive
+ok 16 - validate filenames
+ok 17 - validate file contents
+ok 18 - git tar-tree with prefix
+ok 19 - extract tar archive with prefix
+ok 20 - validate filenames with prefix
+ok 21 - validate file contents with prefix
+ok 22 - create archives with substfiles
+ok 23 - extract substfiles
+ok 24 - validate substfile contents
+ok 25 - extract substfiles from archive with prefix
+ok 26 - validate substfile contents from archive with prefix
+ok 27 - git archive --format=zip
+ok 28 - git archive --format=zip in a bare repo
+ok 29 - git archive --format=zip vs. the same in a bare repo
+ok 30 - git archive --format=zip with --output
+ok 31 - git archive with --output, inferring format
+ok 32 - git archive with --output, override inferred format
+ok 33 - extract ZIP archive
+ok 34 - validate filenames
+ok 35 - validate file contents
+ok 36 - git archive --format=zip with prefix
+ok 37 - extract ZIP archive with prefix
+ok 38 - validate filenames with prefix
+ok 39 - validate file contents with prefix
+ok 40 - git archive --list outside of a git repo
+ok 41 - clients cannot access unreachable commits
+ok 42 - git-archive --prefix=olde-
+ok 43 - setup tar filters
+ok 44 - archive --list mentions user filter
+ok 45 - archive --list shows only enabled remote filters
+ok 46 - invoke tar filter by format
+ok 47 - invoke tar filter by extension
+ok 48 - default output format remains tar
+ok 49 - extension matching requires dot
+ok 50 - only enabled filters are available remotely
+ok 51 - git archive --format=tgz
+ok 52 - git archive --format=tar.gz
+ok 53 - infer tgz from .tgz filename
+ok 54 - infer tgz from .tar.gz filename
+ok 55 - extract tgz file
+ok 56 - remote tar.gz is allowed by default
+ok 57 - remote tar.gz can be disabled
+# passed all 57 test(s)
+1..57
+*** t5001-archive-attr.sh ***
+ok 1 - setup
+ok 2 - git archive
+ok 3 -  archive/ignored does not exist
+ok 4 -  archive/ignored-by-tree does not exist
+ok 5 -  archive/ignored-by-worktree exists
+ok 6 - git archive with worktree attributes
+ok 7 -  worktree/ignored does not exist
+ok 8 -  worktree/ignored-by-tree exists
+ok 9 -  worktree/ignored-by-worktree does not exist
+ok 10 - git archive --worktree-attributes option
+ok 11 -  worktree2/ignored does not exist
+ok 12 -  worktree2/ignored-by-tree exists
+ok 13 -  worktree2/ignored-by-worktree does not exist
+ok 14 - git archive vs. bare
+ok 15 - git archive with worktree attributes, bare
+ok 16 -  bare-worktree/ignored does not exist
+ok 17 -  bare-worktree/ignored-by-tree exists
+ok 18 -  bare-worktree/ignored-by-worktree exists
+ok 19 - export-subst
+ok 20 - git tar-tree vs. git archive with worktree attributes
+ok 21 - git tar-tree vs. git archive with worktree attrs, bare
+# passed all 21 test(s)
+1..21
+*** t5100-mailinfo.sh ***
+ok 1 - split sample box
+ok 2 - mailinfo 0001
+ok 3 - mailinfo 0002
+ok 4 - mailinfo 0003
+ok 5 - mailinfo 0004
+ok 6 - mailinfo 0005
+ok 7 - mailinfo 0006
+ok 8 - mailinfo 0007
+ok 9 - mailinfo 0008
+ok 10 - mailinfo 0009
+ok 11 - mailinfo 0010
+ok 12 - mailinfo 0011
+ok 13 - mailinfo 0012
+ok 14 - mailinfo 0013
+ok 15 - mailinfo 0014
+ok 16 - mailinfo 0015
+ok 17 - mailinfo 0016
+ok 18 - split box with rfc2047 samples
+ok 19 - mailinfo rfc2047/0001
+ok 20 - mailinfo rfc2047/0002
+ok 21 - mailinfo rfc2047/0003
+ok 22 - mailinfo rfc2047/0004
+ok 23 - mailinfo rfc2047/0005
+ok 24 - mailinfo rfc2047/0006
+ok 25 - mailinfo rfc2047/0007
+ok 26 - mailinfo rfc2047/0008
+ok 27 - mailinfo rfc2047/0009
+ok 28 - mailinfo rfc2047/0010
+ok 29 - mailinfo rfc2047/0011
+ok 30 - respect NULs
+ok 31 - Preserve NULs out of MIME encoded message
+ok 32 - mailinfo on from header without name works
+# passed all 32 test(s)
+1..32
+*** t5150-request-pull.sh ***
+ok 1 - setup
+ok 2 - setup: two scripts for reading pull requests
+ok 3 - pull request when forgot to push
+ok 4 - pull request after push
+ok 5 - request names an appropriate branch
+ok 6 - pull request format
+ok 7 - request-pull ignores OPTIONS_KEEPDASHDASH poison
+# passed all 7 test(s)
+1..7
+*** t5300-pack-object.sh ***
+ok 1 - setup
+ok 2 - pack without delta
+ok 3 - unpack without delta
+ok 4 - check unpack without delta
+ok 5 - pack with REF_DELTA
+ok 6 - unpack with REF_DELTA
+ok 7 - check unpack with REF_DELTA
+ok 8 - pack with OFS_DELTA
+ok 9 - unpack with OFS_DELTA
+ok 10 - check unpack with OFS_DELTA
+ok 11 - compare delta flavors
+ok 12 - use packed objects
+ok 13 - use packed deltified (REF_DELTA) objects
+ok 14 - use packed deltified (OFS_DELTA) objects
+ok 15 - survive missing objects/pack directory
+ok 16 - verify pack
+ok 17 - verify pack -v
+ok 18 - verify-pack catches mismatched .idx and .pack files
+ok 19 - verify-pack catches a corrupted pack signature
+ok 20 - verify-pack catches a corrupted pack version
+ok 21 - verify-pack catches a corrupted type/size of the 1st packed object data
+ok 22 - verify-pack catches a corrupted sum of the index file itself
+ok 23 - build pack index for an existing pack
+ok 24 - unpacking with --strict
+ok 25 - index-pack with --strict
+ok 26 - honor pack.packSizeLimit
+ok 27 - verify resulting packs
+ok 28 - tolerate packsizelimit smaller than biggest object
+ok 29 - verify resulting packs
+ok 30 - fake a SHA1 hash collision
+ok 31 - make sure index-pack detects the SHA1 collision
+# passed all 31 test(s)
+1..31
+*** t5301-sliding-window.sh ***
+ok 1 - setup
+ok 2 - verify-pack -v, defaults
+ok 3 - verify-pack -v, packedGitWindowSize == 1 page
+ok 4 - verify-pack -v, packedGit{WindowSize,Limit} == 1 page
+ok 5 - repack -a -d, packedGit{WindowSize,Limit} == 1 page
+ok 6 - verify-pack -v, defaults
+# passed all 6 test(s)
+1..6
+*** t5302-pack-index.sh ***
+ok 1 - setup
+ok 2 - pack-objects with index version 1
+ok 3 - pack-objects with index version 2
+ok 4 - both packs should be identical
+ok 5 - index v1 and index v2 should be different
+ok 6 - index-pack with index version 1
+ok 7 - index-pack with index version 2
+ok 8 - index-pack results should match pack-objects ones
+ok 9 - index-pack --verify on index version 1
+ok 10 - index-pack --verify on index version 2
+ok 11 - index v2: force some 64-bit offsets with pack-objects
+ok 12 - index v2: verify a pack with some 64-bit offsets
+ok 13 - 64-bit offsets: should be different from previous index v2 results
+ok 14 - index v2: force some 64-bit offsets with index-pack
+ok 15 - 64-bit offsets: index-pack result should match pack-objects one
+ok 16 - index-pack --verify on 64-bit offset v2 (cheat)
+ok 17 - index-pack --verify on 64-bit offset v2
+ok 18 - [index v1] 1) stream pack to repository
+ok 19 - [index v1] 2) create a stealth corruption in a delta base reference
+ok 20 - [index v1] 3) corrupted delta happily returned wrong data
+ok 21 - [index v1] 4) confirm that the pack is actually corrupted
+ok 22 - [index v1] 5) pack-objects happily reuses corrupted data
+ok 23 - [index v1] 6) newly created pack is BAD !
+ok 24 - [index v2] 1) stream pack to repository
+ok 25 - [index v2] 2) create a stealth corruption in a delta base reference
+ok 26 - [index v2] 3) corrupted delta happily returned wrong data
+ok 27 - [index v2] 4) confirm that the pack is actually corrupted
+ok 28 - [index v2] 5) pack-objects refuses to reuse corrupted data
+ok 29 - [index v2] 6) verify-pack detects CRC mismatch
+ok 30 - running index-pack in the object store
+# passed all 30 test(s)
+1..30
+*** t5303-pack-corruption-resilience.sh ***
+ok 1 - initial setup validation
+ok 2 - create corruption in header of first object
+ok 3 - ... but having a loose copy allows for full recovery
+ok 4 - ... and loose copy of first delta allows for partial recovery
+ok 5 - create corruption in data of first object
+ok 6 - ... but having a loose copy allows for full recovery
+ok 7 - ... and loose copy of second object allows for partial recovery
+ok 8 - create corruption in header of first delta
+ok 9 - ... but having a loose copy allows for full recovery
+ok 10 - ... and then a repack "clears" the corruption
+ok 11 - create corruption in data of first delta
+ok 12 - ... but having a loose copy allows for full recovery
+ok 13 - ... and then a repack "clears" the corruption
+ok 14 - corruption in delta base reference of first delta (OBJ_REF_DELTA)
+ok 15 - ... but having a loose copy allows for full recovery
+ok 16 - ... and then a repack "clears" the corruption
+ok 17 - corruption #0 in delta base reference of first delta (OBJ_OFS_DELTA)
+ok 18 - ... but having a loose copy allows for full recovery
+ok 19 - ... and then a repack "clears" the corruption
+ok 20 - corruption #1 in delta base reference of first delta (OBJ_OFS_DELTA)
+ok 21 - ... but having a loose copy allows for full recovery
+ok 22 - ... and then a repack "clears" the corruption
+ok 23 - ... and a redundant pack allows for full recovery too
+ok 24 - corrupting header to have too small output buffer fails unpack
+# passed all 24 test(s)
+1..24
+*** t5304-prune.sh ***
+ok 1 - setup
+ok 2 - prune stale packs
+ok 3 - prune --expire
+ok 4 - gc: implicit prune --expire
+ok 5 - gc: refuse to start with invalid gc.pruneExpire
+ok 6 - gc: start with ok gc.pruneExpire
+ok 7 - prune: prune nonsense parameters
+ok 8 - prune: prune unreachable heads
+ok 9 - prune: do not prune heads listed as an argument
+ok 10 - gc --no-prune
+ok 11 - gc respects gc.pruneExpire
+ok 12 - gc --prune=<date>
+ok 13 - gc --prune=never
+ok 14 - gc respects gc.pruneExpire=never
+ok 15 - prune --expire=never
+ok 16 - gc: prune old objects after local clone
+# passed all 16 test(s)
+1..16
+*** t5305-include-tag.sh ***
+ok 1 - setup
+ok 2 - pack without --include-tag
+ok 3 - unpack objects
+ok 4 - check unpacked result (have commit, no tag)
+ok 5 - pack with --include-tag
+ok 6 - unpack objects
+ok 7 - check unpacked result (have commit, have tag)
+# passed all 7 test(s)
+1..7
+*** t5306-pack-nobase.sh ***
+ok 1 - setup base
+ok 2 - setup patch_clone
+ok 3 - indirectly clone patch_clone
+ok 4 - clone of patch_clone is incomplete
+# passed all 4 test(s)
+1..4
+*** t5307-pack-missing-commit.sh ***
+ok 1 - setup
+ok 2 - check corruption
+ok 3 - rev-list notices corruption (1)
+ok 4 - rev-list notices corruption (2)
+ok 5 - pack-objects notices corruption
+# passed all 5 test(s)
+1..5
+*** t5400-send-pack.sh ***
+ok 1 - setup
+ok 2 - pack the source repository
+ok 3 - pack the destination repository
+ok 4 - refuse pushing rewound head without --force
+ok 5 - push can be used to delete a ref
+ok 6 - refuse deleting push with denyDeletes
+ok 7 - cannot override denyDeletes with git -c send-pack
+ok 8 - override denyDeletes with git -c receive-pack
+ok 9 - denyNonFastforwards trumps --force
+ok 10 - push --all excludes remote-tracking hierarchy
+ok 11 - pushing explicit refspecs respects forcing
+ok 12 - pushing wildcard refspecs respects forcing
+ok 13 - deny pushing to delete current branch
+# passed all 13 test(s)
+1..13
+*** t5401-update-hooks.sh ***
+ok 1 - setup
+ok 2 - push
+ok 3 - updated as expected
+ok 4 - hooks ran
+ok 5 - pre-receive hook input
+ok 6 - update hook arguments
+ok 7 - post-receive hook input
+ok 8 - post-update hook arguments
+ok 9 - all hook stdin is /dev/null
+ok 10 - all *-receive hook args are empty
+ok 11 - send-pack produced no output
+ok 12 - send-pack stderr contains hook messages
+# passed all 12 test(s)
+1..12
+*** t5402-post-merge-hook.sh ***
+ok 1 - setup
+ok 2 - post-merge does not run for up-to-date 
+ok 3 - post-merge runs as expected 
+ok 4 - post-merge from normal merge receives the right argument 
+ok 5 - post-merge from squash merge runs as expected 
+ok 6 - post-merge from squash merge receives the right argument 
+# passed all 6 test(s)
+1..6
+*** t5403-post-checkout-hook.sh ***
+ok 1 - setup
+ok 2 - post-checkout runs as expected 
+ok 3 - post-checkout receives the right arguments with HEAD unchanged 
+ok 4 - post-checkout runs as expected 
+ok 5 - post-checkout args are correct with git checkout -b 
+ok 6 - post-checkout receives the right args with HEAD changed 
+ok 7 - post-checkout receives the right args when not switching branches 
+ok 8 - post-checkout hook is triggered by clone
+# passed all 8 test(s)
+1..8
+*** t5404-tracking-branches.sh ***
+ok 1 - setup
+ok 2 - prepare pushable branches
+ok 3 - mixed-success push returns error
+ok 4 - check tracking branches updated correctly after push
+ok 5 - check tracking branches not updated for failed refs
+ok 6 - deleted branches have their tracking branches removed
+ok 7 - already deleted tracking branches ignored
+# passed all 7 test(s)
+1..7
+*** t5405-send-pack-rewind.sh ***
+ok 1 - setup
+ok 2 - non forced push should die not segfault
+ok 3 - forced push should succeed
+# passed all 3 test(s)
+1..3
+*** t5406-remote-rejects.sh ***
+ok 1 - setup
+ok 2 - push reports error
+ok 3 - individual ref reports error
+# passed all 3 test(s)
+1..3
+*** t5407-post-rewrite-hook.sh ***
+ok 1 - setup
+ok 2 - git commit --amend
+ok 3 - git commit --amend --no-post-rewrite
+ok 4 - git rebase
+ok 5 - git rebase --skip
+ok 6 - git rebase --skip the last one
+ok 7 - git rebase -m
+ok 8 - git rebase -m --skip
+ok 9 - git rebase -i (unchanged)
+ok 10 - git rebase -i (skip)
+ok 11 - git rebase -i (squash)
+ok 12 - git rebase -i (fixup without conflict)
+ok 13 - git rebase -i (double edit)
+# passed all 13 test(s)
+1..13
+*** t5500-fetch-pack.sh ***
+ok 1 - setup
+ok 2 - 1st pull
+ok 3 - post 1st pull setup
+ok 4 - 2nd pull
+ok 5 - 3rd pull
+ok 6 - clone shallow
+ok 7 - clone shallow object count
+ok 8 - clone shallow object count (part 2)
+ok 9 - fsck in shallow repo
+ok 10 - simple fetch in shallow repo
+ok 11 - no changes expected
+ok 12 - fetch same depth in shallow repo
+ok 13 - no changes expected
+ok 14 - add two more
+ok 15 - pull in shallow repo
+ok 16 - clone shallow object count
+ok 17 - add two more (part 2)
+ok 18 - deepening pull in shallow repo
+ok 19 - clone shallow object count
+ok 20 - deepening fetch in shallow repo
+ok 21 - clone shallow object count
+ok 22 - pull in shallow repo with missing merge base
+ok 23 - additional simple shallow deepenings
+ok 24 - clone shallow object count
+# passed all 24 test(s)
+1..24
+*** t5501-fetch-push-alternates.sh ***
+ok 1 - setup
+ok 2 - pushing into a repository with the same alternate
+ok 3 - fetching from a repository with the same alternate
+# passed all 3 test(s)
+1..3
+*** t5502-quickfetch.sh ***
+ok 1 - setup
+ok 2 - clone without alternate
+ok 3 - further commits in the original
+ok 4 - copy commit and tree but not blob by hand
+ok 5 - quickfetch should not leave a corrupted repository
+ok 6 - quickfetch should not copy from alternate
+ok 7 - quickfetch should handle ~1000 refs (on Windows)
+# passed all 7 test(s)
+1..7
+*** t5503-tagfollow.sh ***
+ok 1 - setup
+ok 2 - setup expect
+ok 3 - fetch A (new commit : 1 connection)
+ok 4 - create tag T on A, create C on branch cat
+ok 5 - setup expect
+ok 6 - fetch C, T (new branch, tag : 1 connection)
+ok 7 - create commits O, B, tag S on B
+ok 8 - setup expect
+ok 9 - fetch B, S (commit and tag : 1 connection)
+ok 10 - setup expect
+ok 11 - new clone fetch master and tags
+# passed all 11 test(s)
+1..11
+*** t5504-fetch-receive-strict.sh ***
+ok 1 - setup
+ok 2 - fetch without strict
+ok 3 - fetch with !fetch.fsckobjects
+ok 4 - fetch with fetch.fsckobjects
+ok 5 - fetch with transfer.fsckobjects
+ok 6 - push without strict
+ok 7 - push with !receive.fsckobjects
+ok 8 - push with receive.fsckobjects
+ok 9 - push with transfer.fsckobjects
+# passed all 9 test(s)
+1..9
+*** t5505-remote.sh ***
+ok 1 - setup
+ok 2 - remote information for the origin
+ok 3 - add another remote
+ok 4 - remote forces tracking branches
+ok 5 - remove remote
+ok 6 - remove remote
+ok 7 - remove remote protects local branches
+ok 8 - show
+ok 9 - show -n
+ok 10 - prune
+ok 11 - set-head --delete
+ok 12 - set-head --auto
+ok 13 - set-head --auto fails w/multiple HEADs
+ok 14 - set-head explicit
+ok 15 - prune --dry-run
+ok 16 - add --mirror && prune
+ok 17 - add --mirror=fetch
+ok 18 - fetch mirrors act as mirrors during fetch
+ok 19 - fetch mirrors can prune
+ok 20 - fetch mirrors do not act as mirrors during push
+ok 21 - add fetch mirror with specific branches
+ok 22 - fetch mirror respects specific branches
+ok 23 - add --mirror=push
+ok 24 - push mirrors act as mirrors during push
+ok 25 - push mirrors do not act as mirrors during fetch
+ok 26 - push mirrors do not allow you to specify refs
+ok 27 - add alt && prune
+ok 28 - add with reachable tags (default)
+ok 29 - add --tags
+ok 30 - add --no-tags
+ok 31 - reject --no-no-tags
+ok 32 - update
+ok 33 - update with arguments
+ok 34 - update --prune
+ok 35 - update default
+ok 36 - update default (overridden, with funny whitespace)
+ok 37 - update (with remotes.default defined)
+ok 38 - "remote show" does not show symbolic refs
+ok 39 - reject adding remote with an invalid name
+ok 40 - rename a remote
+ok 41 - rename does not update a non-default fetch refspec
+ok 42 - rename a remote with name part of fetch spec
+ok 43 - rename a remote with name prefix of other remote
+ok 44 - migrate a remote from named file in $GIT_DIR/remotes
+ok 45 - migrate a remote from named file in $GIT_DIR/branches
+ok 46 - remote prune to cause a dangling symref
+ok 47 - show empty remote
+ok 48 - remote set-branches requires a remote
+ok 49 - remote set-branches
+ok 50 - remote set-branches with --mirror
+ok 51 - new remote
+ok 52 - remote set-url bar
+ok 53 - remote set-url baz bar
+ok 54 - remote set-url zot bar
+ok 55 - remote set-url --push zot baz
+ok 56 - remote set-url --push zot
+ok 57 - remote set-url --push qux zot
+ok 58 - remote set-url --push foo qu+x
+ok 59 - remote set-url --push --add aaa
+ok 60 - remote set-url --push bar aaa
+ok 61 - remote set-url --push --delete bar
+ok 62 - remote set-url --push --delete foo
+ok 63 - remote set-url --add bbb
+ok 64 - remote set-url --delete .*
+ok 65 - remote set-url --delete bbb
+ok 66 - remote set-url --delete baz
+ok 67 - remote set-url --add ccc
+ok 68 - remote set-url --delete baz
+# passed all 68 test(s)
+1..68
+*** t5506-remote-groups.sh ***
+ok 1 - setup
+ok 2 - no group updates all
+ok 3 - nonexistent group produces error
+ok 4 - updating group updates all members (remote update)
+ok 5 - updating group updates all members (fetch)
+ok 6 - updating group does not update non-members (remote update)
+ok 7 - updating group does not update non-members (fetch)
+ok 8 - updating remote name updates that remote
+# passed all 8 test(s)
+1..8
+*** t5509-fetch-push-namespaces.sh ***
+ok 1 - setup
+ok 2 - pushing into a repository using a ref namespace
+ok 3 - pulling from a repository using a ref namespace
+ok 4 - mirroring a repository using a ref namespace
+# passed all 4 test(s)
+1..4
+*** t5510-fetch.sh ***
+ok 1 - setup
+ok 2 - clone and setup child repos
+ok 3 - fetch test
+ok 4 - fetch test for-merge
+ok 5 - fetch --prune on its own works as expected
+ok 6 - fetch --prune with a branch name keeps branches
+ok 7 - fetch --prune with a namespace keeps other namespaces
+ok 8 - fetch --prune --tags does not delete the remote-tracking branches
+ok 9 - fetch --prune --tags with branch does not delete other remote-tracking branches
+ok 10 - fetch tags when there is no tags
+ok 11 - fetch following tags
+ok 12 - fetch must not resolve short tag name
+ok 13 - fetch can now resolve short remote name
+ok 14 - create bundle 1
+ok 15 - header of bundle looks right
+ok 16 - create bundle 2
+ok 17 - unbundle 1
+ok 18 - bundle 1 has only 3 files 
+ok 19 - unbundle 2
+ok 20 - bundle does not prerequisite objects
+ok 21 - bundle should be able to create a full history
+ok 22 - fetch via rsync
+ok 23 - push via rsync
+ok 24 - push via rsync
+ok 25 - fetch with a non-applying branch.<name>.merge
+ok 26 - fetch from GIT URL with a non-applying branch.<name>.merge [1]
+ok 27 - fetch from GIT URL with a non-applying branch.<name>.merge [2]
+ok 28 - fetch from GIT URL with a non-applying branch.<name>.merge [3]
+ok 29 - quoting of a strangely named repo
+ok 30 - bundle should record HEAD correctly
+ok 31 - explicit fetch should not update tracking
+ok 32 - explicit pull should not update tracking
+ok 33 - configured fetch updates tracking
+ok 34 - pushing nonexistent branch by mistake should not segv
+ok 35 - auto tag following fetches minimum
+ok 36 - refuse to fetch into the current branch
+ok 37 - fetch into the current branch with --update-head-ok
+ok 38 - fetch --dry-run
+ok 39 - should be able to fetch with duplicate refspecs
+# passed all 39 test(s)
+1..39
+*** t5511-refspec.sh ***
+ok 1 - push  (invalid)
+ok 2 - push :
+ok 3 - push :: (invalid)
+ok 4 - push +:
+ok 5 - fetch 
+ok 6 - fetch :
+ok 7 - fetch :: (invalid)
+ok 8 - push refs/heads/*:refs/remotes/frotz/*
+ok 9 - push refs/heads/*:refs/remotes/frotz (invalid)
+ok 10 - push refs/heads:refs/remotes/frotz/* (invalid)
+ok 11 - push refs/heads/master:refs/remotes/frotz/xyzzy
+ok 12 - fetch refs/heads/*:refs/remotes/frotz/*
+ok 13 - fetch refs/heads/*:refs/remotes/frotz (invalid)
+ok 14 - fetch refs/heads:refs/remotes/frotz/* (invalid)
+ok 15 - fetch refs/heads/master:refs/remotes/frotz/xyzzy
+ok 16 - fetch refs/heads/master::refs/remotes/frotz/xyzzy (invalid)
+ok 17 - fetch refs/heads/maste :refs/remotes/frotz/xyzzy (invalid)
+ok 18 - push master~1:refs/remotes/frotz/backup
+ok 19 - fetch master~1:refs/remotes/frotz/backup (invalid)
+ok 20 - push HEAD~4:refs/remotes/frotz/new
+ok 21 - fetch HEAD~4:refs/remotes/frotz/new (invalid)
+ok 22 - push HEAD
+ok 23 - fetch HEAD
+ok 24 - push refs/heads/ nitfol (invalid)
+ok 25 - fetch refs/heads/ nitfol (invalid)
+ok 26 - push HEAD: (invalid)
+ok 27 - fetch HEAD:
+ok 28 - push refs/heads/ nitfol: (invalid)
+ok 29 - fetch refs/heads/ nitfol: (invalid)
+ok 30 - push :refs/remotes/frotz/deleteme
+ok 31 - fetch :refs/remotes/frotz/HEAD-to-me
+ok 32 - push :refs/remotes/frotz/delete me (invalid)
+ok 33 - fetch :refs/remotes/frotz/HEAD to me (invalid)
+ok 34 - fetch refs/heads/*/for-linus:refs/remotes/mine/*-blah (invalid)
+ok 35 - push refs/heads/*/for-linus:refs/remotes/mine/*-blah (invalid)
+ok 36 - fetch refs/heads*/for-linus:refs/remotes/mine/* (invalid)
+ok 37 - push refs/heads*/for-linus:refs/remotes/mine/* (invalid)
+ok 38 - fetch refs/heads/*/*/for-linus:refs/remotes/mine/* (invalid)
+ok 39 - push refs/heads/*/*/for-linus:refs/remotes/mine/* (invalid)
+ok 40 - fetch refs/heads/*/for-linus:refs/remotes/mine/*
+ok 41 - push refs/heads/*/for-linus:refs/remotes/mine/*
+# passed all 41 test(s)
+1..41
+*** t5512-ls-remote.sh ***
+ok 1 - setup
+ok 2 - ls-remote --tags .git
+ok 3 - ls-remote .git
+ok 4 - ls-remote --tags self
+ok 5 - ls-remote self
+ok 6 - dies when no remote specified and no default remotes found
+ok 7 - use "origin" when no remote specified
+ok 8 - suppress "From <url>" with -q
+ok 9 - use branch.<name>.remote if possible
+ok 10 - confuses pattern as remote when no remote specified
+ok 11 - die with non-2 for wrong repository even with --exit-code
+ok 12 - Report success even when nothing matches
+ok 13 - Report no-match with --exit-code
+ok 14 - Report match with --exit-code
+# passed all 14 test(s)
+1..14
+*** t5513-fetch-track.sh ***
+ok 1 - setup
+ok 2 - fetch
+# passed all 2 test(s)
+1..2
+*** t5514-fetch-multiple.sh ***
+ok 1 - setup
+ok 2 - git fetch --all
+ok 3 - git fetch --all should continue if a remote has errors
+ok 4 - git fetch --all does not allow non-option arguments
+ok 5 - git fetch --multiple (but only one remote)
+ok 6 - git fetch --multiple (two remotes)
+ok 7 - git fetch --multiple (bad remote names)
+ok 8 - git fetch --all (skipFetchAll)
+ok 9 - git fetch --multiple (ignoring skipFetchAll)
+# passed all 9 test(s)
+1..9
+*** t5515-fetch-merge-logic.sh ***
+ok 1 - setup
+ok 2 - br-config-explicit
+ok 3 - br-config-explicit config-explicit
+ok 4 - br-config-explicit-merge
+ok 5 - br-config-explicit-merge config-explicit
+ok 6 - br-config-explicit-octopus
+ok 7 - br-config-explicit-octopus config-explicit
+ok 8 - br-config-glob
+ok 9 - br-config-glob config-glob
+ok 10 - br-config-glob-merge
+ok 11 - br-config-glob-merge config-glob
+ok 12 - br-config-glob-octopus
+ok 13 - br-config-glob-octopus config-glob
+ok 14 - br-remote-explicit
+ok 15 - br-remote-explicit remote-explicit
+ok 16 - br-remote-explicit-merge
+ok 17 - br-remote-explicit-merge remote-explicit
+ok 18 - br-remote-explicit-octopus
+ok 19 - br-remote-explicit-octopus remote-explicit
+ok 20 - br-remote-glob
+ok 21 - br-remote-glob remote-glob
+ok 22 - br-remote-glob-merge
+ok 23 - br-remote-glob-merge remote-glob
+ok 24 - br-remote-glob-octopus
+ok 25 - br-remote-glob-octopus remote-glob
+ok 26 - br-branches-default
+ok 27 - br-branches-default branches-default
+ok 28 - br-branches-default-merge
+ok 29 - br-branches-default-merge branches-default
+ok 30 - br-branches-default-octopus
+ok 31 - br-branches-default-octopus branches-default
+ok 32 - br-branches-one
+ok 33 - br-branches-one branches-one
+ok 34 - br-branches-one-merge
+ok 35 - br-branches-one-merge branches-one
+ok 36 - br-branches-one-octopus
+ok 37 - br-branches-one-octopus branches-one
+ok 38 - master
+ok 39 - master config-explicit
+ok 40 - master config-glob
+ok 41 - master remote-explicit
+ok 42 - master remote-glob
+ok 43 - master branches-default
+ok 44 - master branches-one
+ok 45 - br-unconfig
+ok 46 - br-unconfig config-explicit
+ok 47 - br-unconfig config-glob
+ok 48 - br-unconfig remote-explicit
+ok 49 - br-unconfig remote-glob
+ok 50 - br-unconfig branches-default
+ok 51 - br-unconfig branches-one
+ok 52 - master ../.git
+ok 53 - master ../.git one
+ok 54 - master ../.git one two
+ok 55 - master --tags ../.git
+ok 56 - master ../.git tag tag-one tag tag-three
+ok 57 - master ../.git tag tag-one-tree tag tag-three-file
+ok 58 - master ../.git one tag tag-one tag tag-three-file
+ok 59 - br-unconfig ../.git
+ok 60 - br-unconfig ../.git one
+ok 61 - br-unconfig ../.git one two
+ok 62 - br-unconfig --tags ../.git
+ok 63 - br-unconfig ../.git tag tag-one tag tag-three
+ok 64 - br-unconfig ../.git tag tag-one-tree tag tag-three-file
+ok 65 - br-unconfig ../.git one tag tag-one tag tag-three-file
+# passed all 65 test(s)
+1..65
+*** t5516-fetch-push.sh ***
+ok 1 - setup
+ok 2 - fetch without wildcard
+ok 3 - fetch with wildcard
+ok 4 - fetch with insteadOf
+ok 5 - fetch with pushInsteadOf (should not rewrite)
+ok 6 - push without wildcard
+ok 7 - push with wildcard
+ok 8 - push with insteadOf
+ok 9 - push with pushInsteadOf
+ok 10 - push with pushInsteadOf and explicit pushurl (pushInsteadOf should not rewrite)
+ok 11 - push with matching heads
+ok 12 - push with matching heads on the command line
+ok 13 - failed (non-fast-forward) push with matching heads
+ok 14 - push --force with matching heads
+ok 15 - push with matching heads and forced update
+ok 16 - push with no ambiguity (1)
+ok 17 - push with no ambiguity (2)
+ok 18 - push with colon-less refspec, no ambiguity
+ok 19 - push with weak ambiguity (1)
+ok 20 - push with weak ambiguity (2)
+ok 21 - push with ambiguity
+ok 22 - push with colon-less refspec (1)
+ok 23 - push with colon-less refspec (2)
+ok 24 - push with colon-less refspec (3)
+ok 25 - push with colon-less refspec (4)
+ok 26 - push head with non-existent, incomplete dest
+ok 27 - push tag with non-existent, incomplete dest
+ok 28 - push sha1 with non-existent, incomplete dest
+ok 29 - push ref expression with non-existent, incomplete dest
+ok 30 - push with HEAD
+ok 31 - push with HEAD nonexisting at remote
+ok 32 - push with +HEAD
+ok 33 - push HEAD with non-existent, incomplete dest
+ok 34 - push with config remote.*.push = HEAD
+ok 35 - push with config remote.*.pushurl
+ok 36 - push with dry-run
+ok 37 - push updates local refs
+ok 38 - push updates up-to-date local refs
+ok 39 - push preserves up-to-date packed refs
+ok 40 - push does not update local refs on failure
+ok 41 - allow deleting an invalid remote ref
+ok 42 - pushing valid refs triggers post-receive and post-update hooks
+ok 43 - deleting dangling ref triggers hooks with correct args
+ok 44 - deletion of a non-existent ref is not fed to post-receive and post-update hooks
+ok 45 - deletion of a non-existent ref alone does trigger post-receive and post-update hooks
+ok 46 - mixed ref updates, deletes, invalid deletes trigger hooks with correct input
+ok 47 - allow deleting a ref using --delete
+ok 48 - allow deleting a tag using --delete
+ok 49 - push --delete without args aborts
+ok 50 - push --delete refuses src:dest refspecs
+ok 51 - warn on push to HEAD of non-bare repository
+ok 52 - deny push to HEAD of non-bare repository
+ok 53 - allow push to HEAD of bare repository (bare)
+ok 54 - allow push to HEAD of non-bare repository (config)
+ok 55 - fetch with branches
+ok 56 - fetch with branches containing #
+ok 57 - push with branches
+ok 58 - push with branches containing #
+ok 59 - push into aliased refs (consistent)
+ok 60 - push into aliased refs (inconsistent)
+ok 61 - push --porcelain
+ok 62 - push --porcelain bad url
+ok 63 - push --porcelain rejected
+ok 64 - push --porcelain --dry-run rejected
+# passed all 64 test(s)
+1..64
+*** t5517-push-mirror.sh ***
+ok 1 - push mirror creates new branches
+ok 2 - push mirror updates existing branches
+ok 3 - push mirror force updates existing branches
+ok 4 - push mirror removes branches
+ok 5 - push mirror adds, updates and removes branches together
+ok 6 - push mirror creates new tags
+ok 7 - push mirror updates existing tags
+ok 8 - push mirror force updates existing tags
+ok 9 - push mirror removes tags
+ok 10 - push mirror adds, updates and removes tags together
+ok 11 - remote.foo.mirror adds and removes branches
+ok 12 - remote.foo.mirror=no has no effect
+# passed all 12 test(s)
+1..12
+*** t5518-fetch-exit-status.sh ***
+ok 1 - setup
+ok 2 - non-fast-forward fetch
+ok 3 - forced update
+# passed all 3 test(s)
+1..3
+*** t5519-push-alternates.sh ***
+ok 1 - setup
+ok 2 - alice works and pushes
+ok 3 - bob fetches from alice, works and pushes
+ok 4 - clean-up in case the previous failed
+ok 5 - alice works and pushes again
+ok 6 - bob works and pushes
+ok 7 - alice works and pushes yet again
+ok 8 - bob works and pushes again
+# passed all 8 test(s)
+1..8
+*** t5520-pull.sh ***
+ok 1 - setup
+ok 2 - pulling into void
+ok 3 - checking the results
+ok 4 - pulling into void using master:master
+ok 5 - pulling into void does not overwrite untracked files
+ok 6 - test . as a remote
+ok 7 - the default remote . should not break explicit pull
+ok 8 - --rebase
+ok 9 - pull.rebase
+ok 10 - branch.to-rebase.rebase
+ok 11 - branch.to-rebase.rebase should override pull.rebase
+ok 12 - --rebase with rebased upstream
+ok 13 - --rebase with rebased default upstream
+ok 14 - rebased upstream + fetch + pull --rebase
+ok 15 - pull --rebase dies early with dirty working directory
+ok 16 - pull --rebase works on branch yet to be born
+ok 17 - setup for detecting upstreamed changes
+ok 18 - git pull --rebase detects upstreamed changes
+ok 19 - setup for avoiding reapplying old patches
+ok 20 - git pull --rebase does not reapply old patches
+ok 21 - git pull --rebase against local branch
+# passed all 21 test(s)
+1..21
+*** t5521-pull-options.sh ***
+ok 1 - setup
+ok 2 - git pull -q
+ok 3 - git pull
+ok 4 - git pull -v
+ok 5 - git pull -v -q
+ok 6 - git pull -q -v
+ok 7 - git pull --force
+ok 8 - git pull --all
+# passed all 8 test(s)
+1..8
+*** t5522-pull-symlink.sh ***
+ok 1 - setup
+ok 2 - pulling from real subdir
+ok 3 - pulling from symlinked subdir
+ok 4 - pushing from symlinked subdir
+# passed all 4 test(s)
+1..4
+*** t5523-push-upstream.sh ***
+ok 1 - set up terminal for tests
+ok 2 - setup bare parent
+ok 3 - setup local commit
+ok 4 - push -u master:master
+ok 5 - push -u master:other
+ok 6 - push -u --dry-run master:otherX
+ok 7 - push -u master2:master2
+ok 8 - push -u master2:other2
+ok 9 - push -u :master2
+ok 10 - push -u --all
+ok 11 - push -u HEAD
+ok 12 # skip progress messages go to tty (missing TTY)
+ok 13 - progress messages do not go to non-tty
+ok 14 - progress messages go to non-tty (forced)
+ok 15 # skip push -q suppresses progress (missing TTY)
+ok 16 # skip push --no-progress suppresses progress (missing TTY)
+ok 17 # skip quiet push (missing TTY)
+# passed all 17 test(s)
+1..17
+*** t5524-pull-msg.sh ***
+ok 1 - setup
+ok 2 - pull
+# passed all 2 test(s)
+1..2
+*** t5525-fetch-tagopt.sh ***
+ok 1 - setup
+ok 2 - fetch with tagopt=--no-tags does not get tag
+ok 3 - fetch --tags with tagopt=--no-tags gets tag
+ok 4 - fetch --no-tags with tagopt=--tags does not get tag
+ok 5 - fetch with tagopt=--tags gets tag
+# passed all 5 test(s)
+1..5
+*** t5526-fetch-submodules.sh ***
+ok 1 - setup
+ok 2 - fetch --recurse-submodules recurses into submodules
+ok 3 - fetch alone only fetches superproject
+ok 4 - fetch --no-recurse-submodules only fetches superproject
+ok 5 - using fetchRecurseSubmodules=true in .gitmodules recurses into submodules
+ok 6 - --no-recurse-submodules overrides .gitmodules config
+ok 7 - using fetchRecurseSubmodules=false in .git/config overrides setting in .gitmodules
+ok 8 - --recurse-submodules overrides fetchRecurseSubmodules setting from .git/config
+ok 9 - --quiet propagates to submodules
+ok 10 - --dry-run propagates to submodules
+ok 11 - Without --dry-run propagates to submodules
+ok 12 - recurseSubmodules=true propagates into submodules
+ok 13 - --recurse-submodules overrides config in submodule
+ok 14 - --no-recurse-submodules overrides config setting
+ok 15 - Recursion doesn't happen when no new commits are fetched in the superproject
+ok 16 - Recursion stops when no new submodule commits are fetched
+ok 17 - Recursion doesn't happen when new superproject commits don't change any submodules
+ok 18 - Recursion picks up config in submodule
+ok 19 - Recursion picks up all submodules when necessary
+ok 20 - '--recurse-submodules=on-demand' doesn't recurse when no new commits are fetched in the superproject (and ignores config)
+ok 21 - '--recurse-submodules=on-demand' recurses as deep as necessary (and ignores config)
+ok 22 - '--recurse-submodules=on-demand' stops when no new submodule commits are found in the superproject (and ignores config)
+ok 23 - 'fetch.recurseSubmodules=on-demand' overrides global config
+ok 24 - 'submodule.<sub>.fetchRecurseSubmodules=on-demand' overrides fetch.recurseSubmodules
+ok 25 - don't fetch submodule when newly recorded commits are already present
+# passed all 25 test(s)
+1..25
+*** t5527-fetch-odd-refs.sh ***
+ok 1 - setup repo with odd suffix ref
+ok 2 - suffix ref is ignored during fetch
+# passed all 2 test(s)
+1..2
+*** t5530-upload-pack-error.sh ***
+ok 1 - setup and corrupt repository
+ok 2 - fsck fails
+ok 3 - upload-pack fails due to error in pack-objects packing
+ok 4 - corrupt repo differently
+ok 5 - fsck fails
+ok 6 - upload-pack fails due to error in rev-list
+ok 7 - upload-pack error message when bad ref requested
+ok 8 - upload-pack fails due to error in pack-objects enumeration
+ok 9 - create empty repository
+ok 10 - fetch fails
+# passed all 10 test(s)
+1..10
+*** t5531-deep-submodule-push.sh ***
+ok 1 - setup
+ok 2 - push
+ok 3 - push if submodule has no remote
+ok 4 - push fails if submodule commit not on remote
+ok 5 - push succeeds after commit was pushed to remote
+ok 6 - push fails when commit on multiple branches if one branch has no remote
+ok 7 - push succeeds if submodule has no remote and is on the first superproject commit
+# passed all 7 test(s)
+1..7
+*** t5532-fetch-proxy.sh ***
+ok 1 - setup remote repo
+ok 2 - setup local repo
+ok 3 - fetch through proxy works
+# passed all 3 test(s)
+1..3
+*** t5540-http-push.sh ***
+# passed all 0 test(s)
+1..0 # SKIP Network testing disabled (define GIT_TEST_HTTPD to enable)
+*** t5541-http-push.sh ***
+# passed all 0 test(s)
+1..0 # SKIP Network testing disabled (define GIT_TEST_HTTPD to enable)
+*** t5550-http-fetch.sh ***
+# passed all 0 test(s)
+1..0 # SKIP Network testing disabled (define GIT_TEST_HTTPD to enable)
+*** t5551-http-fetch.sh ***
+# passed all 0 test(s)
+1..0 # SKIP Network testing disabled (define GIT_TEST_HTTPD to enable)
+*** t5560-http-backend-noserver.sh ***
+ok 1 - setup repository
+ok 2 - direct refs/heads/master not found
+ok 3 - static file is ok
+ok 4 - no export by default
+ok 5 - export if git-daemon-export-ok
+ok 6 - static file if http.getanyfile true is ok
+ok 7 - static file if http.getanyfile false fails
+ok 8 - http.uploadpack default enabled
+ok 9 - http.uploadpack true
+ok 10 - http.uploadpack false
+ok 11 - http.receivepack default disabled
+ok 12 - http.receivepack true
+ok 13 - http.receivepack false
+ok 14 - http-backend blocks bad PATH_INFO
+# passed all 14 test(s)
+1..14
+*** t5561-http-backend.sh ***
+# passed all 0 test(s)
+1..0 # SKIP Network testing disabled (define GIT_TEST_HTTPD to enable)
+*** t5600-clone-fail-cleanup.sh ***
+ok 1 - clone of non-existent source should fail
+ok 2 - failed clone should not leave a directory
+ok 3 - clone of non-existent (relative to $PWD) source should fail
+ok 4 - clone should work now that source exists
+ok 5 - successful clone must leave the directory
+# passed all 5 test(s)
+1..5
+*** t5601-clone.sh ***
+ok 1 - setup
+ok 2 - clone with excess parameters (1)
+ok 3 - clone with excess parameters (2)
+ok 4 - output from clone
+ok 5 - clone does not keep pack
+ok 6 - clone checks out files
+ok 7 - clone respects GIT_WORK_TREE
+ok 8 - clone creates intermediate directories
+ok 9 - clone creates intermediate directories for bare repo
+ok 10 - clone --mirror
+ok 11 - clone --bare names the local repository <name>.git
+ok 12 - clone --mirror does not repeat tags
+ok 13 - clone to destination with trailing /
+ok 14 - clone to destination with extra trailing /
+ok 15 - clone to an existing empty directory
+ok 16 - clone to an existing non-empty directory
+ok 17 - clone to an existing path
+ok 18 - clone a void
+ok 19 - clone respects global branch.autosetuprebase
+ok 20 - respect url-encoding of file://
+ok 21 - do not query-string-decode + in URLs
+ok 22 - do not respect url-encoding of non-url path
+ok 23 - clone separate gitdir
+ok 24 - clone separate gitdir: output
+ok 25 - clone from .git file
+ok 26 - fetch from .git gitfile
+ok 27 - fetch from gitfile parent
+ok 28 - clone separate gitdir where target already exists
+ok 29 - clone --reference from original
+ok 30 - clone with more than one --reference
+ok 31 - clone from original with relative alternate
+# passed all 31 test(s)
+1..31
+*** t5602-clone-remote-exec.sh ***
+ok 1 - setup
+ok 2 - clone calls git upload-pack unqualified with no -u option
+ok 3 - clone calls specified git upload-pack with -u option
+# passed all 3 test(s)
+1..3
+*** t5700-clone-reference.sh ***
+ok 1 - preparing first repository
+ok 2 - preparing second repository
+ok 3 - cloning with reference (-l -s)
+ok 4 - existence of info/alternates
+ok 5 - pulling from reference
+ok 6 - that reference gets used
+ok 7 - cloning with reference (no -l -s)
+ok 8 - fetched no objects
+ok 9 - existence of info/alternates
+ok 10 - pulling from reference
+ok 11 - that reference gets used
+ok 12 - updating origin
+ok 13 - pulling changes from origin
+ok 14 - that alternate to origin gets used
+ok 15 - pulling changes from origin
+ok 16 - check objects expected to exist locally
+ok 17 - preparing alternate repository #1
+ok 18 - cloning alternate repo #2 and adding changes to repo #1
+ok 19 - cloning alternate repo #1, using #2 as reference
+ok 20 - cloning with reference being subset of source (-l -s)
+ok 21 - clone with reference from a tagged repository
+# passed all 21 test(s)
+1..21
+*** t5701-clone-local.sh ***
+ok 1 - preparing origin repository
+ok 2 - local clone without .git suffix
+ok 3 - local clone with .git suffix
+ok 4 - local clone from x
+ok 5 - local clone from x.git that does not exist
+ok 6 - With -no-hardlinks, local will make a copy
+ok 7 - Even without -l, local will make a hardlink
+ok 8 - local clone of repo with nonexistent ref in HEAD
+ok 9 - bundle clone without .bundle suffix
+ok 10 - bundle clone with .bundle suffix
+ok 11 - bundle clone from b4
+ok 12 - bundle clone from b4.bundle that does not exist
+ok 13 - bundle clone with nonexistent HEAD
+ok 14 - clone empty repository
+ok 15 - clone empty repository, and then push should not segfault.
+ok 16 - cloning non-existent directory fails
+ok 17 - cloning non-git directory fails
+# passed all 17 test(s)
+1..17
+*** t5702-clone-options.sh ***
+ok 1 - setup
+ok 2 - clone -o
+ok 3 - redirected clone
+ok 4 - redirected clone -v
+# passed all 4 test(s)
+1..4
+*** t5704-bundle.sh ***
+ok 1 - setup
+ok 2 - tags can be excluded by rev-list options
+ok 3 - die if bundle file cannot be created
+not ok 4 - bundle --stdin # TODO known breakage
+not ok 5 - bundle --stdin <rev-list options> # TODO known breakage
+ok 6 - empty bundle file is rejected
+# still have 2 known breakage(s)
+# passed all remaining 4 test(s)
+1..6
+*** t5705-clone-2gb.sh ***
+Skipping expensive 2GB clone test; enable it with GIT_TEST_CLONE_2GB=t
+ok 1 # skip setup (missing CLONE_2GB)
+ok 2 # skip clone - bare (missing CLONE_2GB)
+ok 3 # skip clone - with worktree, file:// protocol (missing CLONE_2GB)
+# passed all 3 test(s)
+1..3
+*** t5706-clone-branch.sh ***
+ok 1 - setup
+ok 2 - vanilla clone chooses HEAD
+ok 3 - clone -b chooses specified branch
+ok 4 - clone -b sets up tracking
+ok 5 - clone -b does not munge remotes/origin/HEAD
+ok 6 - clone -b with bogus branch chooses HEAD
+# passed all 6 test(s)
+1..6
+*** t5707-clone-detached.sh ***
+ok 1 - setup
+ok 2 - clone repo (detached HEAD points to branch)
+ok 3 - cloned HEAD matches
+not ok 4 - cloned HEAD is detached # TODO known breakage
+ok 5 - clone repo (detached HEAD points to tag)
+ok 6 - cloned HEAD matches
+ok 7 - cloned HEAD is detached
+ok 8 - clone repo (detached HEAD points to history)
+ok 9 - cloned HEAD matches
+ok 10 - cloned HEAD is detached
+ok 11 - clone repo (orphan detached HEAD)
+ok 12 - cloned HEAD matches
+ok 13 - cloned HEAD is detached
+# still have 1 known breakage(s)
+# passed all remaining 12 test(s)
+1..13
+*** t5708-clone-config.sh ***
+ok 1 - clone -c sets config in cloned repo
+ok 2 - clone -c can set multi-keys
+ok 3 - clone -c without a value is boolean true
+ok 4 - clone -c config is available during clone
+# passed all 4 test(s)
+1..4
+*** t5710-info-alternate.sh ***
+ok 1 - preparing first repository
+ok 2 - preparing second repository
+ok 3 - preparing third repository
+ok 4 - creating too deep nesting
+ok 5 - invalidity of deepest repository
+ok 6 - validity of third repository
+ok 7 - validity of fourth repository
+ok 8 - breaking of loops
+ok 9 - that info/alternates is necessary
+ok 10 - that relative alternate is possible for current dir
+ok 11 - that relative alternate is only possible for current dir
+# passed all 11 test(s)
+1..11
+*** t5800-remote-helpers.sh ***
+ok 1 - setup repository
+ok 2 - cloning from local repo
+ok 3 - cloning from remote repo
+ok 4 - create new commit on remote
+ok 5 - pulling from local repo
+ok 6 - pulling from remote remote
+ok 7 - pushing to local repo
+ok 8 - synch with changes from localclone
+ok 9 - pushing remote local repo
+ok 10 - fetch new branch
+ok 11 - fetch multiple branches
+ok 12 - push when remote has extra refs
+ok 13 - push new branch by name
+not ok 14 - push new branch with old:new refspec # TODO known breakage
+# still have 1 known breakage(s)
+# passed all remaining 13 test(s)
+1..14
+*** t5900-repo-selection.sh ***
+ok 1 - find .git dir in worktree
+ok 2 - automagically add .git suffix
+ok 3 - automagically add .git suffix to worktree
+ok 4 - prefer worktree foo over bare foo.git
+ok 5 - prefer bare foo over bare foo.git
+ok 6 - disambiguate with full foo.git
+ok 7 - we are not fooled by non-git foo directory
+ok 8 - prefer inner .git over outer bare
+# passed all 8 test(s)
+1..8
+*** t6000-rev-list-misc.sh ***
+ok 1 - setup
+ok 2 - rev-list --objects heeds pathspecs
+ok 3 - rev-list --objects with pathspecs and deeper paths
+ok 4 - rev-list --objects with pathspecs and copied files
+# passed all 4 test(s)
+1..4
+*** t6001-rev-list-graft.sh ***
+ok 1 - setup
+ok 2 - without grafts
+ok 3 - with grafts
+ok 4 - without grafts, with pathlimit
+ok 5 - with grafts, with pathlimit
+ok 6 - without grafts
+ok 7 - with grafts
+ok 8 - without grafts, with pathlimit
+ok 9 - with grafts, with pathlimit
+ok 10 - without grafts
+ok 11 - with grafts
+ok 12 - without grafts, with pathlimit
+ok 13 - with grafts, with pathlimit
+# passed all 13 test(s)
+1..13
+*** t6002-rev-list-bisect.sh ***
+ok 1 - bisection diff --bisect l0 ^root <= 0
+ok 2 - bisection diff --bisect l1 ^root <= 0
+ok 3 - bisection diff --bisect l2 ^root <= 0
+ok 4 - bisection diff --bisect a0 ^root <= 0
+ok 5 - bisection diff --bisect a1 ^root <= 0
+ok 6 - bisection diff --bisect a2 ^root <= 0
+ok 7 - bisection diff --bisect a3 ^root <= 0
+ok 8 - bisection diff --bisect b1 ^root <= 0
+ok 9 - bisection diff --bisect b2 ^root <= 0
+ok 10 - bisection diff --bisect b3 ^root <= 0
+ok 11 - bisection diff --bisect c1 ^root <= 0
+ok 12 - bisection diff --bisect c2 ^root <= 0
+ok 13 - bisection diff --bisect c3 ^root <= 0
+ok 14 - bisection diff --bisect E ^F <= 0
+ok 15 - bisection diff --bisect e1 ^F <= 0
+ok 16 - bisection diff --bisect e2 ^F <= 0
+ok 17 - bisection diff --bisect e3 ^F <= 0
+ok 18 - bisection diff --bisect e4 ^F <= 0
+ok 19 - bisection diff --bisect e5 ^F <= 0
+ok 20 - bisection diff --bisect e6 ^F <= 0
+ok 21 - bisection diff --bisect e7 ^F <= 0
+ok 22 - bisection diff --bisect f1 ^F <= 0
+ok 23 - bisection diff --bisect f2 ^F <= 0
+ok 24 - bisection diff --bisect f3 ^F <= 0
+ok 25 - bisection diff --bisect f4 ^F <= 0
+ok 26 - bisection diff --bisect E ^F <= 0
+ok 27 - bisection diff --bisect V ^U <= 1
+ok 28 - bisection diff --bisect V ^U ^u1 ^u2 ^u3 <= 0
+ok 29 - bisection diff --bisect u1 ^U <= 0
+ok 30 - bisection diff --bisect u2 ^U <= 0
+ok 31 - bisection diff --bisect u3 ^U <= 0
+ok 32 - bisection diff --bisect u4 ^U <= 0
+ok 33 - bisection diff --bisect u5 ^U <= 0
+ok 34 - --bisect l5 ^root
+ok 35 - --bisect l5 ^root ^c3
+ok 36 - --bisect l5 ^root ^c3 ^b4
+ok 37 - --bisect l3 ^root ^c3 ^b4
+ok 38 - --bisect l5 ^b3 ^a3 ^b4 ^a4
+ok 39 - --bisect l4 ^a2 ^a3 ^b ^a4
+ok 40 - --bisect l3 ^a2 ^a3 ^b ^a4
+ok 41 - --bisect a4 ^a2 ^a3 ^b4
+ok 42 - --bisect a4 ^a2 ^a3 ^b4 ^c2
+ok 43 - --bisect a4 ^a2 ^a3 ^b4 ^c2 ^c3
+ok 44 - --bisect a4 ^a2 ^a3 ^b4
+ok 45 - --bisect c3 ^a2 ^a3 ^b4 ^c2
+# passed all 45 test(s)
+1..45
+*** t6003-rev-list-topo-order.sh ***
+ok 1 - rev-list has correct number of entries
+ok 2 - simple topo order
+ok 3 - two diamonds topo order (g6)
+ok 4 - multiple heads
+ok 5 - multiple heads, prune at a1
+ok 6 - multiple heads, prune at l1
+ok 7 - cross-epoch, head at l5, prune at l1
+ok 8 - duplicated head arguments
+ok 9 - prune near topo
+ok 10 - head has no parent
+ok 11 - two nodes - one head, one base
+ok 12 - three nodes one head, one internal, one base
+ok 13 - linear prune l2 ^root
+ok 14 - linear prune l2 ^l0
+ok 15 - linear prune l2 ^l1
+ok 16 - linear prune l5 ^a4
+ok 17 - linear prune l5 ^l3
+ok 18 - linear prune l5 ^l4
+ok 19 - max-count 10 - topo order
+ok 20 - max-count 10 - non topo order
+ok 21 - --max-age=c3, no --topo-order
+ok 22 - one specified head reachable from another a4, c3, --topo-order
+ok 23 - one specified head reachable from another c3, a4, --topo-order
+ok 24 - one specified head reachable from another a4, c3, no --topo-order
+ok 25 - one specified head reachable from another c3, a4, no --topo-order
+ok 26 - graph with c3 and a4 parents of head
+ok 27 - graph with a4 and c3 parents of head
+ok 28 - head ^head --topo-order
+ok 29 - head ^head no --topo-order
+ok 30 - simple topo order (l5r1)
+ok 31 - simple topo order (r1l5)
+ok 32 - don't print things unreachable from one branch
+ok 33 - --topo-order a4 l3
+# passed all 33 test(s)
+1..33
+*** t6004-rev-list-path-optim.sh ***
+ok 1 - setup
+ok 2 - path-optimization
+ok 3 - further setup
+ok 4 - path optimization 2
+ok 5 - pathspec with leading path
+ok 6 - pathspec with glob (1)
+ok 7 - pathspec with glob (2)
+# passed all 7 test(s)
+1..7
+*** t6005-rev-list-count.sh ***
+ok 1 - setup
+ok 2 - no options
+ok 3 - --max-count
+ok 4 - --max-count all forms
+ok 5 - --skip
+ok 6 - --skip --max-count
+# passed all 6 test(s)
+1..6
+*** t6006-rev-list-format.sh ***
+ok 1 - setup
+ok 2 - format percent
+ok 3 - format hash
+ok 4 - format tree
+ok 5 - format parents
+ok 6 - format author
+ok 7 - format committer
+ok 8 - format encoding
+ok 9 - format subject
+ok 10 - format body
+ok 11 - format raw-body
+ok 12 - format colors
+ok 13 - format advanced-colors
+ok 14 - setup complex body
+ok 15 - format complex-encoding
+ok 16 - format complex-subject
+ok 17 - format complex-body
+ok 18 - %x00 shows NUL
+ok 19 - %ad respects --date=
+ok 20 - empty email
+ok 21 - del LF before empty (1)
+ok 22 - del LF before empty (2)
+ok 23 - add LF before non-empty (1)
+ok 24 - add LF before non-empty (2)
+ok 25 - add SP before non-empty (1)
+ok 26 - add SP before non-empty (2)
+ok 27 - --abbrev
+ok 28 - %H is not affected by --abbrev-commit
+ok 29 - %h is not affected by --abbrev-commit
+ok 30 - "%h %gD: %gs" is same as git-reflog
+ok 31 - "%h %gD: %gs" is same as git-reflog (with date)
+ok 32 - "%h %gD: %gs" is same as git-reflog (with --abbrev)
+ok 33 - %gd shortens ref name
+ok 34 - reflog identity
+ok 35 - oneline with empty message
+# passed all 35 test(s)
+1..35
+*** t6007-rev-list-cherry-pick-file.sh ***
+ok 1 - setup
+ok 2 - --left-right
+ok 3 - --count
+ok 4 - --cherry-pick foo comes up empty
+ok 5 - --cherry-pick bar does not come up empty
+ok 6 - bar does not come up empty
+ok 7 - --cherry-pick bar does not come up empty (II)
+ok 8 - --cherry-mark
+ok 9 - --cherry-mark --left-right
+ok 10 - --cherry-pick --right-only
+ok 11 - --cherry-pick --left-only
+ok 12 - --cherry
+ok 13 - --cherry --count
+ok 14 - --cherry-mark --count
+ok 15 - --cherry-mark --left-right --count
+ok 16 - --cherry-pick with independent, but identical branches
+ok 17 - --count --left-right
+# passed all 17 test(s)
+1..17
+*** t6008-rev-list-submodule.sh ***
+ok 1 - setup
+ok 2 - Ilari's test
+# passed all 2 test(s)
+1..2
+*** t6009-rev-list-parent.sh ***
+ok 1 - setup
+ok 2 - one is ancestor of others and should not be shown
+ok 3 - setup roots, merges and octopuses
+ok 4 - rev-list roots
+ok 5 - rev-list no merges
+ok 6 - rev-list no octopuses
+ok 7 - rev-list no roots
+ok 8 - rev-list merges
+ok 9 - rev-list octopus
+ok 10 - rev-list ordinary commits
+ok 11 - rev-list --merges --no-merges yields empty set
+ok 12 - rev-list override and infinities
+ok 13 - dodecapus
+# passed all 13 test(s)
+1..13
+*** t6010-merge-base.sh ***
+ok 1 - setup
+ok 2 - set up G and H
+ok 3 - merge-base G H
+ok 4 - merge-base/show-branch --independent
+ok 5 - unsynchronized clocks
+ok 6 - --independent with unsynchronized clocks
+ok 7 - merge-base for octopus-step (setup)
+ok 8 - merge-base A B C
+ok 9 - criss-cross merge-base for octopus-step
+# passed all 9 test(s)
+1..9
+*** t6011-rev-list-with-bad-commit.sh ***
+ok 1 - setup
+ok 2 - verify number of revisions
+ok 3 - corrupt second commit object
+ok 4 - rev-list should fail
+ok 5 - git repack _MUST_ fail
+ok 6 - first commit is still available
+# passed all 6 test(s)
+1..6
+*** t6012-rev-list-simplify.sh ***
+ok 1 - setup
+ok 2 - log --full-history
+ok 3 - log --full-history -- file
+ok 4 - log --full-history --topo-order -- file
+ok 5 - log --full-history --date-order -- file
+ok 6 - log --simplify-merges -- file
+ok 7 - log -- file
+ok 8 - log --topo-order -- file
+ok 9 - log --first-parent -- another-file
+# passed all 9 test(s)
+1..9
+*** t6013-rev-list-reverse-parents.sh ***
+ok 1 - set up --reverse example
+ok 2 - --reverse --parents --full-history combines correctly
+ok 3 - --boundary does too
+# passed all 3 test(s)
+1..3
+*** t6014-rev-list-all.sh ***
+ok 1 - setup
+ok 2 - rev-list --all lists detached HEAD
+ok 3 - repack does not lose detached HEAD
+# passed all 3 test(s)
+1..3
+*** t6015-rev-list-show-all-parents.sh ***
+ok 1 - set up --show-all --parents test
+ok 2 - --parents rewrites TREESAME parents correctly
+ok 3 - --parents --show-all does not rewrites TREESAME parents
+# passed all 3 test(s)
+1..3
+*** t6016-rev-list-graph-simplify-history.sh ***
+ok 1 - set up rev-list --graph test
+ok 2 - --graph --all
+ok 3 - --graph --simplify-by-decoration
+ok 4 - setup: get rid of decorations on B
+ok 5 - --graph --simplify-by-decoration prune branch B
+ok 6 - --graph --full-history -- bar.txt
+ok 7 - --graph --full-history --simplify-merges -- bar.txt
+ok 8 - --graph -- bar.txt
+ok 9 - --graph --sparse -- bar.txt
+ok 10 - --graph ^C4
+ok 11 - --graph ^C3
+ok 12 - --graph --boundary ^C3
+# passed all 12 test(s)
+1..12
+*** t6017-rev-list-stdin.sh ***
+ok 1 - setup
+ok 2 - check rev-list master
+ok 3 - check log --stat master
+ok 4 - check rev-list side-1 ^side-4
+ok 5 - check log --stat side-1 ^side-4
+ok 6 - check rev-list side-1 ^side-7 --
+ok 7 - check log --stat side-1 ^side-7 --
+ok 8 - check rev-list side-1 ^side-7 -- file-1
+ok 9 - check log --stat side-1 ^side-7 -- file-1
+ok 10 - check rev-list side-1 ^side-7 -- file-2
+ok 11 - check log --stat side-1 ^side-7 -- file-2
+ok 12 - check rev-list side-3 ^side-4 -- file-3
+ok 13 - check log --stat side-3 ^side-4 -- file-3
+ok 14 - check rev-list side-3 ^side-2
+ok 15 - check log --stat side-3 ^side-2
+ok 16 - check rev-list side-3 ^side-2 -- file-1
+ok 17 - check log --stat side-3 ^side-2 -- file-1
+ok 18 - not only --stdin
+# passed all 18 test(s)
+1..18
+*** t6018-rev-list-glob.sh ***
+ok 1 - setup
+ok 2 - rev-parse --glob=refs/heads/subspace/*
+ok 3 - rev-parse --glob=heads/subspace/*
+ok 4 - rev-parse --glob=refs/heads/subspace/
+ok 5 - rev-parse --glob=heads/subspace/
+ok 6 - rev-parse --glob=heads/subspace
+not ok 7 - rev-parse accepts --glob as detached option # TODO known breakage
+not ok 8 - rev-parse is not confused by option-like glob # TODO known breakage
+ok 9 - rev-parse --branches=subspace/*
+ok 10 - rev-parse --branches=subspace/
+ok 11 - rev-parse --branches=subspace
+ok 12 - rev-parse --glob=heads/subspace/* --glob=heads/other/*
+ok 13 - rev-parse --glob=heads/someref/* master
+ok 14 - rev-parse --glob=heads/*
+ok 15 - rev-parse --tags=foo
+ok 16 - rev-parse --remotes=foo
+ok 17 - rev-list --glob=refs/heads/subspace/*
+ok 18 - rev-list --glob refs/heads/subspace/*
+ok 19 - rev-list not confused by option-like --glob arg
+ok 20 - rev-list --glob=heads/subspace/*
+ok 21 - rev-list --glob=refs/heads/subspace/
+ok 22 - rev-list --glob=heads/subspace/
+ok 23 - rev-list --glob=heads/subspace
+ok 24 - rev-list --branches=subspace/*
+ok 25 - rev-list --branches=subspace/
+ok 26 - rev-list --branches=subspace
+ok 27 - rev-list --branches
+ok 28 - rev-list --glob=heads/someref/* master
+ok 29 - rev-list --glob=heads/subspace/* --glob=heads/other/*
+ok 30 - rev-list --glob=heads/*
+ok 31 - rev-list --tags=foo
+ok 32 - rev-list --tags
+ok 33 - rev-list --remotes=foo
+ok 34 - shortlog accepts --glob/--tags/--remotes
+not ok 35 - shortlog accepts --glob as detached option # TODO known breakage
+not ok 36 - shortlog --glob is not confused by option-like argument # TODO known breakage
+# still have 4 known breakage(s)
+# passed all remaining 32 test(s)
+1..36
+*** t6019-rev-list-ancestry-path.sh ***
+ok 1 - setup
+ok 2 - rev-list D..M
+ok 3 - rev-list --ancestry-path D..M
+ok 4 - rev-list D..M -- M.t
+ok 5 - rev-list --ancestry-patch D..M -- M.t
+ok 6 - setup criss-cross
+ok 7 - criss-cross: rev-list --ancestry-path cb..bc
+ok 8 - criss-cross: rev-list --ancestry-path --all ^cb
+# passed all 8 test(s)
+1..8
+*** t6020-merge-df.sh ***
+ok 1 - prepare repository
+ok 2 - Merge with d/f conflicts
+ok 3 - F/D conflict
+ok 4 - setup modify/delete + directory/file conflict
+ok 5 - modify/delete + directory/file conflict
+ok 6 - modify/delete + directory/file conflict; other way
+# passed all 6 test(s)
+1..6
+*** t6021-merge-criss-cross.sh ***
+ok 1 - prepare repository
+ok 2 - Criss-cross merge
+ok 3 - Criss-cross merge result
+ok 4 - Criss-cross merge fails (-s resolve)
+# passed all 4 test(s)
+1..4
+*** t6022-merge-rename.sh ***
+ok 1 - setup
+ok 2 - pull renaming branch into unrenaming one
+ok 3 - pull renaming branch into another renaming one
+ok 4 - pull unrenaming branch into renaming one
+ok 5 - pull conflicting renames
+ok 6 - interference with untracked working tree file
+ok 7 - interference with untracked working tree file
+ok 8 - interference with untracked working tree file
+ok 9 - updated working tree file should prevent the merge
+ok 10 - updated working tree file should prevent the merge
+ok 11 - interference with untracked working tree file
+ok 12 - merge of identical changes in a renamed file
+ok 13 - setup for rename + d/f conflicts
+ok 14 - Rename+D/F conflict; renamed file merges + dir not in way
+ok 15 - Rename+D/F conflict; renamed file merges but dir in way
+ok 16 - Same as previous, but merged other way
+ok 17 - Rename+D/F conflict; renamed file cannot merge, dir not in way
+ok 18 - Rename+D/F conflict; renamed file cannot merge and dir in the way
+ok 19 - Same as previous, but merged other way
+ok 20 - setup both rename source and destination involved in D/F conflict
+ok 21 - both rename source and destination involved in D/F conflict
+ok 22 - setup pair rename to parent of other (D/F conflicts)
+ok 23 - pair rename to parent of other (D/F conflicts) w/ untracked dir
+ok 24 - pair rename to parent of other (D/F conflicts) w/ clean start
+ok 25 - setup rename of one file to two, with directories in the way
+ok 26 - check handling of differently renamed file with D/F conflicts
+ok 27 - setup rename one file to two; directories moving out of the way
+ok 28 - check handling of differently renamed file with D/F conflicts
+ok 29 - setup avoid unnecessary update, normal rename
+ok 30 - avoid unnecessary update, normal rename
+ok 31 - setup to test avoiding unnecessary update, with D/F conflict
+ok 32 - avoid unnecessary update, with D/F conflict
+ok 33 - setup avoid unnecessary update, dir->(file,nothing)
+ok 34 - avoid unnecessary update, dir->(file,nothing)
+ok 35 - setup avoid unnecessary update, modify/delete
+ok 36 - avoid unnecessary update, modify/delete
+ok 37 - setup avoid unnecessary update, rename/add-dest
+ok 38 - avoid unnecessary update, rename/add-dest
+ok 39 - setup merge of rename + small change
+ok 40 - merge rename + small change
+ok 41 - setup for use of extended merge markers
+ok 42 - merge master into rename has correct extended markers
+ok 43 - merge rename into master has correct extended markers
+ok 44 - setup spurious "refusing to lose untracked" message
+ok 45 - no spurious "refusing to lose untracked" message
+# passed all 45 test(s)
+1..45
+*** t6023-merge-file.sh ***
+ok 1 - merge with no changes
+ok 2 - merge without conflict
+ok 3 - works in subdirectory
+ok 4 - merge without conflict (--quiet)
+ok 5 - merge without conflict (missing LF at EOF)
+ok 6 - merge result added missing LF
+ok 7 - merge with conflicts
+ok 8 - expected conflict markers
+ok 9 - merge with conflicts, using -L
+ok 10 - expected conflict markers, with -L
+ok 11 - conflict in removed tail
+ok 12 - expected conflict markers
+ok 13 - binary files cannot be merged
+ok 14 - MERGE_ZEALOUS simplifies non-conflicts
+ok 15 - ZEALOUS_ALNUM
+ok 16 - "diff3 -m" style output (1)
+ok 17 - "diff3 -m" style output (2)
+ok 18 - marker size
+# p