I: pbuilder: network access will be disabled during build I: Current time: Tue May 21 00:29:40 +14 2024 I: pbuilder-time-stamp: 1716200980 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/bookworm-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: Copying source file I: copying [git-imerge_1.2.0-3.dsc] I: copying [./git-imerge_1.2.0.orig.tar.gz] I: copying [./git-imerge_1.2.0-3.debian.tar.xz] I: Extracting source gpgv: Signature made Mon Oct 26 13:52:36 2020 +14 gpgv: using RSA key 610B28B55CFCFE45EA1B563B3116BA5E9FFA69A3 gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./git-imerge_1.2.0-3.dsc: no acceptable signature found dpkg-source: info: extracting git-imerge in git-imerge-1.2.0 dpkg-source: info: unpacking git-imerge_1.2.0.orig.tar.gz dpkg-source: info: unpacking git-imerge_1.2.0-3.debian.tar.xz I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/11422/tmp/hooks/D01_modify_environment starting debug: Running on codethink15-arm64. I: Changing host+domainname to test build reproducibility I: Adding a custom variable just for the fun of it... I: Changing /bin/sh to bash '/bin/sh' -> '/bin/bash' lrwxrwxrwx 1 root root 9 May 21 00:29 /bin/sh -> /bin/bash I: Setting pbuilder2's login shell to /bin/bash I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other I: user script /srv/workspace/pbuilder/11422/tmp/hooks/D01_modify_environment finished I: user script /srv/workspace/pbuilder/11422/tmp/hooks/D02_print_environment starting I: set BASH=/bin/sh BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath BASH_ALIASES=() BASH_ARGC=() BASH_ARGV=() BASH_CMDS=() BASH_LINENO=([0]="12" [1]="0") BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") BASH_VERSINFO=([0]="5" [1]="2" [2]="15" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") BASH_VERSION='5.2.15(1)-release' BUILDDIR=/build BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' BUILDUSERNAME=pbuilder2 BUILD_ARCH=arm64 DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=8' DIRSTACK=() DISTRIBUTION=bookworm EUID=0 FUNCNAME=([0]="Echo" [1]="main") GROUPS=() HOME=/var/lib/jenkins HOSTNAME=i-capture-the-hostname HOSTTYPE=aarch64 HOST_ARCH=arm64 IFS=' ' LANG=C LANGUAGE=nl_BE:nl LC_ALL=C MACHTYPE=aarch64-unknown-linux-gnu MAIL=/var/mail/root OPTERR=1 OPTIND=1 OSTYPE=linux-gnu PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path PBCURRENTCOMMANDLINEOPERATION=build PBUILDER_OPERATION=build PBUILDER_PKGDATADIR=/usr/share/pbuilder PBUILDER_PKGLIBDIR=/usr/lib/pbuilder PBUILDER_SYSCONFDIR=/etc PIPESTATUS=([0]="0") POSIXLY_CORRECT=y PPID=11422 PS4='+ ' PWD=/ SHELL=/bin/bash SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix SHLVL=3 SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.e30J3N9D/pbuilderrc_gSS2 --distribution bookworm --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bookworm-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.e30J3N9D/b2 --logfile b2/build.log --extrapackages usrmerge git-imerge_1.2.0-3.dsc' SUDO_GID=117 SUDO_UID=110 SUDO_USER=jenkins TERM=unknown TZ=/usr/share/zoneinfo/Etc/GMT-14 UID=0 USER=root USERNAME=root _='I: set' http_proxy=http://192.168.101.16:3128 I: uname -a Linux i-capture-the-hostname 4.15.0-208-generic #220-Ubuntu SMP Mon Mar 20 14:28:12 UTC 2023 aarch64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 May 19 06:47 /bin -> usr/bin I: user script /srv/workspace/pbuilder/11422/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: arm64 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: bash-completion, debhelper-compat (= 13), dh-python, git, pkg-config, python3, python3-setuptools, tox dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19616 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on bash-completion; however: Package bash-completion is not installed. pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. pbuilder-satisfydepends-dummy depends on dh-python; however: Package dh-python is not installed. pbuilder-satisfydepends-dummy depends on git; however: Package git is not installed. pbuilder-satisfydepends-dummy depends on pkg-config; however: Package pkg-config is not installed. pbuilder-satisfydepends-dummy depends on python3; however: Package python3 is not installed. pbuilder-satisfydepends-dummy depends on python3-setuptools; however: Package python3-setuptools is not installed. pbuilder-satisfydepends-dummy depends on tox; however: Package tox is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bash-completion{a} bsdextrautils{a} ca-certificates{a} debhelper{a} dh-autoreconf{a} dh-python{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} git{a} git-man{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libbrotli1{a} libcurl3-gnutls{a} libdebhelper-perl{a} libelf1{a} liberror-perl{a} libexpat1{a} libfile-stripnondeterminism-perl{a} libicu72{a} libjs-jquery{a} libjs-sphinxdoc{a} libjs-underscore{a} libldap-2.5-0{a} libmagic-mgc{a} libmagic1{a} libnghttp2-14{a} libpipeline1{a} libpkgconf3{a} libpsl5{a} libpython3-stdlib{a} libpython3.11-minimal{a} libpython3.11-stdlib{a} libreadline8{a} librtmp1{a} libsasl2-2{a} libsasl2-modules-db{a} libssh2-1{a} libsub-override-perl{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} media-types{a} openssl{a} pkg-config{a} pkgconf{a} pkgconf-bin{a} po-debconf{a} python3{a} python3-distlib{a} python3-distutils{a} python3-filelock{a} python3-lib2to3{a} python3-minimal{a} python3-packaging{a} python3-pip-whl{a} python3-pkg-resources{a} python3-platformdirs{a} python3-pluggy{a} python3-py{a} python3-setuptools{a} python3-setuptools-whl{a} python3-six{a} python3-virtualenv{a} python3-wheel-whl{a} python3.11{a} python3.11-minimal{a} readline-common{a} sensible-utils{a} tox{a} The following packages are RECOMMENDED but will NOT be installed: curl javascript-common less libarchive-cpio-perl libldap-common libltdl-dev libmail-sendmail-perl libsasl2-modules lynx openssh-client publicsuffix python3-dev wget 0 packages upgraded, 80 newly installed, 0 to remove and 0 not upgraded. Need to get 41.4 MB of archives. After unpacking 169 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian bookworm/main arm64 libpython3.11-minimal arm64 3.11.2-6 [806 kB] Get: 2 http://deb.debian.org/debian bookworm/main arm64 libexpat1 arm64 2.5.0-1 [84.8 kB] Get: 3 http://deb.debian.org/debian bookworm/main arm64 python3.11-minimal arm64 3.11.2-6 [1858 kB] Get: 4 http://deb.debian.org/debian bookworm/main arm64 python3-minimal arm64 3.11.2-1+b1 [26.3 kB] Get: 5 http://deb.debian.org/debian bookworm/main arm64 media-types all 10.0.0 [26.1 kB] Get: 6 http://deb.debian.org/debian bookworm/main arm64 readline-common all 8.2-1.3 [69.0 kB] Get: 7 http://deb.debian.org/debian bookworm/main arm64 libreadline8 arm64 8.2-1.3 [155 kB] Get: 8 http://deb.debian.org/debian bookworm/main arm64 libpython3.11-stdlib arm64 3.11.2-6 [1747 kB] Get: 9 http://deb.debian.org/debian bookworm/main arm64 python3.11 arm64 3.11.2-6 [572 kB] Get: 10 http://deb.debian.org/debian bookworm/main arm64 libpython3-stdlib arm64 3.11.2-1+b1 [9296 B] Get: 11 http://deb.debian.org/debian bookworm/main arm64 python3 arm64 3.11.2-1+b1 [26.3 kB] Get: 12 http://deb.debian.org/debian bookworm/main arm64 sensible-utils all 0.0.17+nmu1 [19.0 kB] Get: 13 http://deb.debian.org/debian bookworm/main arm64 bash-completion all 1:2.11-6 [234 kB] Get: 14 http://deb.debian.org/debian bookworm/main arm64 openssl arm64 3.0.8-1 [1373 kB] Get: 15 http://deb.debian.org/debian bookworm/main arm64 ca-certificates all 20230311 [153 kB] Get: 16 http://deb.debian.org/debian bookworm/main arm64 libmagic-mgc arm64 1:5.44-3 [305 kB] Get: 17 http://deb.debian.org/debian bookworm/main arm64 libmagic1 arm64 1:5.44-3 [98.5 kB] Get: 18 http://deb.debian.org/debian bookworm/main arm64 file arm64 1:5.44-3 [42.5 kB] Get: 19 http://deb.debian.org/debian bookworm/main arm64 gettext-base arm64 0.21-12 [159 kB] Get: 20 http://deb.debian.org/debian bookworm/main arm64 libuchardet0 arm64 0.0.7-1 [67.9 kB] Get: 21 http://deb.debian.org/debian bookworm/main arm64 groff-base arm64 1.22.4-10 [861 kB] Get: 22 http://deb.debian.org/debian bookworm/main arm64 bsdextrautils arm64 2.38.1-5+b1 [86.9 kB] Get: 23 http://deb.debian.org/debian bookworm/main arm64 libpipeline1 arm64 1.5.7-1 [36.4 kB] Get: 24 http://deb.debian.org/debian bookworm/main arm64 man-db arm64 2.11.2-2 [1369 kB] Get: 25 http://deb.debian.org/debian bookworm/main arm64 m4 arm64 1.4.19-3 [276 kB] Get: 26 http://deb.debian.org/debian bookworm/main arm64 autoconf all 2.71-3 [332 kB] Get: 27 http://deb.debian.org/debian bookworm/main arm64 autotools-dev all 20220109.1 [51.6 kB] Get: 28 http://deb.debian.org/debian bookworm/main arm64 automake all 1:1.16.5-1.3 [823 kB] Get: 29 http://deb.debian.org/debian bookworm/main arm64 autopoint all 0.21-12 [495 kB] Get: 30 http://deb.debian.org/debian bookworm/main arm64 libdebhelper-perl all 13.11.4 [81.2 kB] Get: 31 http://deb.debian.org/debian bookworm/main arm64 libtool all 2.4.7-5 [517 kB] Get: 32 http://deb.debian.org/debian bookworm/main arm64 dh-autoreconf all 20 [17.1 kB] Get: 33 http://deb.debian.org/debian bookworm/main arm64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 34 http://deb.debian.org/debian bookworm/main arm64 libsub-override-perl all 0.09-4 [9304 B] Get: 35 http://deb.debian.org/debian bookworm/main arm64 libfile-stripnondeterminism-perl all 1.13.1-1 [19.4 kB] Get: 36 http://deb.debian.org/debian bookworm/main arm64 dh-strip-nondeterminism all 1.13.1-1 [8620 B] Get: 37 http://deb.debian.org/debian bookworm/main arm64 libelf1 arm64 0.188-2.1 [173 kB] Get: 38 http://deb.debian.org/debian bookworm/main arm64 dwz arm64 0.15-1 [101 kB] Get: 39 http://deb.debian.org/debian bookworm/main arm64 libicu72 arm64 72.1-3 [9204 kB] Get: 40 http://deb.debian.org/debian bookworm/main arm64 libxml2 arm64 2.9.14+dfsg-1.1+b3 [619 kB] Get: 41 http://deb.debian.org/debian bookworm/main arm64 gettext arm64 0.21-12 [1248 kB] Get: 42 http://deb.debian.org/debian bookworm/main arm64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 43 http://deb.debian.org/debian bookworm/main arm64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 44 http://deb.debian.org/debian bookworm/main arm64 debhelper all 13.11.4 [942 kB] Get: 45 http://deb.debian.org/debian bookworm/main arm64 python3-lib2to3 all 3.11.2-2 [76.2 kB] Get: 46 http://deb.debian.org/debian bookworm/main arm64 python3-distutils all 3.11.2-2 [131 kB] Get: 47 http://deb.debian.org/debian bookworm/main arm64 dh-python all 5.20230130 [104 kB] Get: 48 http://deb.debian.org/debian bookworm/main arm64 libbrotli1 arm64 1.0.9-2+b6 [269 kB] Get: 49 http://deb.debian.org/debian bookworm/main arm64 libsasl2-modules-db arm64 2.1.28+dfsg-10 [20.8 kB] Get: 50 http://deb.debian.org/debian bookworm/main arm64 libsasl2-2 arm64 2.1.28+dfsg-10 [58.0 kB] Get: 51 http://deb.debian.org/debian bookworm/main arm64 libldap-2.5-0 arm64 2.5.13+dfsg-5 [171 kB] Get: 52 http://deb.debian.org/debian bookworm/main arm64 libnghttp2-14 arm64 1.52.0-1 [67.9 kB] Get: 53 http://deb.debian.org/debian bookworm/main arm64 libpsl5 arm64 0.21.2-1 [58.6 kB] Get: 54 http://deb.debian.org/debian bookworm/main arm64 librtmp1 arm64 2.4+20151223.gitfa8646d.1-2+b2 [59.4 kB] Get: 55 http://deb.debian.org/debian bookworm/main arm64 libssh2-1 arm64 1.10.0-3+b1 [172 kB] Get: 56 http://deb.debian.org/debian bookworm/main arm64 libcurl3-gnutls arm64 7.88.1-8 [357 kB] Get: 57 http://deb.debian.org/debian bookworm/main arm64 liberror-perl all 0.17029-2 [29.0 kB] Get: 58 http://deb.debian.org/debian bookworm/main arm64 git-man all 1:2.39.2-1.1 [2049 kB] Get: 59 http://deb.debian.org/debian bookworm/main arm64 git arm64 1:2.39.2-1.1 [7023 kB] Get: 60 http://deb.debian.org/debian bookworm/main arm64 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [326 kB] Get: 61 http://deb.debian.org/debian bookworm/main arm64 libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [116 kB] Get: 62 http://deb.debian.org/debian bookworm/main arm64 libjs-sphinxdoc all 5.3.0-4 [130 kB] Get: 63 http://deb.debian.org/debian bookworm/main arm64 libpkgconf3 arm64 1.8.1-1 [35.3 kB] Get: 64 http://deb.debian.org/debian bookworm/main arm64 pkgconf-bin arm64 1.8.1-1 [28.9 kB] Get: 65 http://deb.debian.org/debian bookworm/main arm64 pkgconf arm64 1.8.1-1 [25.9 kB] Get: 66 http://deb.debian.org/debian bookworm/main arm64 pkg-config arm64 1.8.1-1 [13.7 kB] Get: 67 http://deb.debian.org/debian bookworm/main arm64 python3-distlib all 0.3.6-1 [257 kB] Get: 68 http://deb.debian.org/debian bookworm/main arm64 python3-filelock all 3.9.0-1 [9460 B] Get: 69 http://deb.debian.org/debian bookworm/main arm64 python3-packaging all 23.0-1 [32.5 kB] Get: 70 http://deb.debian.org/debian bookworm/main arm64 python3-pip-whl all 23.0.1+dfsg-1 [1717 kB] Get: 71 http://deb.debian.org/debian bookworm/main arm64 python3-pkg-resources all 66.1.1-1 [296 kB] Get: 72 http://deb.debian.org/debian bookworm/main arm64 python3-platformdirs all 2.6.0-1 [16.3 kB] Get: 73 http://deb.debian.org/debian bookworm/main arm64 python3-pluggy all 1.0.0+repack-1 [19.7 kB] Get: 74 http://deb.debian.org/debian bookworm/main arm64 python3-py all 1.11.0-1 [89.2 kB] Get: 75 http://deb.debian.org/debian bookworm/main arm64 python3-setuptools all 66.1.1-1 [521 kB] Get: 76 http://deb.debian.org/debian bookworm/main arm64 python3-setuptools-whl all 66.1.1-1 [1111 kB] Get: 77 http://deb.debian.org/debian bookworm/main arm64 python3-six all 1.16.0-4 [17.5 kB] Get: 78 http://deb.debian.org/debian bookworm/main arm64 python3-wheel-whl all 0.38.4-1 [38.6 kB] Get: 79 http://deb.debian.org/debian bookworm/main arm64 python3-virtualenv all 20.17.1+ds-1 [93.9 kB] Get: 80 http://deb.debian.org/debian bookworm/main arm64 tox all 3.28.0-2 [385 kB] Fetched 41.4 MB in 1s (50.6 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libpython3.11-minimal:arm64. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19616 files and directories currently installed.) Preparing to unpack .../libpython3.11-minimal_3.11.2-6_arm64.deb ... Unpacking libpython3.11-minimal:arm64 (3.11.2-6) ... Selecting previously unselected package libexpat1:arm64. Preparing to unpack .../libexpat1_2.5.0-1_arm64.deb ... Unpacking libexpat1:arm64 (2.5.0-1) ... Selecting previously unselected package python3.11-minimal. Preparing to unpack .../python3.11-minimal_3.11.2-6_arm64.deb ... Unpacking python3.11-minimal (3.11.2-6) ... Setting up libpython3.11-minimal:arm64 (3.11.2-6) ... Setting up libexpat1:arm64 (2.5.0-1) ... Setting up python3.11-minimal (3.11.2-6) ... Selecting previously unselected package python3-minimal. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19932 files and directories currently installed.) Preparing to unpack .../0-python3-minimal_3.11.2-1+b1_arm64.deb ... Unpacking python3-minimal (3.11.2-1+b1) ... Selecting previously unselected package media-types. Preparing to unpack .../1-media-types_10.0.0_all.deb ... Unpacking media-types (10.0.0) ... Selecting previously unselected package readline-common. Preparing to unpack .../2-readline-common_8.2-1.3_all.deb ... Unpacking readline-common (8.2-1.3) ... Selecting previously unselected package libreadline8:arm64. Preparing to unpack .../3-libreadline8_8.2-1.3_arm64.deb ... Unpacking libreadline8:arm64 (8.2-1.3) ... Selecting previously unselected package libpython3.11-stdlib:arm64. Preparing to unpack .../4-libpython3.11-stdlib_3.11.2-6_arm64.deb ... Unpacking libpython3.11-stdlib:arm64 (3.11.2-6) ... Selecting previously unselected package python3.11. Preparing to unpack .../5-python3.11_3.11.2-6_arm64.deb ... Unpacking python3.11 (3.11.2-6) ... Selecting previously unselected package libpython3-stdlib:arm64. Preparing to unpack .../6-libpython3-stdlib_3.11.2-1+b1_arm64.deb ... Unpacking libpython3-stdlib:arm64 (3.11.2-1+b1) ... Setting up python3-minimal (3.11.2-1+b1) ... Selecting previously unselected package python3. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 20366 files and directories currently installed.) Preparing to unpack .../00-python3_3.11.2-1+b1_arm64.deb ... Unpacking python3 (3.11.2-1+b1) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../01-sensible-utils_0.0.17+nmu1_all.deb ... Unpacking sensible-utils (0.0.17+nmu1) ... Selecting previously unselected package bash-completion. Preparing to unpack .../02-bash-completion_1%3a2.11-6_all.deb ... Unpacking bash-completion (1:2.11-6) ... Selecting previously unselected package openssl. Preparing to unpack .../03-openssl_3.0.8-1_arm64.deb ... Unpacking openssl (3.0.8-1) ... Selecting previously unselected package ca-certificates. Preparing to unpack .../04-ca-certificates_20230311_all.deb ... Unpacking ca-certificates (20230311) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../05-libmagic-mgc_1%3a5.44-3_arm64.deb ... Unpacking libmagic-mgc (1:5.44-3) ... Selecting previously unselected package libmagic1:arm64. Preparing to unpack .../06-libmagic1_1%3a5.44-3_arm64.deb ... Unpacking libmagic1:arm64 (1:5.44-3) ... Selecting previously unselected package file. Preparing to unpack .../07-file_1%3a5.44-3_arm64.deb ... Unpacking file (1:5.44-3) ... Selecting previously unselected package gettext-base. Preparing to unpack .../08-gettext-base_0.21-12_arm64.deb ... Unpacking gettext-base (0.21-12) ... Selecting previously unselected package libuchardet0:arm64. Preparing to unpack .../09-libuchardet0_0.0.7-1_arm64.deb ... Unpacking libuchardet0:arm64 (0.0.7-1) ... Selecting previously unselected package groff-base. Preparing to unpack .../10-groff-base_1.22.4-10_arm64.deb ... Unpacking groff-base (1.22.4-10) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../11-bsdextrautils_2.38.1-5+b1_arm64.deb ... Unpacking bsdextrautils (2.38.1-5+b1) ... Selecting previously unselected package libpipeline1:arm64. Preparing to unpack .../12-libpipeline1_1.5.7-1_arm64.deb ... Unpacking libpipeline1:arm64 (1.5.7-1) ... Selecting previously unselected package man-db. Preparing to unpack .../13-man-db_2.11.2-2_arm64.deb ... Unpacking man-db (2.11.2-2) ... Selecting previously unselected package m4. Preparing to unpack .../14-m4_1.4.19-3_arm64.deb ... Unpacking m4 (1.4.19-3) ... Selecting previously unselected package autoconf. Preparing to unpack .../15-autoconf_2.71-3_all.deb ... Unpacking autoconf (2.71-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../16-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../17-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../18-autopoint_0.21-12_all.deb ... Unpacking autopoint (0.21-12) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../19-libdebhelper-perl_13.11.4_all.deb ... Unpacking libdebhelper-perl (13.11.4) ... Selecting previously unselected package libtool. Preparing to unpack .../20-libtool_2.4.7-5_all.deb ... Unpacking libtool (2.4.7-5) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../21-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../22-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libsub-override-perl. Preparing to unpack .../23-libsub-override-perl_0.09-4_all.deb ... Unpacking libsub-override-perl (0.09-4) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../24-libfile-stripnondeterminism-perl_1.13.1-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.13.1-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../25-dh-strip-nondeterminism_1.13.1-1_all.deb ... Unpacking dh-strip-nondeterminism (1.13.1-1) ... Selecting previously unselected package libelf1:arm64. Preparing to unpack .../26-libelf1_0.188-2.1_arm64.deb ... Unpacking libelf1:arm64 (0.188-2.1) ... Selecting previously unselected package dwz. Preparing to unpack .../27-dwz_0.15-1_arm64.deb ... Unpacking dwz (0.15-1) ... Selecting previously unselected package libicu72:arm64. Preparing to unpack .../28-libicu72_72.1-3_arm64.deb ... Unpacking libicu72:arm64 (72.1-3) ... Selecting previously unselected package libxml2:arm64. Preparing to unpack .../29-libxml2_2.9.14+dfsg-1.1+b3_arm64.deb ... Unpacking libxml2:arm64 (2.9.14+dfsg-1.1+b3) ... Selecting previously unselected package gettext. Preparing to unpack .../30-gettext_0.21-12_arm64.deb ... Unpacking gettext (0.21-12) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../31-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../32-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../33-debhelper_13.11.4_all.deb ... Unpacking debhelper (13.11.4) ... Selecting previously unselected package python3-lib2to3. Preparing to unpack .../34-python3-lib2to3_3.11.2-2_all.deb ... Unpacking python3-lib2to3 (3.11.2-2) ... Selecting previously unselected package python3-distutils. Preparing to unpack .../35-python3-distutils_3.11.2-2_all.deb ... Unpacking python3-distutils (3.11.2-2) ... Selecting previously unselected package dh-python. Preparing to unpack .../36-dh-python_5.20230130_all.deb ... Unpacking dh-python (5.20230130) ... Selecting previously unselected package libbrotli1:arm64. Preparing to unpack .../37-libbrotli1_1.0.9-2+b6_arm64.deb ... Unpacking libbrotli1:arm64 (1.0.9-2+b6) ... Selecting previously unselected package libsasl2-modules-db:arm64. Preparing to unpack .../38-libsasl2-modules-db_2.1.28+dfsg-10_arm64.deb ... Unpacking libsasl2-modules-db:arm64 (2.1.28+dfsg-10) ... Selecting previously unselected package libsasl2-2:arm64. Preparing to unpack .../39-libsasl2-2_2.1.28+dfsg-10_arm64.deb ... Unpacking libsasl2-2:arm64 (2.1.28+dfsg-10) ... Selecting previously unselected package libldap-2.5-0:arm64. Preparing to unpack .../40-libldap-2.5-0_2.5.13+dfsg-5_arm64.deb ... Unpacking libldap-2.5-0:arm64 (2.5.13+dfsg-5) ... Selecting previously unselected package libnghttp2-14:arm64. Preparing to unpack .../41-libnghttp2-14_1.52.0-1_arm64.deb ... Unpacking libnghttp2-14:arm64 (1.52.0-1) ... Selecting previously unselected package libpsl5:arm64. Preparing to unpack .../42-libpsl5_0.21.2-1_arm64.deb ... Unpacking libpsl5:arm64 (0.21.2-1) ... Selecting previously unselected package librtmp1:arm64. Preparing to unpack .../43-librtmp1_2.4+20151223.gitfa8646d.1-2+b2_arm64.deb ... Unpacking librtmp1:arm64 (2.4+20151223.gitfa8646d.1-2+b2) ... Selecting previously unselected package libssh2-1:arm64. Preparing to unpack .../44-libssh2-1_1.10.0-3+b1_arm64.deb ... Unpacking libssh2-1:arm64 (1.10.0-3+b1) ... Selecting previously unselected package libcurl3-gnutls:arm64. Preparing to unpack .../45-libcurl3-gnutls_7.88.1-8_arm64.deb ... Unpacking libcurl3-gnutls:arm64 (7.88.1-8) ... Selecting previously unselected package liberror-perl. Preparing to unpack .../46-liberror-perl_0.17029-2_all.deb ... Unpacking liberror-perl (0.17029-2) ... Selecting previously unselected package git-man. Preparing to unpack .../47-git-man_1%3a2.39.2-1.1_all.deb ... Unpacking git-man (1:2.39.2-1.1) ... Selecting previously unselected package git. Preparing to unpack .../48-git_1%3a2.39.2-1.1_arm64.deb ... Unpacking git (1:2.39.2-1.1) ... Selecting previously unselected package libjs-jquery. Preparing to unpack .../49-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... Selecting previously unselected package libjs-underscore. Preparing to unpack .../50-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... Selecting previously unselected package libjs-sphinxdoc. Preparing to unpack .../51-libjs-sphinxdoc_5.3.0-4_all.deb ... Unpacking libjs-sphinxdoc (5.3.0-4) ... Selecting previously unselected package libpkgconf3:arm64. Preparing to unpack .../52-libpkgconf3_1.8.1-1_arm64.deb ... Unpacking libpkgconf3:arm64 (1.8.1-1) ... Selecting previously unselected package pkgconf-bin. Preparing to unpack .../53-pkgconf-bin_1.8.1-1_arm64.deb ... Unpacking pkgconf-bin (1.8.1-1) ... Selecting previously unselected package pkgconf:arm64. Preparing to unpack .../54-pkgconf_1.8.1-1_arm64.deb ... Unpacking pkgconf:arm64 (1.8.1-1) ... Selecting previously unselected package pkg-config:arm64. Preparing to unpack .../55-pkg-config_1.8.1-1_arm64.deb ... Unpacking pkg-config:arm64 (1.8.1-1) ... Selecting previously unselected package python3-distlib. Preparing to unpack .../56-python3-distlib_0.3.6-1_all.deb ... Unpacking python3-distlib (0.3.6-1) ... Selecting previously unselected package python3-filelock. Preparing to unpack .../57-python3-filelock_3.9.0-1_all.deb ... Unpacking python3-filelock (3.9.0-1) ... Selecting previously unselected package python3-packaging. Preparing to unpack .../58-python3-packaging_23.0-1_all.deb ... Unpacking python3-packaging (23.0-1) ... Selecting previously unselected package python3-pip-whl. Preparing to unpack .../59-python3-pip-whl_23.0.1+dfsg-1_all.deb ... Unpacking python3-pip-whl (23.0.1+dfsg-1) ... Selecting previously unselected package python3-pkg-resources. Preparing to unpack .../60-python3-pkg-resources_66.1.1-1_all.deb ... Unpacking python3-pkg-resources (66.1.1-1) ... Selecting previously unselected package python3-platformdirs. Preparing to unpack .../61-python3-platformdirs_2.6.0-1_all.deb ... Unpacking python3-platformdirs (2.6.0-1) ... Selecting previously unselected package python3-pluggy. Preparing to unpack .../62-python3-pluggy_1.0.0+repack-1_all.deb ... Unpacking python3-pluggy (1.0.0+repack-1) ... Selecting previously unselected package python3-py. Preparing to unpack .../63-python3-py_1.11.0-1_all.deb ... Unpacking python3-py (1.11.0-1) ... Selecting previously unselected package python3-setuptools. Preparing to unpack .../64-python3-setuptools_66.1.1-1_all.deb ... Unpacking python3-setuptools (66.1.1-1) ... Selecting previously unselected package python3-setuptools-whl. Preparing to unpack .../65-python3-setuptools-whl_66.1.1-1_all.deb ... Unpacking python3-setuptools-whl (66.1.1-1) ... Selecting previously unselected package python3-six. Preparing to unpack .../66-python3-six_1.16.0-4_all.deb ... Unpacking python3-six (1.16.0-4) ... Selecting previously unselected package python3-wheel-whl. Preparing to unpack .../67-python3-wheel-whl_0.38.4-1_all.deb ... Unpacking python3-wheel-whl (0.38.4-1) ... Selecting previously unselected package python3-virtualenv. Preparing to unpack .../68-python3-virtualenv_20.17.1+ds-1_all.deb ... Unpacking python3-virtualenv (20.17.1+ds-1) ... Selecting previously unselected package tox. Preparing to unpack .../69-tox_3.28.0-2_all.deb ... Unpacking tox (3.28.0-2) ... Setting up media-types (10.0.0) ... Setting up libpipeline1:arm64 (1.5.7-1) ... Setting up python3-setuptools-whl (66.1.1-1) ... Setting up libpsl5:arm64 (0.21.2-1) ... Setting up libicu72:arm64 (72.1-3) ... Setting up bsdextrautils (2.38.1-5+b1) ... Setting up libmagic-mgc (1:5.44-3) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.11.4) ... Setting up libbrotli1:arm64 (1.0.9-2+b6) ... Setting up libnghttp2-14:arm64 (1.52.0-1) ... Setting up libmagic1:arm64 (1:5.44-3) ... Setting up gettext-base (0.21-12) ... Setting up m4 (1.4.19-3) ... Setting up file (1:5.44-3) ... Setting up libsasl2-modules-db:arm64 (2.1.28+dfsg-10) ... Setting up liberror-perl (0.17029-2) ... Setting up autotools-dev (20220109.1) ... Setting up libpkgconf3:arm64 (1.8.1-1) ... Setting up librtmp1:arm64 (2.4+20151223.gitfa8646d.1-2+b2) ... Setting up bash-completion (1:2.11-6) ... Setting up autopoint (0.21-12) ... Setting up pkgconf-bin (1.8.1-1) ... Setting up libsasl2-2:arm64 (2.1.28+dfsg-10) ... Setting up autoconf (2.71-3) ... Setting up sensible-utils (0.0.17+nmu1) ... Setting up libuchardet0:arm64 (0.0.7-1) ... Setting up libsub-override-perl (0.09-4) ... Setting up git-man (1:2.39.2-1.1) ... Setting up libssh2-1:arm64 (1.10.0-3+b1) ... Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... Setting up openssl (3.0.8-1) ... Setting up python3-wheel-whl (0.38.4-1) ... Setting up libelf1:arm64 (0.188-2.1) ... Setting up readline-common (8.2-1.3) ... Setting up libxml2:arm64 (2.9.14+dfsg-1.1+b3) ... Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.13.1-1) ... Setting up gettext (0.21-12) ... Setting up libtool (2.4.7-5) ... Setting up libreadline8:arm64 (8.2-1.3) ... Setting up libldap-2.5-0:arm64 (2.5.13+dfsg-5) ... Setting up pkgconf:arm64 (1.8.1-1) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up ca-certificates (20230311) ... Updating certificates in /etc/ssl/certs... 140 added, 0 removed; done. Setting up pkg-config:arm64 (1.8.1-1) ... Setting up libjs-sphinxdoc (5.3.0-4) ... Setting up dh-strip-nondeterminism (1.13.1-1) ... Setting up dwz (0.15-1) ... Setting up groff-base (1.22.4-10) ... Setting up python3-pip-whl (23.0.1+dfsg-1) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up libpython3.11-stdlib:arm64 (3.11.2-6) ... Setting up libcurl3-gnutls:arm64 (7.88.1-8) ... Setting up man-db (2.11.2-2) ... Not building database; man-db/auto-update is not 'true'. Setting up git (1:2.39.2-1.1) ... Setting up libpython3-stdlib:arm64 (3.11.2-1+b1) ... Setting up python3.11 (3.11.2-6) ... Setting up debhelper (13.11.4) ... Setting up python3 (3.11.2-1+b1) ... Setting up python3-distlib (0.3.6-1) ... Setting up python3-platformdirs (2.6.0-1) ... Setting up python3-six (1.16.0-4) ... Setting up python3-packaging (23.0-1) ... Setting up python3-pluggy (1.0.0+repack-1) ... Setting up python3-lib2to3 (3.11.2-2) ... Setting up python3-pkg-resources (66.1.1-1) ... Setting up python3-distutils (3.11.2-2) ... Setting up dh-python (5.20230130) ... Setting up python3-filelock (3.9.0-1) ... Setting up python3-setuptools (66.1.1-1) ... Setting up python3-py (1.11.0-1) ... Setting up python3-virtualenv (20.17.1+ds-1) ... Setting up tox (3.28.0-2) ... Processing triggers for libc-bin (2.36-8) ... Processing triggers for ca-certificates (20230311) ... Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done. Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps Reading package lists... Building dependency tree... Reading state information... usrmerge is already the newest version (35). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package I: user script /srv/workspace/pbuilder/11422/tmp/hooks/A99_set_merged_usr starting Re-configuring usrmerge... I: user script /srv/workspace/pbuilder/11422/tmp/hooks/A99_set_merged_usr finished hostname: Temporary failure in name resolution I: Running cd /build/git-imerge-1.2.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../git-imerge_1.2.0-3_source.changes dpkg-buildpackage: info: source package git-imerge dpkg-buildpackage: info: source version 1.2.0-3 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Paul Wise dpkg-source --before-build . dpkg-buildpackage: info: host architecture arm64 debian/rules clean dh clean --with python3 --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild I: pybuild base:240: python3.11 setup.py clean running clean removing '/build/git-imerge-1.2.0/.pybuild/cpython3_3.11/build' (and everything under it) 'build/bdist.linux-arm64' does not exist -- can't clean it 'build/scripts-3.11' does not exist -- can't clean it dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild debian/rules binary dh binary --with python3 --buildsystem=pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild I: pybuild base:240: python3.11 setup.py config running config dh_auto_build -O--buildsystem=pybuild I: pybuild base:240: /usr/bin/python3 setup.py build running build running build_py copying gitimerge.py -> /build/git-imerge-1.2.0/.pybuild/cpython3_3.11/build dh_auto_test -O--buildsystem=pybuild I: pybuild base:240: cd /build/git-imerge-1.2.0/.pybuild/cpython3_3.11/build; tox -c /build/git-imerge-1.2.0/tox.ini --sitepackages -e py311 GLOB sdist-make: /build/git-imerge-1.2.0/setup.py py311 create: /build/git-imerge-1.2.0/.tox/py311 py311 inst: /build/git-imerge-1.2.0/.tox/.tmp/package/1/git-imerge-1.2.0.zip WARNING: Discarding $PYTHONPATH from environment, to override specify PYTHONPATH in 'passenv' in your configuration. WARNING: Discarding $PYTHONPATH from environment, to override specify PYTHONPATH in 'passenv' in your configuration. py311 installed: distlib==0.3.6,filelock==3.9.0,git-imerge @ file:///build/git-imerge-1.2.0/.tox/.tmp/package/1/git-imerge-1.2.0.zip,packaging==23.0,platformdirs==2.6.0,pluggy==1.0.0+repack,py==1.11.0,six==1.16.0,tox==3.28.0,virtualenv==20.17.1+ds py311 run-test-pre: PYTHONHASHSEED='4085463260' py311 run-test: commands[0] | /bin/sh t/test-unconflicted ++++ dirname t/test-unconflicted +++ cd t +++ pwd ++ dirname /build/git-imerge-1.2.0/t + BASE=/build/git-imerge-1.2.0 + . /build/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + TMP=/build/git-imerge-1.2.0/t/tmp/unconflicted + DESCRIPTION='git-imerge test repository without conflicts' + init_test_repo /build/git-imerge-1.2.0/t/tmp/unconflicted 'git-imerge test repository without conflicts' + local path=/build/git-imerge-1.2.0/t/tmp/unconflicted + local 'description=git-imerge test repository without conflicts' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/unconflicted 'git-imerge test repository without conflicts' + local path=/build/git-imerge-1.2.0/t/tmp/unconflicted + local 'description=git-imerge test repository without conflicts' + test -d /build/git-imerge-1.2.0/t/tmp/unconflicted + mkdir -p /build/git-imerge-1.2.0/t/tmp/unconflicted + git init /build/git-imerge-1.2.0/t/tmp/unconflicted hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/unconflicted/.git/ + echo 'git-imerge test repository without conflicts' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/unconflicted/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/unconflicted/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/unconflicted + cd /build/git-imerge-1.2.0/t/tmp/unconflicted + modify a.txt 0 + filename=a.txt + text=0 + echo 0 + git add a.txt + modify b.txt 0 + filename=b.txt + text=0 + echo 0 + git add b.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) 780ddf5] m⇒0 2 files changed, 2 insertions(+) create mode 100644 a.txt create mode 100644 b.txt + git checkout -b a -- Switched to a new branch 'a' ++ seq 8 + for i in $(seq 8) + modify a.txt 1 + filename=a.txt + text=1 + echo 1 + git add a.txt + commit -m $'a\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'a\342\207\2221' [a b862e30] a⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 8) + modify a.txt 2 + filename=a.txt + text=2 + echo 2 + git add a.txt + commit -m $'a\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'a\342\207\2222' [a dcbe282] a⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 8) + modify a.txt 3 + filename=a.txt + text=3 + echo 3 + git add a.txt + commit -m $'a\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'a\342\207\2223' [a ecd8647] a⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 8) + modify a.txt 4 + filename=a.txt + text=4 + echo 4 + git add a.txt + commit -m $'a\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'a\342\207\2224' [a 1634bab] a⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 8) + modify a.txt 5 + filename=a.txt + text=5 + echo 5 + git add a.txt + commit -m $'a\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'a\342\207\2225' [a 909ce12] a⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 8) + modify a.txt 6 + filename=a.txt + text=6 + echo 6 + git add a.txt + commit -m $'a\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'a\342\207\2226' [a f6520bf] a⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 8) + modify a.txt 7 + filename=a.txt + text=7 + echo 7 + git add a.txt + commit -m $'a\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'a\342\207\2227' [a 6797186] a⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 8) + modify a.txt 8 + filename=a.txt + text=8 + echo 8 + git add a.txt + commit -m $'a\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'a\342\207\2228' [a 49643dd] a⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b b master -- Switched to a new branch 'b' ++ seq 5 + for i in $(seq 5) + modify b.txt 1 + filename=b.txt + text=1 + echo 1 + git add b.txt + commit -m $'b\342\207\2221' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'b\342\207\2221' [b d43305b] b⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 5) + modify b.txt 2 + filename=b.txt + text=2 + echo 2 + git add b.txt + commit -m $'b\342\207\2222' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'b\342\207\2222' [b 853ee68] b⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 5) + modify b.txt 3 + filename=b.txt + text=3 + echo 3 + git add b.txt + commit -m $'b\342\207\2223' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'b\342\207\2223' [b 03a2455] b⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 5) + modify b.txt 4 + filename=b.txt + text=4 + echo 4 + git add b.txt + commit -m $'b\342\207\2224' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'b\342\207\2224' [b 484ea85] b⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 5) + modify b.txt 5 + filename=b.txt + text=5 + echo 5 + git add b.txt + commit -m $'b\342\207\2225' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'b\342\207\2225' [b e22cd97] b⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + EXPECTED_TREE=e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git checkout a Switched to branch 'a' + git-imerge start --first-parent --name=a-b --branch=a-b-merge b Attempting automerge of 8-5...success. Autofilling 1-5...success. Autofilling 2-5...success. Autofilling 3-5...success. Autofilling 4-5...success. Autofilling 5-5...success. Autofilling 6-5...success. Autofilling 7-5...success. Autofilling 8-1...success. Autofilling 8-2...success. Autofilling 8-3...success. Autofilling 8-4...success. Autofilling 8-5 (first way)...success. Autofilling 8-5 (second way)...success. The two ways of autofilling 8-5 agree. Recording autofilled block MergeState('a-b', tip1='a', tip2='b', goal='merge')[0:9,0:6]. Merge is complete! + git-imerge list * a-b + git-imerge diagram --commits --frontier --html=imerge3.html 0 5 8 | | | 0 - ********* - a *???????. *???????. *???????. *???????. 5 - *........ | b 0 5 8 | | | 0 - ********* - a *???????| *???????| *???????| *???????| 5 - *-------+ | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=a-b-merge Merge b into a (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:31:11 2024 +0000 # # On branch a-b-merge # Changes to be committed: # modified: b.txt # [a-b-merge 5823650] Merge b into a (using imerge) Date: Mon May 20 10:31:11 2024 +0000 + check_tree a-b-merge e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-merge + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 ++ git rev-parse 'a-b-merge^{tree}' + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge simplify --goal=rebase --branch=a-b-rebase + check_tree a-b-rebase e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-rebase + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 ++ git rev-parse 'a-b-rebase^{tree}' + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge simplify --goal=rebase-with-history --branch=a-b-rebase-with-history + check_tree a-b-rebase-with-history e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-rebase-with-history + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 ++ git rev-parse 'a-b-rebase-with-history^{tree}' + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge simplify --goal=border --branch=a-b-border + check_tree a-b-border e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-border + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 ++ git rev-parse 'a-b-border^{tree}' + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge simplify --goal=border-with-history --branch=a-b-border-with-history + check_tree a-b-border-with-history e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-border-with-history + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 ++ git rev-parse 'a-b-border-with-history^{tree}' + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge simplify --goal=border-with-history2 --branch=a-b-border-with-history2 + check_tree a-b-border-with-history2 e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-border-with-history2 + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 ++ git rev-parse 'a-b-border-with-history2^{tree}' + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge remove + git checkout a Switched to branch 'a' + git-imerge start --goal=full --name=a-b b Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 4-1...success. Attempting to merge 4-2...success. Attempting to merge 4-3...success. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 5-1...success. Attempting to merge 5-2...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 6-1...success. Attempting to merge 6-2...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 7-1...success. Attempting to merge 7-2...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 8-1...success. Attempting to merge 8-2...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Merge is complete! + git-imerge list * a-b + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 8 | | | 0 - ********* - a *........ *........ *........ *........ 5 - *........ | b 0 5 8 | | | 0 - ********* - a *.......| *.......| *.......| *.......| 5 - *-------+ | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=a-b-full + check_tree a-b-full e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-full + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 ++ git rev-parse 'a-b-full^{tree}' + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 py311 run-test: commands[1] | /bin/sh t/test-conflicted ++++ dirname t/test-conflicted +++ cd t +++ pwd ++ dirname /build/git-imerge-1.2.0/t + BASE=/build/git-imerge-1.2.0 + . /build/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + EXPECTED_TREE=ffa191c987a8d3f597376744a95439fa1b4a55c5 + test_conflict 4-3 + local conflict=4-3 + TMP=/build/git-imerge-1.2.0/t/tmp/conflicted-4-3 + DESCRIPTION='git-imerge test repository with conflict at 4-3' + init_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-4-3 'git-imerge test repository with conflict at 4-3' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-4-3 + local 'description=git-imerge test repository with conflict at 4-3' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-4-3 'git-imerge test repository with conflict at 4-3' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-4-3 + local 'description=git-imerge test repository with conflict at 4-3' + test -d /build/git-imerge-1.2.0/t/tmp/conflicted-4-3 + mkdir -p /build/git-imerge-1.2.0/t/tmp/conflicted-4-3 + git init /build/git-imerge-1.2.0/t/tmp/conflicted-4-3 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/conflicted-4-3/.git/ + echo 'git-imerge test repository with conflict at 4-3' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-4-3/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-4-3/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/conflicted-4-3 + cd /build/git-imerge-1.2.0/t/tmp/conflicted-4-3 + modify c.txt 0 + filename=c.txt + text=0 + echo 0 + git add c.txt + modify d.txt 0 + filename=d.txt + text=0 + echo 0 + git add d.txt + modify conflict.txt 'original version' + filename=conflict.txt + text='original version' + echo 'original version' + git add conflict.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) d70e04b] m⇒0 3 files changed, 3 insertions(+) create mode 100644 c.txt create mode 100644 conflict.txt create mode 100644 d.txt + git checkout -b c master -- Switched to a new branch 'c' ++ seq 9 + for i in $(seq 9) + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + case $conflict in + commit -m $'c\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'c\342\207\2221' [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + case $conflict in + commit -m $'c\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'c\342\207\2222' [c 7c431f2] c⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 3 + filename=c.txt + text=3 + echo 3 + git add c.txt + case $conflict in + commit -m $'c\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'c\342\207\2223' [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + case $conflict in + modify conflict.txt 'c version' + filename=conflict.txt + text='c version' + echo 'c version' + git add conflict.txt + commit -m $'c\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'c\342\207\2224' [c 3c091de] c⇒4 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 9) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + case $conflict in + commit -m $'c\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'c\342\207\2225' [c a0ac37a] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + case $conflict in + commit -m $'c\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'c\342\207\2226' [c ed9fdfa] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + case $conflict in + commit -m $'c\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'c\342\207\2227' [c 1da7bf5] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + case $conflict in + commit -m $'c\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'c\342\207\2228' [c d8de99f] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + case $conflict in + commit -m $'c\342\207\2229' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'c\342\207\2229' [c 9cde605] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' ++ seq 6 + for i in $(seq 6) + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + case $conflict in + commit -m $'d\342\207\2221' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'d\342\207\2221' [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + case $conflict in + commit -m $'d\342\207\2222' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'d\342\207\2222' [d 93e27e6] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + case $conflict in + modify conflict.txt 'd version' + filename=conflict.txt + text='d version' + echo 'd version' + git add conflict.txt + commit -m $'d\342\207\2223' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'d\342\207\2223' [d 2bb1a7e] d⇒3 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 6) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + case $conflict in + commit -m $'d\342\207\2224' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'d\342\207\2224' [d 81f9c80] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + case $conflict in + commit -m $'d\342\207\2225' + TIME=1112912008 + GIT_AUTHOR_DATE='@1112912008 +0000' + GIT_COMMITTER_DATE='@1112912008 +0000' + git commit -m $'d\342\207\2225' [d 3690dde] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + case $conflict in + commit -m $'d\342\207\2226' + TIME=1112912009 + GIT_AUTHOR_DATE='@1112912009 +0000' + GIT_COMMITTER_DATE='@1112912009 +0000' + git commit -m $'d\342\207\2226' [d 8085853] d⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge autofill + tee autofill.out Attempting automerge of 9-6...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-4...success. Attempting automerge of 1-6...success. Attempting automerge of 9-6...failure. Attempting automerge of 5-6...failure. Attempting automerge of 3-6...success. Attempting automerge of 4-6...failure. Attempting automerge of 4-1...success. Attempting automerge of 4-4...failure. Attempting automerge of 4-3...failure. Attempting automerge of 4-2...success. Attempting automerge of 9-2...success. Autofilling 1-6...success. Autofilling 2-6...success. Autofilling 3-1...success. Autofilling 3-2...success. Autofilling 3-3...success. Autofilling 3-4...success. Autofilling 3-5...success. Autofilling 3-6 (first way)...success. Autofilling 3-6 (second way)...success. The two ways of autofilling 3-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:4,0:7]. Autofilling 4-2...success. Autofilling 5-2...success. Autofilling 6-2...success. Autofilling 7-2...success. Autofilling 8-2...success. Autofilling 9-1...success. Autofilling 9-2 (first way)...success. Autofilling 9-2 (second way)...success. The two ways of autofilling 9-2 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[3:10,0:3]. Attempting automerge of 9-6...failure. Attempting automerge of 4-3...failure. HEAD is now at 9cde605 c⇒9 Conflict; suggest manual merge of 4-3 + grep -q Traceback autofill.out + grep -q 'suggest manual merge of 4-3' autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *??.?????. *??....... *??.#????? *??.?????? 5 - *??.?????? 6 - *...?????? | d 0 5 9 | | | 0 - ********** - c *??.?????| *??.-----+ *??|#????? *??|?????? 5 - *??|?????? 6 - *--+?????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 3c091ded129a5edf9061360bab867edade996c93 Author: Loú User Date: Thu Apr 7 22:13:18 2005 +0000 c⇒4 Original second commit: commit 2bb1a7e7c5451146af7dc59b69b8289c76a3ee7b Author: Loú User Date: Thu Apr 7 22:13:26 2005 +0000 d⇒3 There was a conflict merging commit 4-3, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo 'merged version' + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d 5c153d3] imerge 'c-d': manual merge 4-3 Merge has been recorded for merge 4-3. Attempting automerge of 4-6...success. Autofilling 4-4...success. Autofilling 4-5...success. Autofilling 4-6...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[3:5,3:7]. Attempting automerge of 9-6...success. Autofilling 5-6...success. Autofilling 6-6...success. Autofilling 7-6...success. Autofilling 8-6...success. Autofilling 9-3...success. Autofilling 9-4...success. Autofilling 9-5...success. Autofilling 9-6 (first way)...success. Autofilling 9-6 (second way)...success. The two ways of autofilling 9-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[4:10,2:7]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge2.html 0 5 9 | | | 0 - ********** - c *??.?????. *??....... *??.*????. *??..????. 5 - *??..????. 6 - *......... | d 0 5 9 | | | 0 - ********** - c *??.?????| *??......| *??.*????| *??..????| 5 - *??..????| 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=c-d-merge Merge d into c (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:31:21 2024 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 5924fe3] Merge d into c (using imerge) Date: Mon May 20 10:31:21 2024 +0000 + check_tree c-d-merge ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-merge + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-merge^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history2 + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history2^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge remove + git checkout c Switched to branch 'c' + tee start.out + git-imerge start --goal=full --first-parent --name=c-d d Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 1-6...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 2-6...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 3-6...success. Attempting to merge 4-1...success. Attempting to merge 4-2...success. Attempting to merge 4-3...conflict. Attempting to merge 5-1...success. Attempting to merge 5-2...success. Attempting to merge 6-1...success. Attempting to merge 6-2...success. Attempting to merge 7-1...success. Attempting to merge 7-2...success. Attempting to merge 8-1...success. Attempting to merge 8-2...success. Attempting to merge 9-1...success. Attempting to merge 9-2...success. Previous HEAD position was cbaf447 imerge 'c-d': automatic merge 9-2 Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 3c091ded129a5edf9061360bab867edade996c93 Author: Loú User Date: Thu Apr 7 22:13:18 2005 +0000 c⇒4 Original second commit: commit 2bb1a7e7c5451146af7dc59b69b8289c76a3ee7b Author: Loú User Date: Thu Apr 7 22:13:26 2005 +0000 d⇒3 There was a conflict merging commit 4-3, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback start.out + grep -q 'suggest manual merge of 4-3' autofill.out + git-imerge diagram --commits --frontier --html=imerge3.html 0 5 9 | | | 0 - ********** - c *......... *......... *...#????? *...?????? 5 - *...?????? 6 - *...?????? | d 0 5 9 | | | 0 - ********** - c *........| *...-----+ *..|#????? *..|?????? 5 - *..|?????? 6 - *--+?????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + echo 'merged version' + git add conflict.txt + GIT_EDITOR=cat + git commit imerge 'c-d': manual merge 4-3 # Conflicts: # conflict.txt # # It looks like you may be committing a merge. # If this is not correct, please run # git update-ref -d MERGE_HEAD # and try again. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch imerge/c-d # All conflicts fixed but you are still merging. # # Changes to be committed: # modified: conflict.txt # modified: d.txt # [imerge/c-d 93fe4dd] imerge 'c-d': manual merge 4-3 + git-imerge continue --edit Merge has been recorded for merge 4-3. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 4-6...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 5-6...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 6-6...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 7-6...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Attempting to merge 8-6...success. Attempting to merge 9-3...success. Attempting to merge 9-4...success. Attempting to merge 9-5...success. Attempting to merge 9-6...success. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 9 | | | 0 - ********** - c *......... *......... *...*..... *......... 5 - *......... 6 - *......... | d 0 5 9 | | | 0 - ********** - c *........| *........| *...*....| *........| 5 - *........| 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=c-d-full + check_tree c-d-full ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-full + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-full^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + test_conflict 1-1 + local conflict=1-1 + TMP=/build/git-imerge-1.2.0/t/tmp/conflicted-1-1 + DESCRIPTION='git-imerge test repository with conflict at 1-1' + init_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-1-1 'git-imerge test repository with conflict at 1-1' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-1-1 + local 'description=git-imerge test repository with conflict at 1-1' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-1-1 'git-imerge test repository with conflict at 1-1' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-1-1 + local 'description=git-imerge test repository with conflict at 1-1' + test -d /build/git-imerge-1.2.0/t/tmp/conflicted-1-1 + mkdir -p /build/git-imerge-1.2.0/t/tmp/conflicted-1-1 + git init /build/git-imerge-1.2.0/t/tmp/conflicted-1-1 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/conflicted-1-1/.git/ + echo 'git-imerge test repository with conflict at 1-1' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-1-1/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-1-1/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/conflicted-1-1 + cd /build/git-imerge-1.2.0/t/tmp/conflicted-1-1 + modify c.txt 0 + filename=c.txt + text=0 + echo 0 + git add c.txt + modify d.txt 0 + filename=d.txt + text=0 + echo 0 + git add d.txt + modify conflict.txt 'original version' + filename=conflict.txt + text='original version' + echo 'original version' + git add conflict.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) d70e04b] m⇒0 3 files changed, 3 insertions(+) create mode 100644 c.txt create mode 100644 conflict.txt create mode 100644 d.txt + git checkout -b c master -- Switched to a new branch 'c' ++ seq 9 + for i in $(seq 9) + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + case $conflict in + modify conflict.txt 'c version' + filename=conflict.txt + text='c version' + echo 'c version' + git add conflict.txt + commit -m $'c\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'c\342\207\2221' [c 2120f40] c⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 9) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + case $conflict in + commit -m $'c\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'c\342\207\2222' [c 90cc7de] c⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 3 + filename=c.txt + text=3 + echo 3 + git add c.txt + case $conflict in + commit -m $'c\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'c\342\207\2223' [c 2046ed2] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + case $conflict in + commit -m $'c\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'c\342\207\2224' [c 8a2cee9] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + case $conflict in + commit -m $'c\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'c\342\207\2225' [c ac16a05] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + case $conflict in + commit -m $'c\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'c\342\207\2226' [c 30dd2ae] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + case $conflict in + commit -m $'c\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'c\342\207\2227' [c 0883eb9] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + case $conflict in + commit -m $'c\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'c\342\207\2228' [c f661c06] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + case $conflict in + commit -m $'c\342\207\2229' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'c\342\207\2229' [c 243e8ed] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' ++ seq 6 + for i in $(seq 6) + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + case $conflict in + modify conflict.txt 'd version' + filename=conflict.txt + text='d version' + echo 'd version' + git add conflict.txt + commit -m $'d\342\207\2221' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'d\342\207\2221' [d ac0427a] d⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 6) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + case $conflict in + commit -m $'d\342\207\2222' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'d\342\207\2222' [d 43c38c0] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + case $conflict in + commit -m $'d\342\207\2223' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'d\342\207\2223' [d 0260058] d⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + case $conflict in + commit -m $'d\342\207\2224' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'d\342\207\2224' [d 40fef44] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + case $conflict in + commit -m $'d\342\207\2225' + TIME=1112912008 + GIT_AUTHOR_DATE='@1112912008 +0000' + GIT_COMMITTER_DATE='@1112912008 +0000' + git commit -m $'d\342\207\2225' [d b080a65] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + case $conflict in + commit -m $'d\342\207\2226' + TIME=1112912009 + GIT_AUTHOR_DATE='@1112912009 +0000' + GIT_COMMITTER_DATE='@1112912009 +0000' + git commit -m $'d\342\207\2226' [d 200ce5c] d⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge autofill + tee autofill.out Attempting automerge of 9-6...failure. Attempting automerge of 1-1...failure. HEAD is now at 243e8ed c⇒9 No progress was possible; suggest manual merge of 1-1 + grep -q Traceback autofill.out + grep -q 'suggest manual merge of 1-1' autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *#???????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *#???????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2120f40dc39d28052a5279b645124e8ed7e5de73 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 c⇒1 Original second commit: commit ac0427a285b64f2815ebd6eb83880f309600d0c7 Author: Loú User Date: Thu Apr 7 22:13:24 2005 +0000 d⇒1 There was a conflict merging commit 1-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo 'merged version' + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d b0d266f] imerge 'c-d': manual merge 1-1 Merge has been recorded for merge 1-1. Attempting automerge of 1-6...success. Autofilling 1-2...success. Autofilling 1-3...success. Autofilling 1-4...success. Autofilling 1-5...success. Autofilling 1-6...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:2,1:7]. Attempting automerge of 9-6...success. Autofilling 2-6...success. Autofilling 3-6...success. Autofilling 4-6...success. Autofilling 5-6...success. Autofilling 6-6...success. Autofilling 7-6...success. Autofilling 8-6...success. Autofilling 9-1...success. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Autofilling 9-5...success. Autofilling 9-6 (first way)...success. Autofilling 9-6 (second way)...success. The two ways of autofilling 9-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[1:10,0:7]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge2.html 0 5 9 | | | 0 - ********** - c **???????. *.???????. *.???????. *.???????. 5 - *.???????. 6 - *......... | d 0 5 9 | | | 0 - ********** - c **???????| *.???????| *.???????| *.???????| 5 - *.???????| 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=c-d-merge Merge d into c (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:31:31 2024 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge f9bd5ae] Merge d into c (using imerge) Date: Mon May 20 10:31:31 2024 +0000 + check_tree c-d-merge ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-merge + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-merge^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history2 + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history2^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge remove + git checkout c Switched to branch 'c' + tee start.out + git-imerge start --goal=full --first-parent --name=c-d d Attempting to merge 1-1...conflict. Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2120f40dc39d28052a5279b645124e8ed7e5de73 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 c⇒1 Original second commit: commit ac0427a285b64f2815ebd6eb83880f309600d0c7 Author: Loú User Date: Thu Apr 7 22:13:24 2005 +0000 d⇒1 There was a conflict merging commit 1-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback start.out + grep -q 'suggest manual merge of 1-1' autofill.out + git-imerge diagram --commits --frontier --html=imerge3.html 0 5 9 | | | 0 - ********** - c *#???????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *#???????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + echo 'merged version' + git add conflict.txt + GIT_EDITOR=cat + git commit imerge 'c-d': manual merge 1-1 # Conflicts: # conflict.txt # # It looks like you may be committing a merge. # If this is not correct, please run # git update-ref -d MERGE_HEAD # and try again. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch imerge/c-d # All conflicts fixed but you are still merging. # # Changes to be committed: # modified: conflict.txt # modified: d.txt # [imerge/c-d 0112c64] imerge 'c-d': manual merge 1-1 + git-imerge continue --edit Merge has been recorded for merge 1-1. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 1-6...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 2-6...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 3-6...success. Attempting to merge 4-1...success. Attempting to merge 4-2...success. Attempting to merge 4-3...success. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 4-6...success. Attempting to merge 5-1...success. Attempting to merge 5-2...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 5-6...success. Attempting to merge 6-1...success. Attempting to merge 6-2...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 6-6...success. Attempting to merge 7-1...success. Attempting to merge 7-2...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 7-6...success. Attempting to merge 8-1...success. Attempting to merge 8-2...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Attempting to merge 8-6...success. Attempting to merge 9-1...success. Attempting to merge 9-2...success. Attempting to merge 9-3...success. Attempting to merge 9-4...success. Attempting to merge 9-5...success. Attempting to merge 9-6...success. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 9 | | | 0 - ********** - c **........ *......... *......... *......... 5 - *......... 6 - *......... | d 0 5 9 | | | 0 - ********** - c **.......| *........| *........| *........| 5 - *........| 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=c-d-full + check_tree c-d-full ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-full + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-full^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + test_conflict 9-1 + local conflict=9-1 + TMP=/build/git-imerge-1.2.0/t/tmp/conflicted-9-1 + DESCRIPTION='git-imerge test repository with conflict at 9-1' + init_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-9-1 'git-imerge test repository with conflict at 9-1' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-9-1 + local 'description=git-imerge test repository with conflict at 9-1' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-9-1 'git-imerge test repository with conflict at 9-1' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-9-1 + local 'description=git-imerge test repository with conflict at 9-1' + test -d /build/git-imerge-1.2.0/t/tmp/conflicted-9-1 + mkdir -p /build/git-imerge-1.2.0/t/tmp/conflicted-9-1 + git init /build/git-imerge-1.2.0/t/tmp/conflicted-9-1 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/conflicted-9-1/.git/ + echo 'git-imerge test repository with conflict at 9-1' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-9-1/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-9-1/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/conflicted-9-1 + cd /build/git-imerge-1.2.0/t/tmp/conflicted-9-1 + modify c.txt 0 + filename=c.txt + text=0 + echo 0 + git add c.txt + modify d.txt 0 + filename=d.txt + text=0 + echo 0 + git add d.txt + modify conflict.txt 'original version' + filename=conflict.txt + text='original version' + echo 'original version' + git add conflict.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) d70e04b] m⇒0 3 files changed, 3 insertions(+) create mode 100644 c.txt create mode 100644 conflict.txt create mode 100644 d.txt + git checkout -b c master -- Switched to a new branch 'c' ++ seq 9 + for i in $(seq 9) + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + case $conflict in + commit -m $'c\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'c\342\207\2221' [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + case $conflict in + commit -m $'c\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'c\342\207\2222' [c 7c431f2] c⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 3 + filename=c.txt + text=3 + echo 3 + git add c.txt + case $conflict in + commit -m $'c\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'c\342\207\2223' [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + case $conflict in + commit -m $'c\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'c\342\207\2224' [c ed9122f] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + case $conflict in + commit -m $'c\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'c\342\207\2225' [c 1d3bf09] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + case $conflict in + commit -m $'c\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'c\342\207\2226' [c f999ecd] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + case $conflict in + commit -m $'c\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'c\342\207\2227' [c 7050a8a] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + case $conflict in + commit -m $'c\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'c\342\207\2228' [c 9732e77] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + case $conflict in + modify conflict.txt 'c version' + filename=conflict.txt + text='c version' + echo 'c version' + git add conflict.txt + commit -m $'c\342\207\2229' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'c\342\207\2229' [c 73a5eed] c⇒9 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout -b d master -- Switched to a new branch 'd' ++ seq 6 + for i in $(seq 6) + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + case $conflict in + modify conflict.txt 'd version' + filename=conflict.txt + text='d version' + echo 'd version' + git add conflict.txt + commit -m $'d\342\207\2221' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'d\342\207\2221' [d ac0427a] d⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 6) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + case $conflict in + commit -m $'d\342\207\2222' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'d\342\207\2222' [d 43c38c0] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + case $conflict in + commit -m $'d\342\207\2223' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'d\342\207\2223' [d 0260058] d⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + case $conflict in + commit -m $'d\342\207\2224' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'d\342\207\2224' [d 40fef44] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + case $conflict in + commit -m $'d\342\207\2225' + TIME=1112912008 + GIT_AUTHOR_DATE='@1112912008 +0000' + GIT_COMMITTER_DATE='@1112912008 +0000' + git commit -m $'d\342\207\2225' [d b080a65] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + case $conflict in + commit -m $'d\342\207\2226' + TIME=1112912009 + GIT_AUTHOR_DATE='@1112912009 +0000' + GIT_COMMITTER_DATE='@1112912009 +0000' + git commit -m $'d\342\207\2226' [d 200ce5c] d⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge autofill + tee autofill.out Attempting automerge of 9-6...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-4...success. Attempting automerge of 1-6...success. Attempting automerge of 9-6...failure. Attempting automerge of 5-6...success. Attempting automerge of 7-6...success. Attempting automerge of 8-6...success. Attempting automerge of 9-1...failure. Autofilling 1-6...success. Autofilling 2-6...success. Autofilling 3-6...success. Autofilling 4-6...success. Autofilling 5-6...success. Autofilling 6-6...success. Autofilling 7-6...success. Autofilling 8-1...success. Autofilling 8-2...success. Autofilling 8-3...success. Autofilling 8-4...success. Autofilling 8-5...success. Autofilling 8-6 (first way)...success. Autofilling 8-6 (second way)...success. The two ways of autofilling 8-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:9,0:7]. Attempting automerge of 9-6...failure. Attempting automerge of 9-1...failure. HEAD is now at 73a5eed c⇒9 Conflict; suggest manual merge of 9-1 + grep -q Traceback autofill.out + grep -q 'suggest manual merge of 9-1' autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *???????.# *???????.? *???????.? *???????.? 5 - *???????.? 6 - *........? | d 0 5 9 | | | 0 - ********** - c *???????|# *???????|? *???????|? *???????|? 5 - *???????|? 6 - *-------+? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 73a5eedb087a0f656d730831b8def7943b40f3cf Author: Loú User Date: Thu Apr 7 22:13:23 2005 +0000 c⇒9 Original second commit: commit ac0427a285b64f2815ebd6eb83880f309600d0c7 Author: Loú User Date: Thu Apr 7 22:13:24 2005 +0000 d⇒1 There was a conflict merging commit 9-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo 'merged version' + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d 86f648f] imerge 'c-d': manual merge 9-1 Merge has been recorded for merge 9-1. Attempting automerge of 9-6...success. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Autofilling 9-5...success. Autofilling 9-6...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[8:10,1:7]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge2.html 0 5 9 | | | 0 - ********** - c *???????.* *???????.. *???????.. *???????.. 5 - *???????.. 6 - *......... | d 0 5 9 | | | 0 - ********** - c *???????.* *???????.| *???????.| *???????.| 5 - *???????.| 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=c-d-merge Merge d into c (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:31:42 2024 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge bb25d0d] Merge d into c (using imerge) Date: Mon May 20 10:31:42 2024 +0000 + check_tree c-d-merge ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-merge + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-merge^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history2 + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history2^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge remove + git checkout c Switched to branch 'c' + git-imerge start --goal=full --first-parent --name=c-d d + tee start.out Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 1-6...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 2-6...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 3-6...success. Attempting to merge 4-1...success. Attempting to merge 4-2...success. Attempting to merge 4-3...success. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 4-6...success. Attempting to merge 5-1...success. Attempting to merge 5-2...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 5-6...success. Attempting to merge 6-1...success. Attempting to merge 6-2...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 6-6...success. Attempting to merge 7-1...success. Attempting to merge 7-2...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 7-6...success. Attempting to merge 8-1...success. Attempting to merge 8-2...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Attempting to merge 8-6...success. Attempting to merge 9-1...conflict. Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 73a5eedb087a0f656d730831b8def7943b40f3cf Author: Loú User Date: Thu Apr 7 22:13:23 2005 +0000 c⇒9 Original second commit: commit ac0427a285b64f2815ebd6eb83880f309600d0c7 Author: Loú User Date: Thu Apr 7 22:13:24 2005 +0000 d⇒1 There was a conflict merging commit 9-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback start.out + grep -q 'suggest manual merge of 9-1' autofill.out + git-imerge diagram --commits --frontier --html=imerge3.html 0 5 9 | | | 0 - ********** - c *........# *........? *........? *........? 5 - *........? 6 - *........? | d 0 5 9 | | | 0 - ********** - c *.......|# *.......|? *.......|? *.......|? 5 - *.......|? 6 - *-------+? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + echo 'merged version' + git add conflict.txt + GIT_EDITOR=cat + git commit imerge 'c-d': manual merge 9-1 # Conflicts: # conflict.txt # # It looks like you may be committing a merge. # If this is not correct, please run # git update-ref -d MERGE_HEAD # and try again. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch imerge/c-d # All conflicts fixed but you are still merging. # # Changes to be committed: # modified: conflict.txt # modified: d.txt # [imerge/c-d eb828b3] imerge 'c-d': manual merge 9-1 + git-imerge continue --edit Merge has been recorded for merge 9-1. Attempting to merge 9-2...success. Attempting to merge 9-3...success. Attempting to merge 9-4...success. Attempting to merge 9-5...success. Attempting to merge 9-6...success. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 9 | | | 0 - ********** - c *........* *......... *......... *......... 5 - *......... 6 - *......... | d 0 5 9 | | | 0 - ********** - c *........* *........| *........| *........| 5 - *........| 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=c-d-full + check_tree c-d-full ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-full + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-full^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + test_conflict 1-6 + local conflict=1-6 + TMP=/build/git-imerge-1.2.0/t/tmp/conflicted-1-6 + DESCRIPTION='git-imerge test repository with conflict at 1-6' + init_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-1-6 'git-imerge test repository with conflict at 1-6' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-1-6 + local 'description=git-imerge test repository with conflict at 1-6' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-1-6 'git-imerge test repository with conflict at 1-6' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-1-6 + local 'description=git-imerge test repository with conflict at 1-6' + test -d /build/git-imerge-1.2.0/t/tmp/conflicted-1-6 + mkdir -p /build/git-imerge-1.2.0/t/tmp/conflicted-1-6 + git init /build/git-imerge-1.2.0/t/tmp/conflicted-1-6 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/conflicted-1-6/.git/ + echo 'git-imerge test repository with conflict at 1-6' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-1-6/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-1-6/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/conflicted-1-6 + cd /build/git-imerge-1.2.0/t/tmp/conflicted-1-6 + modify c.txt 0 + filename=c.txt + text=0 + echo 0 + git add c.txt + modify d.txt 0 + filename=d.txt + text=0 + echo 0 + git add d.txt + modify conflict.txt 'original version' + filename=conflict.txt + text='original version' + echo 'original version' + git add conflict.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) d70e04b] m⇒0 3 files changed, 3 insertions(+) create mode 100644 c.txt create mode 100644 conflict.txt create mode 100644 d.txt + git checkout -b c master -- Switched to a new branch 'c' ++ seq 9 + for i in $(seq 9) + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + case $conflict in + modify conflict.txt 'c version' + filename=conflict.txt + text='c version' + echo 'c version' + git add conflict.txt + commit -m $'c\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'c\342\207\2221' [c 2120f40] c⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 9) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + case $conflict in + commit -m $'c\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'c\342\207\2222' [c 90cc7de] c⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 3 + filename=c.txt + text=3 + echo 3 + git add c.txt + case $conflict in + commit -m $'c\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'c\342\207\2223' [c 2046ed2] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + case $conflict in + commit -m $'c\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'c\342\207\2224' [c 8a2cee9] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + case $conflict in + commit -m $'c\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'c\342\207\2225' [c ac16a05] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + case $conflict in + commit -m $'c\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'c\342\207\2226' [c 30dd2ae] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + case $conflict in + commit -m $'c\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'c\342\207\2227' [c 0883eb9] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + case $conflict in + commit -m $'c\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'c\342\207\2228' [c f661c06] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + case $conflict in + commit -m $'c\342\207\2229' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'c\342\207\2229' [c 243e8ed] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' ++ seq 6 + for i in $(seq 6) + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + case $conflict in + commit -m $'d\342\207\2221' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'d\342\207\2221' [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + case $conflict in + commit -m $'d\342\207\2222' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'d\342\207\2222' [d 93e27e6] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + case $conflict in + commit -m $'d\342\207\2223' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'d\342\207\2223' [d 133f385] d⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + case $conflict in + commit -m $'d\342\207\2224' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'d\342\207\2224' [d 586472a] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + case $conflict in + commit -m $'d\342\207\2225' + TIME=1112912008 + GIT_AUTHOR_DATE='@1112912008 +0000' + GIT_COMMITTER_DATE='@1112912008 +0000' + git commit -m $'d\342\207\2225' [d 9522207] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + case $conflict in + modify conflict.txt 'd version' + filename=conflict.txt + text='d version' + echo 'd version' + git add conflict.txt + commit -m $'d\342\207\2226' + TIME=1112912009 + GIT_AUTHOR_DATE='@1112912009 +0000' + GIT_COMMITTER_DATE='@1112912009 +0000' + git commit -m $'d\342\207\2226' [d f7e451a] d⇒6 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge autofill + tee autofill.out Attempting automerge of 9-6...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-4...success. Attempting automerge of 1-6...failure. Attempting automerge of 1-5...success. Attempting automerge of 9-5...success. Autofilling 1-5...success. Autofilling 2-5...success. Autofilling 3-5...success. Autofilling 4-5...success. Autofilling 5-5...success. Autofilling 6-5...success. Autofilling 7-5...success. Autofilling 8-5...success. Autofilling 9-1...success. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Autofilling 9-5 (first way)...success. Autofilling 9-5 (second way)...success. The two ways of autofilling 9-5 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:10,0:6]. Attempting automerge of 9-6...failure. Attempting automerge of 1-6...failure. HEAD is now at 243e8ed c⇒9 Conflict; suggest manual merge of 1-6 + grep -q Traceback autofill.out + grep -q 'suggest manual merge of 1-6' autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *????????. *????????. *????????. *????????. 5 - *......... 6 - *#???????? | d 0 5 9 | | | 0 - ********** - c *????????| *????????| *????????| *????????| 5 - *--------+ 6 - *#???????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2120f40dc39d28052a5279b645124e8ed7e5de73 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 c⇒1 Original second commit: commit f7e451a6c9656dda15641a9fbc591a602f158692 Author: Loú User Date: Thu Apr 7 22:13:29 2005 +0000 d⇒6 There was a conflict merging commit 1-6, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo 'merged version' + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d 45b92e0] imerge 'c-d': manual merge 1-6 Merge has been recorded for merge 1-6. Attempting automerge of 9-6...success. Autofilling 2-6...success. Autofilling 3-6...success. Autofilling 4-6...success. Autofilling 5-6...success. Autofilling 6-6...success. Autofilling 7-6...success. Autofilling 8-6...success. Autofilling 9-6...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[1:10,5:7]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge2.html 0 5 9 | | | 0 - ********** - c *????????. *????????. *????????. *????????. 5 - *......... 6 - **........ | d 0 5 9 | | | 0 - ********** - c *????????| *????????| *????????| *????????| 5 - *........| 6 - **-------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=c-d-merge Merge d into c (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:31:53 2024 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge b447331] Merge d into c (using imerge) Date: Mon May 20 10:31:53 2024 +0000 + check_tree c-d-merge ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-merge + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-merge^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history2 + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history2^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge remove + git checkout c Switched to branch 'c' + git-imerge start --goal=full --first-parent --name=c-d d + tee start.out Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 1-6...conflict. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 4-1...success. Attempting to merge 4-2...success. Attempting to merge 4-3...success. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 5-1...success. Attempting to merge 5-2...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 6-1...success. Attempting to merge 6-2...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 7-1...success. Attempting to merge 7-2...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 8-1...success. Attempting to merge 8-2...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Attempting to merge 9-1...success. Attempting to merge 9-2...success. Attempting to merge 9-3...success. Attempting to merge 9-4...success. Attempting to merge 9-5...success. Previous HEAD position was 3ffdfaa imerge 'c-d': automatic merge 9-5 Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2120f40dc39d28052a5279b645124e8ed7e5de73 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 c⇒1 Original second commit: commit f7e451a6c9656dda15641a9fbc591a602f158692 Author: Loú User Date: Thu Apr 7 22:13:29 2005 +0000 d⇒6 There was a conflict merging commit 1-6, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback start.out + grep -q 'suggest manual merge of 1-6' autofill.out + git-imerge diagram --commits --frontier --html=imerge3.html 0 5 9 | | | 0 - ********** - c *......... *......... *......... *......... 5 - *......... 6 - *#???????? | d 0 5 9 | | | 0 - ********** - c *........| *........| *........| *........| 5 - *--------+ 6 - *#???????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + echo 'merged version' + git add conflict.txt + GIT_EDITOR=cat + git commit imerge 'c-d': manual merge 1-6 # Conflicts: # conflict.txt # # It looks like you may be committing a merge. # If this is not correct, please run # git update-ref -d MERGE_HEAD # and try again. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch imerge/c-d # All conflicts fixed but you are still merging. # # Changes to be committed: # modified: conflict.txt # modified: d.txt # [imerge/c-d 110526f] imerge 'c-d': manual merge 1-6 + git-imerge continue --edit Merge has been recorded for merge 1-6. Attempting to merge 2-6...success. Attempting to merge 3-6...success. Attempting to merge 4-6...success. Attempting to merge 5-6...success. Attempting to merge 6-6...success. Attempting to merge 7-6...success. Attempting to merge 8-6...success. Attempting to merge 9-6...success. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 9 | | | 0 - ********** - c *......... *......... *......... *......... 5 - *......... 6 - **........ | d 0 5 9 | | | 0 - ********** - c *........| *........| *........| *........| 5 - *........| 6 - **-------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=c-d-full + check_tree c-d-full ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-full + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-full^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + test_conflict 9-6 + local conflict=9-6 + TMP=/build/git-imerge-1.2.0/t/tmp/conflicted-9-6 + DESCRIPTION='git-imerge test repository with conflict at 9-6' + init_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-9-6 'git-imerge test repository with conflict at 9-6' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-9-6 + local 'description=git-imerge test repository with conflict at 9-6' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-9-6 'git-imerge test repository with conflict at 9-6' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-9-6 + local 'description=git-imerge test repository with conflict at 9-6' + test -d /build/git-imerge-1.2.0/t/tmp/conflicted-9-6 + mkdir -p /build/git-imerge-1.2.0/t/tmp/conflicted-9-6 + git init /build/git-imerge-1.2.0/t/tmp/conflicted-9-6 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/conflicted-9-6/.git/ + echo 'git-imerge test repository with conflict at 9-6' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-9-6/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-9-6/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/conflicted-9-6 + cd /build/git-imerge-1.2.0/t/tmp/conflicted-9-6 + modify c.txt 0 + filename=c.txt + text=0 + echo 0 + git add c.txt + modify d.txt 0 + filename=d.txt + text=0 + echo 0 + git add d.txt + modify conflict.txt 'original version' + filename=conflict.txt + text='original version' + echo 'original version' + git add conflict.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) d70e04b] m⇒0 3 files changed, 3 insertions(+) create mode 100644 c.txt create mode 100644 conflict.txt create mode 100644 d.txt + git checkout -b c master -- Switched to a new branch 'c' ++ seq 9 + for i in $(seq 9) + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + case $conflict in + commit -m $'c\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'c\342\207\2221' [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + case $conflict in + commit -m $'c\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'c\342\207\2222' [c 7c431f2] c⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 3 + filename=c.txt + text=3 + echo 3 + git add c.txt + case $conflict in + commit -m $'c\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'c\342\207\2223' [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + case $conflict in + commit -m $'c\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'c\342\207\2224' [c ed9122f] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + case $conflict in + commit -m $'c\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'c\342\207\2225' [c 1d3bf09] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + case $conflict in + commit -m $'c\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'c\342\207\2226' [c f999ecd] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + case $conflict in + commit -m $'c\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'c\342\207\2227' [c 7050a8a] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + case $conflict in + commit -m $'c\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'c\342\207\2228' [c 9732e77] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + case $conflict in + modify conflict.txt 'c version' + filename=conflict.txt + text='c version' + echo 'c version' + git add conflict.txt + commit -m $'c\342\207\2229' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'c\342\207\2229' [c 73a5eed] c⇒9 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout -b d master -- Switched to a new branch 'd' ++ seq 6 + for i in $(seq 6) + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + case $conflict in + commit -m $'d\342\207\2221' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'d\342\207\2221' [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + case $conflict in + commit -m $'d\342\207\2222' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'d\342\207\2222' [d 93e27e6] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + case $conflict in + commit -m $'d\342\207\2223' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'d\342\207\2223' [d 133f385] d⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + case $conflict in + commit -m $'d\342\207\2224' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'d\342\207\2224' [d 586472a] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + case $conflict in + commit -m $'d\342\207\2225' + TIME=1112912008 + GIT_AUTHOR_DATE='@1112912008 +0000' + GIT_COMMITTER_DATE='@1112912008 +0000' + git commit -m $'d\342\207\2225' [d 9522207] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + case $conflict in + modify conflict.txt 'd version' + filename=conflict.txt + text='d version' + echo 'd version' + git add conflict.txt + commit -m $'d\342\207\2226' + TIME=1112912009 + GIT_AUTHOR_DATE='@1112912009 +0000' + GIT_COMMITTER_DATE='@1112912009 +0000' + git commit -m $'d\342\207\2226' [d f7e451a] d⇒6 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge autofill + tee autofill.out Attempting automerge of 9-6...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-4...success. Attempting automerge of 1-6...success. Attempting automerge of 9-6...failure. Attempting automerge of 5-6...success. Attempting automerge of 7-6...success. Attempting automerge of 8-6...success. Attempting automerge of 9-1...success. Attempting automerge of 9-4...success. Attempting automerge of 9-5...success. Autofilling 1-6...success. Autofilling 2-6...success. Autofilling 3-6...success. Autofilling 4-6...success. Autofilling 5-6...success. Autofilling 6-6...success. Autofilling 7-6...success. Autofilling 8-1...success. Autofilling 8-2...success. Autofilling 8-3...success. Autofilling 8-4...success. Autofilling 8-5...success. Autofilling 8-6 (first way)...success. Autofilling 8-6 (second way)...success. The two ways of autofilling 8-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:9,0:7]. Autofilling 9-1...success. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Autofilling 9-5...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[8:10,0:6]. Attempting automerge of 9-6...failure. Attempting automerge of 9-6...failure. HEAD is now at 73a5eed c⇒9 Conflict; suggest manual merge of 9-6 + grep -q Traceback autofill.out + grep -q 'suggest manual merge of 9-6' autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *???????.. *???????.. *???????.. *???????.. 5 - *???????.. 6 - *........# | d 0 5 9 | | | 0 - ********** - c *???????.| *???????.| *???????.| *???????.| 5 - *???????.+ 6 - *-------+# | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 73a5eedb087a0f656d730831b8def7943b40f3cf Author: Loú User Date: Thu Apr 7 22:13:23 2005 +0000 c⇒9 Original second commit: commit f7e451a6c9656dda15641a9fbc591a602f158692 Author: Loú User Date: Thu Apr 7 22:13:29 2005 +0000 d⇒6 There was a conflict merging commit 9-6, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo 'merged version' + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d 21864ae] imerge 'c-d': manual merge 9-6 Merge has been recorded for merge 9-6. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge2.html 0 5 9 | | | 0 - ********** - c *???????.. *???????.. *???????.. *???????.. 5 - *???????.. 6 - *........* | d 0 5 9 | | | 0 - ********** - c *???????.| *???????.| *???????.| *???????.| 5 - *???????.| 6 - *--------* | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=c-d-merge Merge d into c (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:32:04 2024 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge e69b0c8] Merge d into c (using imerge) Date: Mon May 20 10:32:04 2024 +0000 + check_tree c-d-merge ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-merge + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-merge^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history2 + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history2^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge remove + git checkout c Switched to branch 'c' + git-imerge start --goal=full --first-parent --name=c-d d + tee start.out Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 1-6...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 2-6...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 3-6...success. Attempting to merge 4-1...success. Attempting to merge 4-2...success. Attempting to merge 4-3...success. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 4-6...success. Attempting to merge 5-1...success. Attempting to merge 5-2...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 5-6...success. Attempting to merge 6-1...success. Attempting to merge 6-2...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 6-6...success. Attempting to merge 7-1...success. Attempting to merge 7-2...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 7-6...success. Attempting to merge 8-1...success. Attempting to merge 8-2...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Attempting to merge 8-6...success. Attempting to merge 9-1...success. Attempting to merge 9-2...success. Attempting to merge 9-3...success. Attempting to merge 9-4...success. Attempting to merge 9-5...success. Attempting to merge 9-6...conflict. Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 73a5eedb087a0f656d730831b8def7943b40f3cf Author: Loú User Date: Thu Apr 7 22:13:23 2005 +0000 c⇒9 Original second commit: commit f7e451a6c9656dda15641a9fbc591a602f158692 Author: Loú User Date: Thu Apr 7 22:13:29 2005 +0000 d⇒6 There was a conflict merging commit 9-6, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback start.out + grep -q 'suggest manual merge of 9-6' autofill.out + git-imerge diagram --commits --frontier --html=imerge3.html 0 5 9 | | | 0 - ********** - c *......... *......... *......... *......... 5 - *......... 6 - *........# | d 0 5 9 | | | 0 - ********** - c *........| *........| *........| *........| 5 - *........+ 6 - *-------+# | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + echo 'merged version' + git add conflict.txt + GIT_EDITOR=cat + git commit imerge 'c-d': manual merge 9-6 # Conflicts: # conflict.txt # # It looks like you may be committing a merge. # If this is not correct, please run # git update-ref -d MERGE_HEAD # and try again. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch imerge/c-d # All conflicts fixed but you are still merging. # # Changes to be committed: # modified: conflict.txt # modified: d.txt # [imerge/c-d 54a03f0] imerge 'c-d': manual merge 9-6 + git-imerge continue --edit Merge has been recorded for merge 9-6. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 9 | | | 0 - ********** - c *......... *......... *......... *......... 5 - *......... 6 - *........* | d 0 5 9 | | | 0 - ********** - c *........| *........| *........| *........| 5 - *........| 6 - *--------* | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=c-d-full + check_tree c-d-full ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-full + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-full^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + test_conflict 1-2 + local conflict=1-2 + TMP=/build/git-imerge-1.2.0/t/tmp/conflicted-1-2 + DESCRIPTION='git-imerge test repository with conflict at 1-2' + init_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-1-2 'git-imerge test repository with conflict at 1-2' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-1-2 + local 'description=git-imerge test repository with conflict at 1-2' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-1-2 'git-imerge test repository with conflict at 1-2' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-1-2 + local 'description=git-imerge test repository with conflict at 1-2' + test -d /build/git-imerge-1.2.0/t/tmp/conflicted-1-2 + mkdir -p /build/git-imerge-1.2.0/t/tmp/conflicted-1-2 + git init /build/git-imerge-1.2.0/t/tmp/conflicted-1-2 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/conflicted-1-2/.git/ + echo 'git-imerge test repository with conflict at 1-2' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-1-2/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-1-2/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/conflicted-1-2 + cd /build/git-imerge-1.2.0/t/tmp/conflicted-1-2 + modify c.txt 0 + filename=c.txt + text=0 + echo 0 + git add c.txt + modify d.txt 0 + filename=d.txt + text=0 + echo 0 + git add d.txt + modify conflict.txt 'original version' + filename=conflict.txt + text='original version' + echo 'original version' + git add conflict.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) d70e04b] m⇒0 3 files changed, 3 insertions(+) create mode 100644 c.txt create mode 100644 conflict.txt create mode 100644 d.txt + git checkout -b c master -- Switched to a new branch 'c' ++ seq 9 + for i in $(seq 9) + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + case $conflict in + modify conflict.txt 'c version' + filename=conflict.txt + text='c version' + echo 'c version' + git add conflict.txt + commit -m $'c\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'c\342\207\2221' [c 2120f40] c⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 9) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + case $conflict in + commit -m $'c\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'c\342\207\2222' [c 90cc7de] c⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 3 + filename=c.txt + text=3 + echo 3 + git add c.txt + case $conflict in + commit -m $'c\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'c\342\207\2223' [c 2046ed2] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + case $conflict in + commit -m $'c\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'c\342\207\2224' [c 8a2cee9] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + case $conflict in + commit -m $'c\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'c\342\207\2225' [c ac16a05] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + case $conflict in + commit -m $'c\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'c\342\207\2226' [c 30dd2ae] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + case $conflict in + commit -m $'c\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'c\342\207\2227' [c 0883eb9] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + case $conflict in + commit -m $'c\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'c\342\207\2228' [c f661c06] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + case $conflict in + commit -m $'c\342\207\2229' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'c\342\207\2229' [c 243e8ed] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' ++ seq 6 + for i in $(seq 6) + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + case $conflict in + commit -m $'d\342\207\2221' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'d\342\207\2221' [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + case $conflict in + modify conflict.txt 'd version' + filename=conflict.txt + text='d version' + echo 'd version' + git add conflict.txt + commit -m $'d\342\207\2222' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'d\342\207\2222' [d 69efde8] d⇒2 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 6) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + case $conflict in + commit -m $'d\342\207\2223' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'d\342\207\2223' [d 3169557] d⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + case $conflict in + commit -m $'d\342\207\2224' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'d\342\207\2224' [d 86c8052] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + case $conflict in + commit -m $'d\342\207\2225' + TIME=1112912008 + GIT_AUTHOR_DATE='@1112912008 +0000' + GIT_COMMITTER_DATE='@1112912008 +0000' + git commit -m $'d\342\207\2225' [d 1700773] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + case $conflict in + commit -m $'d\342\207\2226' + TIME=1112912009 + GIT_AUTHOR_DATE='@1112912009 +0000' + GIT_COMMITTER_DATE='@1112912009 +0000' + git commit -m $'d\342\207\2226' [d df2e493] d⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge autofill + tee autofill.out Attempting automerge of 9-6...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-4...failure. Attempting automerge of 1-3...failure. Attempting automerge of 1-2...failure. Attempting automerge of 9-1...success. Autofilling 1-1...success. Autofilling 2-1...success. Autofilling 3-1...success. Autofilling 4-1...success. Autofilling 5-1...success. Autofilling 6-1...success. Autofilling 7-1...success. Autofilling 8-1...success. Autofilling 9-1...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:10,0:2]. Attempting automerge of 9-6...failure. Attempting automerge of 1-2...failure. HEAD is now at 243e8ed c⇒9 Conflict; suggest manual merge of 1-2 + grep -q Traceback autofill.out + grep -q 'suggest manual merge of 1-2' autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *......... *#???????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *--------+ *#???????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2120f40dc39d28052a5279b645124e8ed7e5de73 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 c⇒1 Original second commit: commit 69efde8f66d581a765a3909ffacb9f895f95c345 Author: Loú User Date: Thu Apr 7 22:13:25 2005 +0000 d⇒2 There was a conflict merging commit 1-2, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo 'merged version' + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d 4157ee0] imerge 'c-d': manual merge 1-2 Merge has been recorded for merge 1-2. Attempting automerge of 1-6...success. Autofilling 1-3...success. Autofilling 1-4...success. Autofilling 1-5...success. Autofilling 1-6...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:2,2:7]. Attempting automerge of 9-6...success. Autofilling 2-6...success. Autofilling 3-6...success. Autofilling 4-6...success. Autofilling 5-6...success. Autofilling 6-6...success. Autofilling 7-6...success. Autofilling 8-6...success. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Autofilling 9-5...success. Autofilling 9-6 (first way)...success. Autofilling 9-6 (second way)...success. The two ways of autofilling 9-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[1:10,1:7]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge2.html 0 5 9 | | | 0 - ********** - c *......... **???????. *.???????. *.???????. 5 - *.???????. 6 - *......... | d 0 5 9 | | | 0 - ********** - c *........| **???????| *.???????| *.???????| 5 - *.???????| 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=c-d-merge Merge d into c (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:32:14 2024 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 7770323] Merge d into c (using imerge) Date: Mon May 20 10:32:14 2024 +0000 + check_tree c-d-merge ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-merge + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-merge^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history2 + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history2^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge remove + git checkout c Switched to branch 'c' + git-imerge start --goal=full --first-parent --name=c-d d + tee start.out Attempting to merge 1-1...success. Attempting to merge 1-2...conflict. Attempting to merge 2-1...success. Attempting to merge 3-1...success. Attempting to merge 4-1...success. Attempting to merge 5-1...success. Attempting to merge 6-1...success. Attempting to merge 7-1...success. Attempting to merge 8-1...success. Attempting to merge 9-1...success. Previous HEAD position was e32e3b7 imerge 'c-d': automatic merge 9-1 Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2120f40dc39d28052a5279b645124e8ed7e5de73 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 c⇒1 Original second commit: commit 69efde8f66d581a765a3909ffacb9f895f95c345 Author: Loú User Date: Thu Apr 7 22:13:25 2005 +0000 d⇒2 There was a conflict merging commit 1-2, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback start.out + grep -q 'suggest manual merge of 1-2' autofill.out + git-imerge diagram --commits --frontier --html=imerge3.html 0 5 9 | | | 0 - ********** - c *......... *#???????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *--------+ *#???????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + echo 'merged version' + git add conflict.txt + GIT_EDITOR=cat + git commit imerge 'c-d': manual merge 1-2 # Conflicts: # conflict.txt # # It looks like you may be committing a merge. # If this is not correct, please run # git update-ref -d MERGE_HEAD # and try again. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch imerge/c-d # All conflicts fixed but you are still merging. # # Changes to be committed: # modified: conflict.txt # modified: d.txt # [imerge/c-d 9c1d73c] imerge 'c-d': manual merge 1-2 + git-imerge continue --edit Merge has been recorded for merge 1-2. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 1-6...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 2-6...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 3-6...success. Attempting to merge 4-2...success. Attempting to merge 4-3...success. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 4-6...success. Attempting to merge 5-2...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 5-6...success. Attempting to merge 6-2...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 6-6...success. Attempting to merge 7-2...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 7-6...success. Attempting to merge 8-2...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Attempting to merge 8-6...success. Attempting to merge 9-2...success. Attempting to merge 9-3...success. Attempting to merge 9-4...success. Attempting to merge 9-5...success. Attempting to merge 9-6...success. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 9 | | | 0 - ********** - c *......... **........ *......... *......... 5 - *......... 6 - *......... | d 0 5 9 | | | 0 - ********** - c *........| **.......| *........| *........| 5 - *........| 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=c-d-full + check_tree c-d-full ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-full + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-full^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + test_conflict 9-5 + local conflict=9-5 + TMP=/build/git-imerge-1.2.0/t/tmp/conflicted-9-5 + DESCRIPTION='git-imerge test repository with conflict at 9-5' + init_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-9-5 'git-imerge test repository with conflict at 9-5' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-9-5 + local 'description=git-imerge test repository with conflict at 9-5' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-9-5 'git-imerge test repository with conflict at 9-5' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-9-5 + local 'description=git-imerge test repository with conflict at 9-5' + test -d /build/git-imerge-1.2.0/t/tmp/conflicted-9-5 + mkdir -p /build/git-imerge-1.2.0/t/tmp/conflicted-9-5 + git init /build/git-imerge-1.2.0/t/tmp/conflicted-9-5 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/conflicted-9-5/.git/ + echo 'git-imerge test repository with conflict at 9-5' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-9-5/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-9-5/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/conflicted-9-5 + cd /build/git-imerge-1.2.0/t/tmp/conflicted-9-5 + modify c.txt 0 + filename=c.txt + text=0 + echo 0 + git add c.txt + modify d.txt 0 + filename=d.txt + text=0 + echo 0 + git add d.txt + modify conflict.txt 'original version' + filename=conflict.txt + text='original version' + echo 'original version' + git add conflict.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) d70e04b] m⇒0 3 files changed, 3 insertions(+) create mode 100644 c.txt create mode 100644 conflict.txt create mode 100644 d.txt + git checkout -b c master -- Switched to a new branch 'c' ++ seq 9 + for i in $(seq 9) + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + case $conflict in + commit -m $'c\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'c\342\207\2221' [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + case $conflict in + commit -m $'c\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'c\342\207\2222' [c 7c431f2] c⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 3 + filename=c.txt + text=3 + echo 3 + git add c.txt + case $conflict in + commit -m $'c\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'c\342\207\2223' [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + case $conflict in + commit -m $'c\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'c\342\207\2224' [c ed9122f] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + case $conflict in + commit -m $'c\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'c\342\207\2225' [c 1d3bf09] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + case $conflict in + commit -m $'c\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'c\342\207\2226' [c f999ecd] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + case $conflict in + commit -m $'c\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'c\342\207\2227' [c 7050a8a] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + case $conflict in + commit -m $'c\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'c\342\207\2228' [c 9732e77] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + case $conflict in + modify conflict.txt 'c version' + filename=conflict.txt + text='c version' + echo 'c version' + git add conflict.txt + commit -m $'c\342\207\2229' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'c\342\207\2229' [c 73a5eed] c⇒9 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout -b d master -- Switched to a new branch 'd' ++ seq 6 + for i in $(seq 6) + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + case $conflict in + commit -m $'d\342\207\2221' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'d\342\207\2221' [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + case $conflict in + commit -m $'d\342\207\2222' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'d\342\207\2222' [d 93e27e6] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + case $conflict in + commit -m $'d\342\207\2223' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'d\342\207\2223' [d 133f385] d⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + case $conflict in + commit -m $'d\342\207\2224' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'d\342\207\2224' [d 586472a] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + case $conflict in + modify conflict.txt 'd version' + filename=conflict.txt + text='d version' + echo 'd version' + git add conflict.txt + commit -m $'d\342\207\2225' + TIME=1112912008 + GIT_AUTHOR_DATE='@1112912008 +0000' + GIT_COMMITTER_DATE='@1112912008 +0000' + git commit -m $'d\342\207\2225' [d 0a6f956] d⇒5 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 6) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + case $conflict in + commit -m $'d\342\207\2226' + TIME=1112912009 + GIT_AUTHOR_DATE='@1112912009 +0000' + GIT_COMMITTER_DATE='@1112912009 +0000' + git commit -m $'d\342\207\2226' [d bfb30f0] d⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge autofill + tee autofill.out Attempting automerge of 9-6...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-4...success. Attempting automerge of 1-6...success. Attempting automerge of 9-6...failure. Attempting automerge of 5-6...success. Attempting automerge of 7-6...success. Attempting automerge of 8-6...success. Attempting automerge of 9-1...success. Attempting automerge of 9-4...success. Attempting automerge of 9-5...failure. Autofilling 1-6...success. Autofilling 2-6...success. Autofilling 3-6...success. Autofilling 4-6...success. Autofilling 5-6...success. Autofilling 6-6...success. Autofilling 7-6...success. Autofilling 8-1...success. Autofilling 8-2...success. Autofilling 8-3...success. Autofilling 8-4...success. Autofilling 8-5...success. Autofilling 8-6 (first way)...success. Autofilling 8-6 (second way)...success. The two ways of autofilling 8-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:9,0:7]. Autofilling 9-1...success. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[8:10,0:5]. Attempting automerge of 9-6...failure. Attempting automerge of 9-5...failure. HEAD is now at 73a5eed c⇒9 Conflict; suggest manual merge of 9-5 + grep -q Traceback autofill.out + grep -q 'suggest manual merge of 9-5' autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *???????.. *???????.. *???????.. *???????.. 5 - *???????.# 6 - *........? | d 0 5 9 | | | 0 - ********** - c *???????.| *???????.| *???????.| *???????.+ 5 - *???????|# 6 - *-------+? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 73a5eedb087a0f656d730831b8def7943b40f3cf Author: Loú User Date: Thu Apr 7 22:13:23 2005 +0000 c⇒9 Original second commit: commit 0a6f956bd00cebb5567e80d6ee247a51128ad36f Author: Loú User Date: Thu Apr 7 22:13:28 2005 +0000 d⇒5 There was a conflict merging commit 9-5, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo 'merged version' + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d b5e9f1e] imerge 'c-d': manual merge 9-5 Merge has been recorded for merge 9-5. Attempting automerge of 9-6...success. Autofilling 9-6...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[8:10,5:7]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge2.html 0 5 9 | | | 0 - ********** - c *???????.. *???????.. *???????.. *???????.. 5 - *???????.* 6 - *......... | d 0 5 9 | | | 0 - ********** - c *???????.| *???????.| *???????.| *???????.| 5 - *???????.* 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=c-d-merge Merge d into c (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:32:25 2024 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 85c5bfc] Merge d into c (using imerge) Date: Mon May 20 10:32:25 2024 +0000 + check_tree c-d-merge ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-merge + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-merge^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history2 + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history2^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge remove + git checkout c Switched to branch 'c' + tee start.out + git-imerge start --goal=full --first-parent --name=c-d d Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 1-6...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 2-6...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 3-6...success. Attempting to merge 4-1...success. Attempting to merge 4-2...success. Attempting to merge 4-3...success. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 4-6...success. Attempting to merge 5-1...success. Attempting to merge 5-2...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 5-6...success. Attempting to merge 6-1...success. Attempting to merge 6-2...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 6-6...success. Attempting to merge 7-1...success. Attempting to merge 7-2...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 7-6...success. Attempting to merge 8-1...success. Attempting to merge 8-2...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Attempting to merge 8-6...success. Attempting to merge 9-1...success. Attempting to merge 9-2...success. Attempting to merge 9-3...success. Attempting to merge 9-4...success. Attempting to merge 9-5...conflict. Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 73a5eedb087a0f656d730831b8def7943b40f3cf Author: Loú User Date: Thu Apr 7 22:13:23 2005 +0000 c⇒9 Original second commit: commit 0a6f956bd00cebb5567e80d6ee247a51128ad36f Author: Loú User Date: Thu Apr 7 22:13:28 2005 +0000 d⇒5 There was a conflict merging commit 9-5, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback start.out + grep -q 'suggest manual merge of 9-5' autofill.out + git-imerge diagram --commits --frontier --html=imerge3.html 0 5 9 | | | 0 - ********** - c *......... *......... *......... *......... 5 - *........# 6 - *........? | d 0 5 9 | | | 0 - ********** - c *........| *........| *........| *........+ 5 - *.......|# 6 - *-------+? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + echo 'merged version' + git add conflict.txt + GIT_EDITOR=cat + git commit imerge 'c-d': manual merge 9-5 # Conflicts: # conflict.txt # # It looks like you may be committing a merge. # If this is not correct, please run # git update-ref -d MERGE_HEAD # and try again. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch imerge/c-d # All conflicts fixed but you are still merging. # # Changes to be committed: # modified: conflict.txt # modified: d.txt # [imerge/c-d 26f85d0] imerge 'c-d': manual merge 9-5 + git-imerge continue --edit Merge has been recorded for merge 9-5. Attempting to merge 9-6...success. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 9 | | | 0 - ********** - c *......... *......... *......... *......... 5 - *........* 6 - *......... | d 0 5 9 | | | 0 - ********** - c *........| *........| *........| *........| 5 - *........* 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=c-d-full + check_tree c-d-full ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-full + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-full^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + test_conflict 5-1 + local conflict=5-1 + TMP=/build/git-imerge-1.2.0/t/tmp/conflicted-5-1 + DESCRIPTION='git-imerge test repository with conflict at 5-1' + init_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-5-1 'git-imerge test repository with conflict at 5-1' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-5-1 + local 'description=git-imerge test repository with conflict at 5-1' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-5-1 'git-imerge test repository with conflict at 5-1' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-5-1 + local 'description=git-imerge test repository with conflict at 5-1' + test -d /build/git-imerge-1.2.0/t/tmp/conflicted-5-1 + mkdir -p /build/git-imerge-1.2.0/t/tmp/conflicted-5-1 + git init /build/git-imerge-1.2.0/t/tmp/conflicted-5-1 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/conflicted-5-1/.git/ + echo 'git-imerge test repository with conflict at 5-1' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-5-1/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-5-1/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/conflicted-5-1 + cd /build/git-imerge-1.2.0/t/tmp/conflicted-5-1 + modify c.txt 0 + filename=c.txt + text=0 + echo 0 + git add c.txt + modify d.txt 0 + filename=d.txt + text=0 + echo 0 + git add d.txt + modify conflict.txt 'original version' + filename=conflict.txt + text='original version' + echo 'original version' + git add conflict.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) d70e04b] m⇒0 3 files changed, 3 insertions(+) create mode 100644 c.txt create mode 100644 conflict.txt create mode 100644 d.txt + git checkout -b c master -- Switched to a new branch 'c' ++ seq 9 + for i in $(seq 9) + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + case $conflict in + commit -m $'c\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'c\342\207\2221' [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + case $conflict in + commit -m $'c\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'c\342\207\2222' [c 7c431f2] c⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 3 + filename=c.txt + text=3 + echo 3 + git add c.txt + case $conflict in + commit -m $'c\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'c\342\207\2223' [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + case $conflict in + commit -m $'c\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'c\342\207\2224' [c ed9122f] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + case $conflict in + modify conflict.txt 'c version' + filename=conflict.txt + text='c version' + echo 'c version' + git add conflict.txt + commit -m $'c\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'c\342\207\2225' [c 7e31f25] c⇒5 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 9) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + case $conflict in + commit -m $'c\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'c\342\207\2226' [c df3c57a] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + case $conflict in + commit -m $'c\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'c\342\207\2227' [c ea32d81] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + case $conflict in + commit -m $'c\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'c\342\207\2228' [c 44473d6] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + case $conflict in + commit -m $'c\342\207\2229' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'c\342\207\2229' [c d8d80cf] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' ++ seq 6 + for i in $(seq 6) + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + case $conflict in + modify conflict.txt 'd version' + filename=conflict.txt + text='d version' + echo 'd version' + git add conflict.txt + commit -m $'d\342\207\2221' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'d\342\207\2221' [d ac0427a] d⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 6) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + case $conflict in + commit -m $'d\342\207\2222' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'d\342\207\2222' [d 43c38c0] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + case $conflict in + commit -m $'d\342\207\2223' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'d\342\207\2223' [d 0260058] d⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + case $conflict in + commit -m $'d\342\207\2224' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'d\342\207\2224' [d 40fef44] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + case $conflict in + commit -m $'d\342\207\2225' + TIME=1112912008 + GIT_AUTHOR_DATE='@1112912008 +0000' + GIT_COMMITTER_DATE='@1112912008 +0000' + git commit -m $'d\342\207\2225' [d b080a65] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + case $conflict in + commit -m $'d\342\207\2226' + TIME=1112912009 + GIT_AUTHOR_DATE='@1112912009 +0000' + GIT_COMMITTER_DATE='@1112912009 +0000' + git commit -m $'d\342\207\2226' [d 200ce5c] d⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + tee autofill.out + git-imerge autofill Attempting automerge of 9-6...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-4...success. Attempting automerge of 1-6...success. Attempting automerge of 9-6...failure. Attempting automerge of 5-6...failure. Attempting automerge of 3-6...success. Attempting automerge of 4-6...success. Attempting automerge of 5-1...failure. Autofilling 1-6...success. Autofilling 2-6...success. Autofilling 3-6...success. Autofilling 4-1...success. Autofilling 4-2...success. Autofilling 4-3...success. Autofilling 4-4...success. Autofilling 4-5...success. Autofilling 4-6 (first way)...success. Autofilling 4-6 (second way)...success. The two ways of autofilling 4-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:5,0:7]. Attempting automerge of 9-6...failure. Attempting automerge of 5-1...failure. HEAD is now at d8d80cf c⇒9 Conflict; suggest manual merge of 5-1 + grep -q Traceback autofill.out + grep -q 'suggest manual merge of 5-1' autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *???.#???? *???.????? *???.????? *???.????? 5 - *???.????? 6 - *....????? | d 0 5 9 | | | 0 - ********** - c *???|#???? *???|????? *???|????? *???|????? 5 - *???|????? 6 - *---+????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 7e31f254c318decc434628f023dac0703f3d2b9e Author: Loú User Date: Thu Apr 7 22:13:19 2005 +0000 c⇒5 Original second commit: commit ac0427a285b64f2815ebd6eb83880f309600d0c7 Author: Loú User Date: Thu Apr 7 22:13:24 2005 +0000 d⇒1 There was a conflict merging commit 5-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo 'merged version' + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d a90a1da] imerge 'c-d': manual merge 5-1 Merge has been recorded for merge 5-1. Attempting automerge of 5-6...success. Autofilling 5-2...success. Autofilling 5-3...success. Autofilling 5-4...success. Autofilling 5-5...success. Autofilling 5-6...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[4:6,1:7]. Attempting automerge of 9-6...success. Autofilling 6-6...success. Autofilling 7-6...success. Autofilling 8-6...success. Autofilling 9-1...success. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Autofilling 9-5...success. Autofilling 9-6 (first way)...success. Autofilling 9-6 (second way)...success. The two ways of autofilling 9-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[5:10,0:7]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge2.html 0 5 9 | | | 0 - ********** - c *???.*???. *???..???. *???..???. *???..???. 5 - *???..???. 6 - *......... | d 0 5 9 | | | 0 - ********** - c *???.*???| *???..???| *???..???| *???..???| 5 - *???..???| 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=c-d-merge Merge d into c (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:32:37 2024 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge d5ae6c8] Merge d into c (using imerge) Date: Mon May 20 10:32:37 2024 +0000 + check_tree c-d-merge ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-merge + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-merge^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history2 + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history2^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge remove + git checkout c Switched to branch 'c' + tee start.out + git-imerge start --goal=full --first-parent --name=c-d d Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 1-6...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 2-6...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 3-6...success. Attempting to merge 4-1...success. Attempting to merge 4-2...success. Attempting to merge 4-3...success. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 4-6...success. Attempting to merge 5-1...conflict. Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 7e31f254c318decc434628f023dac0703f3d2b9e Author: Loú User Date: Thu Apr 7 22:13:19 2005 +0000 c⇒5 Original second commit: commit ac0427a285b64f2815ebd6eb83880f309600d0c7 Author: Loú User Date: Thu Apr 7 22:13:24 2005 +0000 d⇒1 There was a conflict merging commit 5-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback start.out + grep -q 'suggest manual merge of 5-1' autofill.out + git-imerge diagram --commits --frontier --html=imerge3.html 0 5 9 | | | 0 - ********** - c *....#???? *....????? *....????? *....????? 5 - *....????? 6 - *....????? | d 0 5 9 | | | 0 - ********** - c *...|#???? *...|????? *...|????? *...|????? 5 - *...|????? 6 - *---+????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + echo 'merged version' + git add conflict.txt + GIT_EDITOR=cat + git commit imerge 'c-d': manual merge 5-1 # Conflicts: # conflict.txt # # It looks like you may be committing a merge. # If this is not correct, please run # git update-ref -d MERGE_HEAD # and try again. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch imerge/c-d # All conflicts fixed but you are still merging. # # Changes to be committed: # modified: conflict.txt # modified: d.txt # [imerge/c-d e541f5a] imerge 'c-d': manual merge 5-1 + git-imerge continue --edit Merge has been recorded for merge 5-1. Attempting to merge 5-2...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 5-6...success. Attempting to merge 6-1...success. Attempting to merge 6-2...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 6-6...success. Attempting to merge 7-1...success. Attempting to merge 7-2...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 7-6...success. Attempting to merge 8-1...success. Attempting to merge 8-2...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Attempting to merge 8-6...success. Attempting to merge 9-1...success. Attempting to merge 9-2...success. Attempting to merge 9-3...success. Attempting to merge 9-4...success. Attempting to merge 9-5...success. Attempting to merge 9-6...success. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 9 | | | 0 - ********** - c *....*.... *......... *......... *......... 5 - *......... 6 - *......... | d 0 5 9 | | | 0 - ********** - c *....*...| *........| *........| *........| 5 - *........| 6 - *--------+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=c-d-full + check_tree c-d-full ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-full + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-full^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + test_conflict 6-6 + local conflict=6-6 + TMP=/build/git-imerge-1.2.0/t/tmp/conflicted-6-6 + DESCRIPTION='git-imerge test repository with conflict at 6-6' + init_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-6-6 'git-imerge test repository with conflict at 6-6' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-6-6 + local 'description=git-imerge test repository with conflict at 6-6' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/conflicted-6-6 'git-imerge test repository with conflict at 6-6' + local path=/build/git-imerge-1.2.0/t/tmp/conflicted-6-6 + local 'description=git-imerge test repository with conflict at 6-6' + test -d /build/git-imerge-1.2.0/t/tmp/conflicted-6-6 + mkdir -p /build/git-imerge-1.2.0/t/tmp/conflicted-6-6 + git init /build/git-imerge-1.2.0/t/tmp/conflicted-6-6 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/conflicted-6-6/.git/ + echo 'git-imerge test repository with conflict at 6-6' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-6-6/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/conflicted-6-6/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/conflicted-6-6 + cd /build/git-imerge-1.2.0/t/tmp/conflicted-6-6 + modify c.txt 0 + filename=c.txt + text=0 + echo 0 + git add c.txt + modify d.txt 0 + filename=d.txt + text=0 + echo 0 + git add d.txt + modify conflict.txt 'original version' + filename=conflict.txt + text='original version' + echo 'original version' + git add conflict.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) d70e04b] m⇒0 3 files changed, 3 insertions(+) create mode 100644 c.txt create mode 100644 conflict.txt create mode 100644 d.txt + git checkout -b c master -- Switched to a new branch 'c' ++ seq 9 + for i in $(seq 9) + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + case $conflict in + commit -m $'c\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'c\342\207\2221' [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + case $conflict in + commit -m $'c\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'c\342\207\2222' [c 7c431f2] c⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 3 + filename=c.txt + text=3 + echo 3 + git add c.txt + case $conflict in + commit -m $'c\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'c\342\207\2223' [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + case $conflict in + commit -m $'c\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'c\342\207\2224' [c ed9122f] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + case $conflict in + commit -m $'c\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'c\342\207\2225' [c 1d3bf09] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + case $conflict in + modify conflict.txt 'c version' + filename=conflict.txt + text='c version' + echo 'c version' + git add conflict.txt + commit -m $'c\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'c\342\207\2226' [c fe4fed8] c⇒6 2 files changed, 2 insertions(+), 2 deletions(-) + for i in $(seq 9) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + case $conflict in + commit -m $'c\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'c\342\207\2227' [c ec255ea] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + case $conflict in + commit -m $'c\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'c\342\207\2228' [c 7459ac3] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 9) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + case $conflict in + commit -m $'c\342\207\2229' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'c\342\207\2229' [c 70408c8] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' ++ seq 6 + for i in $(seq 6) + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + case $conflict in + commit -m $'d\342\207\2221' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'d\342\207\2221' [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + case $conflict in + commit -m $'d\342\207\2222' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'d\342\207\2222' [d 93e27e6] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + case $conflict in + commit -m $'d\342\207\2223' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'d\342\207\2223' [d 133f385] d⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + case $conflict in + commit -m $'d\342\207\2224' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'d\342\207\2224' [d 586472a] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + case $conflict in + commit -m $'d\342\207\2225' + TIME=1112912008 + GIT_AUTHOR_DATE='@1112912008 +0000' + GIT_COMMITTER_DATE='@1112912008 +0000' + git commit -m $'d\342\207\2225' [d 9522207] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 6) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + case $conflict in + modify conflict.txt 'd version' + filename=conflict.txt + text='d version' + echo 'd version' + git add conflict.txt + commit -m $'d\342\207\2226' + TIME=1112912009 + GIT_AUTHOR_DATE='@1112912009 +0000' + GIT_COMMITTER_DATE='@1112912009 +0000' + git commit -m $'d\342\207\2226' [d f7e451a] d⇒6 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge autofill + tee autofill.out Attempting automerge of 9-6...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-4...success. Attempting automerge of 1-6...success. Attempting automerge of 9-6...failure. Attempting automerge of 5-6...success. Attempting automerge of 7-6...failure. Attempting automerge of 6-6...failure. Attempting automerge of 6-1...success. Attempting automerge of 6-4...success. Attempting automerge of 6-5...success. Attempting automerge of 9-5...success. Autofilling 1-6...success. Autofilling 2-6...success. Autofilling 3-6...success. Autofilling 4-6...success. Autofilling 5-1...success. Autofilling 5-2...success. Autofilling 5-3...success. Autofilling 5-4...success. Autofilling 5-5...success. Autofilling 5-6 (first way)...success. Autofilling 5-6 (second way)...success. The two ways of autofilling 5-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:6,0:7]. Autofilling 6-5...success. Autofilling 7-5...success. Autofilling 8-5...success. Autofilling 9-1...success. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Autofilling 9-5 (first way)...success. Autofilling 9-5 (second way)...success. The two ways of autofilling 9-5 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[5:10,0:6]. Attempting automerge of 9-6...failure. Attempting automerge of 6-6...failure. HEAD is now at 70408c8 c⇒9 Conflict; suggest manual merge of 6-6 + grep -q Traceback autofill.out + grep -q 'suggest manual merge of 6-6' autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *????.???. *????.???. *????.???. *????.???. 5 - *????..... 6 - *.....#??? | d 0 5 9 | | | 0 - ********** - c *????.???| *????.???| *????.???| *????.???| 5 - *????.---+ 6 - *----+#??? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit fe4fed83ab13bbc7e9ee5ef0a814b170b8194854 Author: Loú User Date: Thu Apr 7 22:13:20 2005 +0000 c⇒6 Original second commit: commit f7e451a6c9656dda15641a9fbc591a602f158692 Author: Loú User Date: Thu Apr 7 22:13:29 2005 +0000 d⇒6 There was a conflict merging commit 6-6, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo 'merged version' + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d f03c59d] imerge 'c-d': manual merge 6-6 Merge has been recorded for merge 6-6. Attempting automerge of 9-6...success. Autofilling 7-6...success. Autofilling 8-6...success. Autofilling 9-6...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[6:10,5:7]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge2.html 0 5 9 | | | 0 - ********** - c *????.???. *????.???. *????.???. *????.???. 5 - *????..... 6 - *.....*... | d 0 5 9 | | | 0 - ********** - c *????.???| *????.???| *????.???| *????.???| 5 - *????....| 6 - *-----*--+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=c-d-merge Merge d into c (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:32:49 2024 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge bfba647] Merge d into c (using imerge) Date: Mon May 20 10:32:49 2024 +0000 + check_tree c-d-merge ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-merge + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-merge^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-rebase-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history2 + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-border-with-history2^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge remove + git checkout c Switched to branch 'c' + git-imerge start --goal=full --first-parent --name=c-d d + tee start.out Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 1-6...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 2-6...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 3-6...success. Attempting to merge 4-1...success. Attempting to merge 4-2...success. Attempting to merge 4-3...success. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 4-6...success. Attempting to merge 5-1...success. Attempting to merge 5-2...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 5-6...success. Attempting to merge 6-1...success. Attempting to merge 6-2...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 6-6...conflict. Attempting to merge 7-1...success. Attempting to merge 7-2...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 8-1...success. Attempting to merge 8-2...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Attempting to merge 9-1...success. Attempting to merge 9-2...success. Attempting to merge 9-3...success. Attempting to merge 9-4...success. Attempting to merge 9-5...success. Previous HEAD position was 8277251 imerge 'c-d': automatic merge 9-5 Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit fe4fed83ab13bbc7e9ee5ef0a814b170b8194854 Author: Loú User Date: Thu Apr 7 22:13:20 2005 +0000 c⇒6 Original second commit: commit f7e451a6c9656dda15641a9fbc591a602f158692 Author: Loú User Date: Thu Apr 7 22:13:29 2005 +0000 d⇒6 There was a conflict merging commit 6-6, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback start.out + grep -q 'suggest manual merge of 6-6' autofill.out + git-imerge diagram --commits --frontier --html=imerge3.html 0 5 9 | | | 0 - ********** - c *......... *......... *......... *......... 5 - *......... 6 - *.....#??? | d 0 5 9 | | | 0 - ********** - c *........| *........| *........| *........| 5 - *.....---+ 6 - *----+#??? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + echo 'merged version' + git add conflict.txt + GIT_EDITOR=cat + git commit imerge 'c-d': manual merge 6-6 # Conflicts: # conflict.txt # # It looks like you may be committing a merge. # If this is not correct, please run # git update-ref -d MERGE_HEAD # and try again. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch imerge/c-d # All conflicts fixed but you are still merging. # # Changes to be committed: # modified: conflict.txt # modified: d.txt # [imerge/c-d 1c6fe1d] imerge 'c-d': manual merge 6-6 + git-imerge continue --edit Merge has been recorded for merge 6-6. Attempting to merge 7-6...success. Attempting to merge 8-6...success. Attempting to merge 9-6...success. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 9 | | | 0 - ********** - c *......... *......... *......... *......... 5 - *......... 6 - *.....*... | d 0 5 9 | | | 0 - ********** - c *........| *........| *........| *........| 5 - *........| 6 - *-----*--+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=c-d-full + check_tree c-d-full ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-full + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 ++ git rev-parse 'c-d-full^{tree}' + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 py311 run-test: commands[2] | /bin/sh t/test-really-conflicted ++++ dirname t/test-really-conflicted +++ cd t +++ pwd ++ dirname /build/git-imerge-1.2.0/t + BASE=/build/git-imerge-1.2.0 + . /build/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + TMP=/build/git-imerge-1.2.0/t/tmp/really-conflicted + DESCRIPTION='git-imerge test repository with multiple conflicts' + init_test_repo /build/git-imerge-1.2.0/t/tmp/really-conflicted 'git-imerge test repository with multiple conflicts' + local path=/build/git-imerge-1.2.0/t/tmp/really-conflicted + local 'description=git-imerge test repository with multiple conflicts' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/really-conflicted 'git-imerge test repository with multiple conflicts' + local path=/build/git-imerge-1.2.0/t/tmp/really-conflicted + local 'description=git-imerge test repository with multiple conflicts' + test -d /build/git-imerge-1.2.0/t/tmp/really-conflicted + mkdir -p /build/git-imerge-1.2.0/t/tmp/really-conflicted + git init /build/git-imerge-1.2.0/t/tmp/really-conflicted hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/really-conflicted/.git/ + echo 'git-imerge test repository with multiple conflicts' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/really-conflicted/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/really-conflicted/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/really-conflicted + cd /build/git-imerge-1.2.0/t/tmp/really-conflicted + modify c.txt 0 + filename=c.txt + text=0 + echo 0 + git add c.txt + modify d.txt 0 + filename=d.txt + text=0 + echo 0 + git add d.txt ++ seq 0 7 + for i in $(seq 0 7) + modify conflict0.txt 'original version' + filename=conflict0.txt + text='original version' + echo 'original version' + git add conflict0.txt + for i in $(seq 0 7) + modify conflict1.txt 'original version' + filename=conflict1.txt + text='original version' + echo 'original version' + git add conflict1.txt + for i in $(seq 0 7) + modify conflict2.txt 'original version' + filename=conflict2.txt + text='original version' + echo 'original version' + git add conflict2.txt + for i in $(seq 0 7) + modify conflict3.txt 'original version' + filename=conflict3.txt + text='original version' + echo 'original version' + git add conflict3.txt + for i in $(seq 0 7) + modify conflict4.txt 'original version' + filename=conflict4.txt + text='original version' + echo 'original version' + git add conflict4.txt + for i in $(seq 0 7) + modify conflict5.txt 'original version' + filename=conflict5.txt + text='original version' + echo 'original version' + git add conflict5.txt + for i in $(seq 0 7) + modify conflict6.txt 'original version' + filename=conflict6.txt + text='original version' + echo 'original version' + git add conflict6.txt + for i in $(seq 0 7) + modify conflict7.txt 'original version' + filename=conflict7.txt + text='original version' + echo 'original version' + git add conflict7.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) 8e21fbd] m⇒0 10 files changed, 10 insertions(+) create mode 100644 c.txt create mode 100644 conflict0.txt create mode 100644 conflict1.txt create mode 100644 conflict2.txt create mode 100644 conflict3.txt create mode 100644 conflict4.txt create mode 100644 conflict5.txt create mode 100644 conflict6.txt create mode 100644 conflict7.txt create mode 100644 d.txt + git checkout -b c master -- Switched to a new branch 'c' + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + modify conflict0.txt 'c version' + filename=conflict0.txt + text='c version' + echo 'c version' + git add conflict0.txt + modify conflict4.txt 'c version' + filename=conflict4.txt + text='c version' + echo 'c version' + git add conflict4.txt + commit -m $'c\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'c\342\207\2221' [c 4e6007a] c⇒1 3 files changed, 3 insertions(+), 3 deletions(-) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + commit -m $'c\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'c\342\207\2222' [c c2b7c49] c⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 3 + filename=c.txt + text=3 + echo 3 + git add c.txt + commit -m $'c\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'c\342\207\2223' [c 42ad55a] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + modify conflict1.txt 'c version' + filename=conflict1.txt + text='c version' + echo 'c version' + git add conflict1.txt + commit -m $'c\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'c\342\207\2224' [c a891793] c⇒4 2 files changed, 2 insertions(+), 2 deletions(-) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + modify conflict3.txt 'c version' + filename=conflict3.txt + text='c version' + echo 'c version' + git add conflict3.txt + modify conflict6.txt 'c version' + filename=conflict6.txt + text='c version' + echo 'c version' + git add conflict6.txt + commit -m $'c\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'c\342\207\2225' [c c21441d] c⇒5 3 files changed, 3 insertions(+), 3 deletions(-) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + modify conflict5.txt 'c version' + filename=conflict5.txt + text='c version' + echo 'c version' + git add conflict5.txt + commit -m $'c\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'c\342\207\2226' [c a797a66] c⇒6 2 files changed, 2 insertions(+), 2 deletions(-) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + modify conflict2.txt 'c version' + filename=conflict2.txt + text='c version' + echo 'c version' + git add conflict2.txt + commit -m $'c\342\207\2227' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m $'c\342\207\2227' [c c0e1537] c⇒7 2 files changed, 2 insertions(+), 2 deletions(-) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + commit -m $'c\342\207\2228' + TIME=1112912002 + GIT_AUTHOR_DATE='@1112912002 +0000' + GIT_COMMITTER_DATE='@1112912002 +0000' + git commit -m $'c\342\207\2228' [c 9f3e7c8] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + modify conflict7.txt 'c version' + filename=conflict7.txt + text='c version' + echo 'c version' + git add conflict7.txt + commit -m $'c\342\207\2229' + TIME=1112912003 + GIT_AUTHOR_DATE='@1112912003 +0000' + GIT_COMMITTER_DATE='@1112912003 +0000' + git commit -m $'c\342\207\2229' [c ccbfccb] c⇒9 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout -b d master -- Switched to a new branch 'd' + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + modify conflict0.txt 'd version' + filename=conflict0.txt + text='d version' + echo 'd version' + git add conflict0.txt + modify conflict6.txt 'd version' + filename=conflict6.txt + text='d version' + echo 'd version' + git add conflict6.txt + commit -m $'d\342\207\2221' + TIME=1112912004 + GIT_AUTHOR_DATE='@1112912004 +0000' + GIT_COMMITTER_DATE='@1112912004 +0000' + git commit -m $'d\342\207\2221' [d 8c3c065] d⇒1 3 files changed, 3 insertions(+), 3 deletions(-) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + modify conflict1.txt 'd version' + filename=conflict1.txt + text='d version' + echo 'd version' + git add conflict1.txt + modify conflict2.txt 'd version' + filename=conflict2.txt + text='d version' + echo 'd version' + git add conflict2.txt + commit -m $'d\342\207\2222' + TIME=1112912005 + GIT_AUTHOR_DATE='@1112912005 +0000' + GIT_COMMITTER_DATE='@1112912005 +0000' + git commit -m $'d\342\207\2222' [d 820b787] d⇒2 3 files changed, 3 insertions(+), 3 deletions(-) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + commit -m $'d\342\207\2223' + TIME=1112912006 + GIT_AUTHOR_DATE='@1112912006 +0000' + GIT_COMMITTER_DATE='@1112912006 +0000' + git commit -m $'d\342\207\2223' [d 821c792] d⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + commit -m $'d\342\207\2224' + TIME=1112912007 + GIT_AUTHOR_DATE='@1112912007 +0000' + GIT_COMMITTER_DATE='@1112912007 +0000' + git commit -m $'d\342\207\2224' [d c2a1456] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + modify conflict3.txt 'd version' + filename=conflict3.txt + text='d version' + echo 'd version' + git add conflict3.txt + commit -m $'d\342\207\2225' + TIME=1112912008 + GIT_AUTHOR_DATE='@1112912008 +0000' + GIT_COMMITTER_DATE='@1112912008 +0000' + git commit -m $'d\342\207\2225' [d c3e3890] d⇒5 2 files changed, 2 insertions(+), 2 deletions(-) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + modify conflict4.txt 'd version' + filename=conflict4.txt + text='d version' + echo 'd version' + git add conflict4.txt + commit -m $'d\342\207\2226' + TIME=1112912009 + GIT_AUTHOR_DATE='@1112912009 +0000' + GIT_COMMITTER_DATE='@1112912009 +0000' + git commit -m $'d\342\207\2226' [d b2f5c5e] d⇒6 2 files changed, 2 insertions(+), 2 deletions(-) + modify d.txt 7 + filename=d.txt + text=7 + echo 7 + git add d.txt + modify conflict5.txt 'd version' + filename=conflict5.txt + text='d version' + echo 'd version' + git add conflict5.txt + commit -m $'d\342\207\2227' + TIME=1112912010 + GIT_AUTHOR_DATE='@1112912010 +0000' + GIT_COMMITTER_DATE='@1112912010 +0000' + git commit -m $'d\342\207\2227' [d 892af56] d⇒7 2 files changed, 2 insertions(+), 2 deletions(-) + modify d.txt 8 + filename=d.txt + text=8 + echo 8 + git add d.txt + modify conflict7.txt 'd version' + filename=conflict7.txt + text='d version' + echo 'd version' + git add conflict7.txt + commit -m $'d\342\207\2228' + TIME=1112912011 + GIT_AUTHOR_DATE='@1112912011 +0000' + GIT_COMMITTER_DATE='@1112912011 +0000' + git commit -m $'d\342\207\2228' [d 67099d0] d⇒8 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge diagram --commits --frontier 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? *????????? *????????? 8 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? *????????? *????????? 8 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + conflict_count=0 + true + tee autofill.out + git-imerge continue --no-edit Attempting automerge of 9-8...failure. Attempting automerge of 1-1...failure. Switched to branch 'imerge/c-d' Auto-merging conflict0.txt CONFLICT (content): Merge conflict in conflict0.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 4e6007a9261b8d70c6c9cb31fdf801cada885a79 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 c⇒1 Original second commit: commit 8c3c06526942b1b7ef891dac2d98b871c0269ebc Author: Loú User Date: Thu Apr 7 22:13:24 2005 +0000 d⇒1 There was a conflict merging commit 1-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback autofill.out + git-imerge diagram --frontier 0 5 9 | | | 0 - ********** - c *#???????? *????????? *????????? *????????? 5 - *????????? *????????? *????????? 8 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging' autofill.out ++ seq 0 7 + for i in $(seq 0 7) + grep -q ==== conflict0.txt + modify conflict0.txt 'merged version' + filename=conflict0.txt + text='merged version' + echo 'merged version' + git add conflict0.txt + conflict_count=1 + for i in $(seq 0 7) + grep -q ==== conflict1.txt + for i in $(seq 0 7) + grep -q ==== conflict2.txt + for i in $(seq 0 7) + grep -q ==== conflict3.txt + for i in $(seq 0 7) + grep -q ==== conflict4.txt + for i in $(seq 0 7) + grep -q ==== conflict5.txt + for i in $(seq 0 7) + grep -q ==== conflict6.txt + for i in $(seq 0 7) + grep -q ==== conflict7.txt + true + tee autofill.out + git-imerge continue --no-edit [imerge/c-d ca3158e] imerge 'c-d': manual merge 1-1 Merge has been recorded for merge 1-1. Attempting automerge of 1-8...failure. Attempting automerge of 1-2...success. Attempting automerge of 1-6...failure. Attempting automerge of 1-4...success. Attempting automerge of 1-5...success. Autofilling 1-2...success. Autofilling 1-3...success. Autofilling 1-4...success. Autofilling 1-5...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:2,1:6]. Attempting automerge of 1-8...failure. Attempting automerge of 1-6...failure. Attempting automerge of 9-5...failure. Attempting automerge of 2-1...success. Attempting automerge of 2-4...success. Attempting automerge of 2-5...success. Attempting automerge of 9-5...failure. Attempting automerge of 6-5...failure. Attempting automerge of 4-5...failure. Attempting automerge of 3-5...success. Attempting automerge of 4-1...success. Attempting automerge of 4-3...failure. Attempting automerge of 4-2...failure. Attempting automerge of 9-1...failure. Attempting automerge of 7-1...failure. Attempting automerge of 6-1...failure. Attempting automerge of 5-1...failure. Autofilling 2-5...success. Autofilling 3-1...success. Autofilling 3-2...success. Autofilling 3-3...success. Autofilling 3-4...success. Autofilling 3-5 (first way)...success. Autofilling 3-5 (second way)...success. The two ways of autofilling 3-5 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[1:4,0:6]. Autofilling 4-1...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[3:5,0:2]. Attempting automerge of 4-5...failure. Attempting automerge of 4-2...failure. Attempting automerge of 9-1...failure. Attempting automerge of 5-1...failure. Previous HEAD position was c21441d c⇒5 Switched to branch 'imerge/c-d' Auto-merging conflict4.txt CONFLICT (content): Merge conflict in conflict4.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 4e6007a9261b8d70c6c9cb31fdf801cada885a79 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 c⇒1 Original second commit: commit b2f5c5e78cd79a99aa1f8f4a9d8054b2d5a484ff Author: Loú User Date: Thu Apr 7 22:13:29 2005 +0000 d⇒6 There was a conflict merging commit 1-6, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback autofill.out + git-imerge diagram --frontier 0 5 9 | | | 0 - ********** - c **?.+#???? *.?|#????? *.?|?????? *.?|?????? 5 - *--+?????? *#???????? *????????? 8 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging' autofill.out ++ seq 0 7 + for i in $(seq 0 7) + grep -q ==== conflict0.txt + for i in $(seq 0 7) + grep -q ==== conflict1.txt + for i in $(seq 0 7) + grep -q ==== conflict2.txt + for i in $(seq 0 7) + grep -q ==== conflict3.txt + for i in $(seq 0 7) + grep -q ==== conflict4.txt + modify conflict4.txt 'merged version' + filename=conflict4.txt + text='merged version' + echo 'merged version' + git add conflict4.txt + conflict_count=2 + for i in $(seq 0 7) + grep -q ==== conflict5.txt + for i in $(seq 0 7) + grep -q ==== conflict6.txt + for i in $(seq 0 7) + grep -q ==== conflict7.txt + true + git-imerge continue --no-edit + tee autofill.out [imerge/c-d c433e7a] imerge 'c-d': manual merge 1-6 Merge has been recorded for merge 1-6. Attempting automerge of 1-8...success. Autofilling 1-7...success. Autofilling 1-8...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:2,6:9]. Attempting automerge of 3-8...success. Autofilling 2-8...success. Autofilling 3-6...success. Autofilling 3-7...success. Autofilling 3-8 (first way)...success. Autofilling 3-8 (second way)...success. The two ways of autofilling 3-8 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[1:4,5:9]. Warning: you are leaving 1 commit behind, not connected to any of your branches: ccde499 imerge 'c-d': automatic merge 3-8 If you want to keep it by creating a new branch, this may be a good time to do so with: git branch ccde499 Switched to branch 'imerge/c-d' Auto-merging conflict1.txt CONFLICT (content): Merge conflict in conflict1.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit a89179336bb40a4ca90903425239a9ef3ce659bd Author: Loú User Date: Thu Apr 7 22:13:18 2005 +0000 c⇒4 Original second commit: commit 820b787e86e22612af7a061db842dc95e9f1d49f Author: Loú User Date: Thu Apr 7 22:13:25 2005 +0000 d⇒2 There was a conflict merging commit 4-2, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback autofill.out + git-imerge diagram --frontier 0 5 9 | | | 0 - ********** - c **?.+#???? *.?|#????? *.?|?????? *.?|?????? 5 - *..|?????? **?|?????? *.?|?????? 8 - *--+?????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging' autofill.out ++ seq 0 7 + for i in $(seq 0 7) + grep -q ==== conflict0.txt + for i in $(seq 0 7) + grep -q ==== conflict1.txt + modify conflict1.txt 'merged version' + filename=conflict1.txt + text='merged version' + echo 'merged version' + git add conflict1.txt + conflict_count=3 + for i in $(seq 0 7) + grep -q ==== conflict2.txt + for i in $(seq 0 7) + grep -q ==== conflict3.txt + for i in $(seq 0 7) + grep -q ==== conflict4.txt + for i in $(seq 0 7) + grep -q ==== conflict5.txt + for i in $(seq 0 7) + grep -q ==== conflict6.txt + for i in $(seq 0 7) + grep -q ==== conflict7.txt + true + tee autofill.out + git-imerge continue --no-edit [imerge/c-d 2a38cc5] imerge 'c-d': manual merge 4-2 Merge has been recorded for merge 4-2. Attempting automerge of 4-8...success. Autofilling 4-3...success. Autofilling 4-4...success. Autofilling 4-5...success. Autofilling 4-6...success. Autofilling 4-7...success. Autofilling 4-8...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[3:5,2:9]. Previous HEAD position was d129faa imerge 'c-d': automatic merge 4-8 Switched to branch 'imerge/c-d' Auto-merging conflict6.txt CONFLICT (content): Merge conflict in conflict6.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit c21441db0b1abc10e3caf5024d19976bd7f9b469 Author: Loú User Date: Thu Apr 7 22:13:19 2005 +0000 c⇒5 Original second commit: commit 8c3c06526942b1b7ef891dac2d98b871c0269ebc Author: Loú User Date: Thu Apr 7 22:13:24 2005 +0000 d⇒1 There was a conflict merging commit 5-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback autofill.out + git-imerge diagram --frontier 0 5 9 | | | 0 - ********** - c **?.|#???? *.?.*????? *.?.|????? *.?.|????? 5 - *...|????? **?.|????? *.?.|????? 8 - *---+????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging' autofill.out ++ seq 0 7 + for i in $(seq 0 7) + grep -q ==== conflict0.txt + for i in $(seq 0 7) + grep -q ==== conflict1.txt + for i in $(seq 0 7) + grep -q ==== conflict2.txt + for i in $(seq 0 7) + grep -q ==== conflict3.txt + for i in $(seq 0 7) + grep -q ==== conflict4.txt + for i in $(seq 0 7) + grep -q ==== conflict5.txt + for i in $(seq 0 7) + grep -q ==== conflict6.txt + modify conflict6.txt 'merged version' + filename=conflict6.txt + text='merged version' + echo 'merged version' + git add conflict6.txt + conflict_count=4 + for i in $(seq 0 7) + grep -q ==== conflict7.txt + true + git-imerge continue --no-edit + tee autofill.out [imerge/c-d 7c8e4d2] imerge 'c-d': manual merge 5-1 Merge has been recorded for merge 5-1. Attempting automerge of 5-8...failure. Attempting automerge of 5-2...success. Attempting automerge of 5-6...failure. Attempting automerge of 5-4...success. Attempting automerge of 5-5...failure. Autofilling 5-2...success. Autofilling 5-3...success. Autofilling 5-4...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[4:6,1:5]. Attempting automerge of 5-8...failure. Attempting automerge of 5-5...failure. Attempting automerge of 9-4...failure. Attempting automerge of 6-1...success. Attempting automerge of 6-3...success. Attempting automerge of 6-4...success. Attempting automerge of 9-4...failure. Attempting automerge of 8-4...failure. Attempting automerge of 7-4...failure. Attempting automerge of 7-1...success. Attempting automerge of 7-3...failure. Attempting automerge of 7-2...failure. Attempting automerge of 9-1...success. Autofilling 6-1...success. Autofilling 6-2...success. Autofilling 6-3...success. Autofilling 6-4...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[5:7,0:5]. Autofilling 7-1...success. Autofilling 8-1...success. Autofilling 9-1...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[6:10,0:2]. Attempting automerge of 9-4...failure. Attempting automerge of 7-2...failure. Previous HEAD position was eda0dea imerge 'c-d': automatic merge 7-1 Switched to branch 'imerge/c-d' Auto-merging conflict3.txt CONFLICT (content): Merge conflict in conflict3.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit c21441db0b1abc10e3caf5024d19976bd7f9b469 Author: Loú User Date: Thu Apr 7 22:13:19 2005 +0000 c⇒5 Original second commit: commit c3e3890b9e3c756c1d8f7e345184d576739be079 Author: Loú User Date: Thu Apr 7 22:13:28 2005 +0000 d⇒5 There was a conflict merging commit 5-5, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback autofill.out + git-imerge diagram --frontier 0 5 9 | | | 0 - ********** - c **?..*.--+ *.?.*.|#?? *.?...|??? *.?..-+??? 5 - *...|#???? **?.|????? *.?.|????? 8 - *---+????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging' autofill.out ++ seq 0 7 + for i in $(seq 0 7) + grep -q ==== conflict0.txt + for i in $(seq 0 7) + grep -q ==== conflict1.txt + for i in $(seq 0 7) + grep -q ==== conflict2.txt + for i in $(seq 0 7) + grep -q ==== conflict3.txt + modify conflict3.txt 'merged version' + filename=conflict3.txt + text='merged version' + echo 'merged version' + git add conflict3.txt + conflict_count=5 + for i in $(seq 0 7) + grep -q ==== conflict4.txt + for i in $(seq 0 7) + grep -q ==== conflict5.txt + for i in $(seq 0 7) + grep -q ==== conflict6.txt + for i in $(seq 0 7) + grep -q ==== conflict7.txt + true + tee autofill.out + git-imerge continue --no-edit [imerge/c-d a525a93] imerge 'c-d': manual merge 5-5 Merge has been recorded for merge 5-5. Attempting automerge of 5-8...success. Autofilling 5-6...success. Autofilling 5-7...success. Autofilling 5-8...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[4:6,5:9]. Attempting automerge of 6-8...failure. Attempting automerge of 6-5...success. Attempting automerge of 6-7...failure. Attempting automerge of 6-6...success. Autofilling 6-5...success. Autofilling 6-6...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[5:7,4:7]. Attempting automerge of 6-8...failure. Attempting automerge of 6-7...failure. Switched to branch 'imerge/c-d' Auto-merging conflict5.txt CONFLICT (content): Merge conflict in conflict5.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit a797a66a0e4b89690099557280641efeac302bcf Author: Loú User Date: Thu Apr 7 22:13:20 2005 +0000 c⇒6 Original second commit: commit 892af56ace54c97776e84dff9e6fba7312efe5d0 Author: Loú User Date: Thu Apr 7 22:13:30 2005 +0000 d⇒7 There was a conflict merging commit 6-7, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback autofill.out + git-imerge diagram --frontier 0 5 9 | | | 0 - ********** - c **?..*.--+ *.?.*.|#?? *.?...|??? *.?...|??? 5 - *....*|??? **?...+??? *.?..|#??? 8 - *----+???? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging' autofill.out ++ seq 0 7 + for i in $(seq 0 7) + grep -q ==== conflict0.txt + for i in $(seq 0 7) + grep -q ==== conflict1.txt + for i in $(seq 0 7) + grep -q ==== conflict2.txt + for i in $(seq 0 7) + grep -q ==== conflict3.txt + for i in $(seq 0 7) + grep -q ==== conflict4.txt + for i in $(seq 0 7) + grep -q ==== conflict5.txt + modify conflict5.txt 'merged version' + filename=conflict5.txt + text='merged version' + echo 'merged version' + git add conflict5.txt + conflict_count=6 + for i in $(seq 0 7) + grep -q ==== conflict6.txt + for i in $(seq 0 7) + grep -q ==== conflict7.txt + true + tee autofill.out + git-imerge continue --no-edit [imerge/c-d 7b5666d] imerge 'c-d': manual merge 6-7 Merge has been recorded for merge 6-7. Attempting automerge of 6-8...success. Autofilling 6-8...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[5:7,7:9]. Previous HEAD position was aebb9f1 imerge 'c-d': automatic merge 6-8 Switched to branch 'imerge/c-d' Auto-merging conflict2.txt CONFLICT (content): Merge conflict in conflict2.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit c0e1537f1ecf33aa719926933c7db8cb93eb5315 Author: Loú User Date: Thu Apr 7 22:13:21 2005 +0000 c⇒7 Original second commit: commit 820b787e86e22612af7a061db842dc95e9f1d49f Author: Loú User Date: Thu Apr 7 22:13:25 2005 +0000 d⇒2 There was a conflict merging commit 7-2, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback autofill.out + git-imerge diagram --frontier 0 5 9 | | | 0 - ********** - c **?..*.--+ *.?.*.|#?? *.?...|??? *.?...|??? 5 - *....*|??? **?...|??? *.?...*??? 8 - *-----+??? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging' autofill.out ++ seq 0 7 + for i in $(seq 0 7) + grep -q ==== conflict0.txt + for i in $(seq 0 7) + grep -q ==== conflict1.txt + for i in $(seq 0 7) + grep -q ==== conflict2.txt + modify conflict2.txt 'merged version' + filename=conflict2.txt + text='merged version' + echo 'merged version' + git add conflict2.txt + conflict_count=7 + for i in $(seq 0 7) + grep -q ==== conflict3.txt + for i in $(seq 0 7) + grep -q ==== conflict4.txt + for i in $(seq 0 7) + grep -q ==== conflict5.txt + for i in $(seq 0 7) + grep -q ==== conflict6.txt + for i in $(seq 0 7) + grep -q ==== conflict7.txt + true + git-imerge continue --no-edit + tee autofill.out [imerge/c-d 997b5ff] imerge 'c-d': manual merge 7-2 Merge has been recorded for merge 7-2. Attempting automerge of 7-8...success. Autofilling 7-3...success. Autofilling 7-4...success. Autofilling 7-5...success. Autofilling 7-6...success. Autofilling 7-7...success. Autofilling 7-8...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[6:8,2:9]. Attempting automerge of 9-8...failure. Attempting automerge of 8-2...success. Attempting automerge of 8-6...success. Attempting automerge of 8-8...success. Attempting automerge of 9-8...failure. Attempting automerge of 9-2...success. Attempting automerge of 9-5...success. Attempting automerge of 9-7...success. Autofilling 8-2...success. Autofilling 8-3...success. Autofilling 8-4...success. Autofilling 8-5...success. Autofilling 8-6...success. Autofilling 8-7...success. Autofilling 8-8...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[7:9,1:9]. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Autofilling 9-5...success. Autofilling 9-6...success. Autofilling 9-7...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[8:10,1:8]. Attempting automerge of 9-8...failure. Attempting automerge of 9-8...failure. Switched to branch 'imerge/c-d' Auto-merging conflict7.txt CONFLICT (content): Merge conflict in conflict7.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit ccbfccb3f61dac677c0a80382aaf6055a11a8a87 Author: Loú User Date: Thu Apr 7 22:13:23 2005 +0000 c⇒9 Original second commit: commit 67099d078100141fbe4063d46a6408200f4ff311 Author: Loú User Date: Thu Apr 7 22:13:31 2005 +0000 d⇒8 There was a conflict merging commit 9-8, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + grep -q Traceback autofill.out + git-imerge diagram --frontier 0 5 9 | | | 0 - ********** - c **?..*...| *.?.*..*.| *.?......| *.?......| 5 - *....*...| **?......| *.?...*..+ 8 - *-------+# | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging' autofill.out ++ seq 0 7 + for i in $(seq 0 7) + grep -q ==== conflict0.txt + for i in $(seq 0 7) + grep -q ==== conflict1.txt + for i in $(seq 0 7) + grep -q ==== conflict2.txt + for i in $(seq 0 7) + grep -q ==== conflict3.txt + for i in $(seq 0 7) + grep -q ==== conflict4.txt + for i in $(seq 0 7) + grep -q ==== conflict5.txt + for i in $(seq 0 7) + grep -q ==== conflict6.txt + for i in $(seq 0 7) + grep -q ==== conflict7.txt + modify conflict7.txt 'merged version' + filename=conflict7.txt + text='merged version' + echo 'merged version' + git add conflict7.txt + conflict_count=8 + true + tee autofill.out + git-imerge continue --no-edit [imerge/c-d ebffc43] imerge 'c-d': manual merge 9-8 Merge has been recorded for merge 9-8. Merge is complete! + grep -q Traceback autofill.out + git-imerge diagram --frontier 0 5 9 | | | 0 - ********** - c **?..*...| *.?.*..*.| *.?......| *.?......| 5 - *....*...| **?......| *.?...*..| 8 - *--------* | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging' autofill.out + break + test 8 -ne 8 + git-imerge diagram --commits + diff -u - diagram.out + cat + EXPECTED_TREE=13e5a8955ab8f88dc7fec8278ee2622655c21d7f + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=c-d-merge Merge d into c (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:33:11 2024 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict0.txt # modified: conflict1.txt # modified: conflict2.txt # modified: conflict3.txt # modified: conflict4.txt # modified: conflict5.txt # modified: conflict6.txt # modified: conflict7.txt # modified: d.txt # [c-d-merge 321dfbe] Merge d into c (using imerge) Date: Mon May 20 10:33:11 2024 +0000 + check_tree c-d-merge 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-merge + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f ++ git rev-parse 'c-d-merge^{tree}' + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-rebase + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f ++ git rev-parse 'c-d-rebase^{tree}' + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-rebase-with-history + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f ++ git rev-parse 'c-d-rebase-with-history^{tree}' + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-border + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f ++ git rev-parse 'c-d-border^{tree}' + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-border-with-history + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f ++ git rev-parse 'c-d-border-with-history^{tree}' + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-border-with-history2 + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f ++ git rev-parse 'c-d-border-with-history2^{tree}' + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge remove py311 run-test: commands[3] | /bin/sh t/test-duplicated ++++ dirname t/test-duplicated +++ cd t +++ pwd ++ dirname /build/git-imerge-1.2.0/t + BASE=/build/git-imerge-1.2.0 + . /build/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + TMP=/build/git-imerge-1.2.0/t/tmp/duplicated + DESCRIPTION='git-imerge test repository with duplicate commits' + init_test_repo /build/git-imerge-1.2.0/t/tmp/duplicated 'git-imerge test repository with duplicate commits' + local path=/build/git-imerge-1.2.0/t/tmp/duplicated + local 'description=git-imerge test repository with duplicate commits' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/duplicated 'git-imerge test repository with duplicate commits' + local path=/build/git-imerge-1.2.0/t/tmp/duplicated + local 'description=git-imerge test repository with duplicate commits' + test -d /build/git-imerge-1.2.0/t/tmp/duplicated + mkdir -p /build/git-imerge-1.2.0/t/tmp/duplicated + git init /build/git-imerge-1.2.0/t/tmp/duplicated hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/duplicated/.git/ + echo 'git-imerge test repository with duplicate commits' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/duplicated/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/duplicated/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/duplicated + cd /build/git-imerge-1.2.0/t/tmp/duplicated + modify a.txt 0 + filename=a.txt + text=0 + echo 0 + git add a.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) a733afa] m⇒0 1 file changed, 1 insertion(+) create mode 100644 a.txt + git checkout -b a -- Switched to a new branch 'a' ++ seq 3 + for i in $(seq 3) + modify a.txt 1 + filename=a.txt + text=1 + echo 1 + git add a.txt + commit -m 'a⇒1 on branch a' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m 'a⇒1 on branch a' [a 2f1f75a] a⇒1 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 3) + modify a.txt 2 + filename=a.txt + text=2 + echo 2 + git add a.txt + commit -m 'a⇒2 on branch a' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m 'a⇒2 on branch a' [a 4700669] a⇒2 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 3) + modify a.txt 3 + filename=a.txt + text=3 + echo 3 + git add a.txt + commit -m 'a⇒3 on branch a' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m 'a⇒3 on branch a' [a 621c381] a⇒3 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b b master -- Switched to a new branch 'b' ++ seq 4 + for i in $(seq 4) + modify a.txt 1 + filename=a.txt + text=1 + echo 1 + git add a.txt + commit -m 'a⇒1 on branch b' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m 'a⇒1 on branch b' [b 62a5c56] a⇒1 on branch b 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 4) + modify a.txt 2 + filename=a.txt + text=2 + echo 2 + git add a.txt + commit -m 'a⇒2 on branch b' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m 'a⇒2 on branch b' [b f846281] a⇒2 on branch b 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 4) + modify a.txt 3 + filename=a.txt + text=3 + echo 3 + git add a.txt + commit -m 'a⇒3 on branch b' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m 'a⇒3 on branch b' [b a4b2c2b] a⇒3 on branch b 1 file changed, 1 insertion(+), 1 deletion(-) + for i in $(seq 4) + modify a.txt 4 + filename=a.txt + text=4 + echo 4 + git add a.txt + commit -m 'a⇒4 on branch b' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m 'a⇒4 on branch b' [b 5b24553] a⇒4 on branch b 1 file changed, 1 insertion(+), 1 deletion(-) + EXPECTED_TREE=9d521927e179e882efacd2a0ba94b89a1de00eb2 + git checkout a Switched to branch 'a' + git-imerge start --first-parent --name=a-b --branch=a-b-merge b Attempting automerge of 3-4...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-3...failure. Attempting automerge of 1-2...failure. Attempting automerge of 3-1...failure. Attempting automerge of 2-1...failure. Autofilling 1-1...success. Recording autofilled block MergeState('a-b', tip1='a', tip2='b', goal='merge')[0:2,0:2]. Attempting automerge of 1-4...success. Autofilling 1-2...success. Autofilling 1-3...success. Autofilling 1-4...success. Recording autofilled block MergeState('a-b', tip1='a', tip2='b', goal='merge')[0:2,1:5]. Attempting automerge of 3-4...failure. Attempting automerge of 2-1...success. Attempting automerge of 2-3...failure. Attempting automerge of 2-2...success. Attempting automerge of 3-2...failure. Attempting automerge of 3-1...success. Autofilling 2-1...success. Autofilling 2-2...success. Recording autofilled block MergeState('a-b', tip1='a', tip2='b', goal='merge')[1:3,0:3]. Autofilling 3-1...success. Recording autofilled block MergeState('a-b', tip1='a', tip2='b', goal='merge')[2:4,0:2]. Attempting automerge of 2-4...success. Autofilling 2-3...success. Autofilling 2-4...success. Recording autofilled block MergeState('a-b', tip1='a', tip2='b', goal='merge')[1:3,2:5]. Attempting automerge of 3-4...failure. Attempting automerge of 3-2...success. Attempting automerge of 3-4...failure. Attempting automerge of 3-3...success. Autofilling 3-2...success. Autofilling 3-3...success. Recording autofilled block MergeState('a-b', tip1='a', tip2='b', goal='merge')[2:4,1:4]. Attempting automerge of 3-4...success. Autofilling 3-4...success. Recording autofilled block MergeState('a-b', tip1='a', tip2='b', goal='merge')[2:4,3:5]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge5.html 0 3 | | 0 - **** - a *... *... *... 4 - *... | b 0 3 | | 0 - **** - a *..| *..| *..| 4 - *--+ | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge simplify --goal=merge --branch=a-b-merge Merge b into a (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:33:17 2024 +0000 # # On branch a-b-merge # Changes to be committed: # modified: a.txt # [a-b-merge 13c72aa] Merge b into a (using imerge) Date: Mon May 20 10:33:17 2024 +0000 + check_tree a-b-merge 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-merge + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 ++ git rev-parse 'a-b-merge^{tree}' + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git-imerge simplify --goal=rebase --branch=a-b-rebase + check_tree a-b-rebase 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-rebase + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 ++ git rev-parse 'a-b-rebase^{tree}' + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git-imerge simplify --goal=rebase-with-history --branch=a-b-rebase-with-history + check_tree a-b-rebase-with-history 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-rebase-with-history + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 ++ git rev-parse 'a-b-rebase-with-history^{tree}' + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git-imerge simplify --goal=border --branch=a-b-border + check_tree a-b-border 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-border + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 ++ git rev-parse 'a-b-border^{tree}' + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git-imerge simplify --goal=border-with-history --branch=a-b-border-with-history + check_tree a-b-border-with-history 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-border-with-history + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 ++ git rev-parse 'a-b-border-with-history^{tree}' + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git-imerge finish --goal=border-with-history2 --branch=a-b-border-with-history2 + check_tree a-b-border-with-history2 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-border-with-history2 + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 ++ git rev-parse 'a-b-border-with-history2^{tree}' + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git checkout a Switched to branch 'a' + git-imerge start --goal=full --name=a-b b Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Merge is complete! + git-imerge list * a-b + git-imerge diagram --commits --frontier --html=imerge6.html 0 3 | | 0 - **** - a *... *... *... 4 - *... | b 0 3 | | 0 - **** - a *..| *..| *..| 4 - *--+ | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=a-b-full + check_tree a-b-full 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-full + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 ++ git rev-parse 'a-b-full^{tree}' + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 py311 run-test: commands[4] | /bin/sh t/test-flip-flop ++++ dirname t/test-flip-flop +++ cd t +++ pwd ++ dirname /build/git-imerge-1.2.0/t + BASE=/build/git-imerge-1.2.0 + . /build/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + for n in 1 2 3 + flip_flop_test 1 + local n=1 + TMP=/build/git-imerge-1.2.0/t/tmp/flip-flop-1 + DESCRIPTION='git-imerge test repository with a commit and its revert at n=1' + init_test_repo /build/git-imerge-1.2.0/t/tmp/flip-flop-1 'git-imerge test repository with a commit and its revert at n=1' + local path=/build/git-imerge-1.2.0/t/tmp/flip-flop-1 + local 'description=git-imerge test repository with a commit and its revert at n=1' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/flip-flop-1 'git-imerge test repository with a commit and its revert at n=1' + local path=/build/git-imerge-1.2.0/t/tmp/flip-flop-1 + local 'description=git-imerge test repository with a commit and its revert at n=1' + test -d /build/git-imerge-1.2.0/t/tmp/flip-flop-1 + mkdir -p /build/git-imerge-1.2.0/t/tmp/flip-flop-1 + git init /build/git-imerge-1.2.0/t/tmp/flip-flop-1 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/flip-flop-1/.git/ + echo 'git-imerge test repository with a commit and its revert at n=1' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/flip-flop-1/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/flip-flop-1/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/flip-flop-1 + cd /build/git-imerge-1.2.0/t/tmp/flip-flop-1 + modify a.txt 0 + filename=a.txt + text=0 + echo 0 + git add a.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) a733afa] m⇒0 1 file changed, 1 insertion(+) create mode 100644 a.txt + git checkout -b a -- Switched to a new branch 'a' + for i in 1 2 3 + modify a.txt 1 + filename=a.txt + text=1 + echo 1 + git add a.txt + commit -m 'a⇒1 on branch a' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m 'a⇒1 on branch a' [a 2f1f75a] a⇒1 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + for i in 1 2 3 + modify a.txt 2 + filename=a.txt + text=2 + echo 2 + git add a.txt + commit -m 'a⇒2 on branch a' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m 'a⇒2 on branch a' [a 4700669] a⇒2 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + for i in 1 2 3 + modify a.txt 3 + filename=a.txt + text=3 + echo 3 + git add a.txt + commit -m 'a⇒3 on branch a' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m 'a⇒3 on branch a' [a 621c381] a⇒3 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b b master -- Switched to a new branch 'b' + for i in 1 2 3 4 + modify b.txt 1 + filename=b.txt + text=1 + echo 1 + git add b.txt + msg=$'b\342\207\2221' + test 1 = 1 + modify a.txt X + filename=a.txt + text=X + echo X + git add a.txt + msg='b⇒1 and a⇒X' + test 1 = 2 + commit -m 'b⇒1 and a⇒X on branch b' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m 'b⇒1 and a⇒X on branch b' [b 044a3fa] b⇒1 and a⇒X on branch b 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 b.txt + for i in 1 2 3 4 + modify b.txt 2 + filename=b.txt + text=2 + echo 2 + git add b.txt + msg=$'b\342\207\2222' + test 2 = 1 + test 2 = 2 + modify a.txt 0 + filename=a.txt + text=0 + echo 0 + git add a.txt + msg='b⇒2 and a⇒0' + commit -m 'b⇒2 and a⇒0 on branch b' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m 'b⇒2 and a⇒0 on branch b' [b 7851975] b⇒2 and a⇒0 on branch b 2 files changed, 2 insertions(+), 2 deletions(-) + for i in 1 2 3 4 + modify b.txt 3 + filename=b.txt + text=3 + echo 3 + git add b.txt + msg=$'b\342\207\2223' + test 3 = 1 + test 3 = 2 + commit -m 'b⇒3 on branch b' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m 'b⇒3 on branch b' [b 6fe24f0] b⇒3 on branch b 1 file changed, 1 insertion(+), 1 deletion(-) + for i in 1 2 3 4 + modify b.txt 4 + filename=b.txt + text=4 + echo 4 + git add b.txt + msg=$'b\342\207\2224' + test 4 = 1 + test 4 = 2 + commit -m 'b⇒4 on branch b' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m 'b⇒4 on branch b' [b 2dc5eb7] b⇒4 on branch b 1 file changed, 1 insertion(+), 1 deletion(-) + test_merge b-into-a-1 a b 1-1 1-2 + local name=b-into-a-1 + local dst=a + local src=b + local conflict1=1-1 + local conflict2=1-2 + git checkout a Switched to branch 'a' + git-imerge merge --branch=b-into-a-1 b + tee imerge-b-into-a-1-1.out Attempting automerge of 3-4...success. Autofilling 1-4...success. Autofilling 2-4...success. Autofilling 3-1...unexpected conflict. Backtracking... Autofilling 1-4...success. Autofilling 2-1...unexpected conflict. Backtracking... Autofilling 1-1...unexpected conflict. Backtracking... Switched to branch 'imerge/b' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a Original second commit: commit 044a3fac3fa19a3a6428eaeeb356b18764b9b1f2 Author: Loú User Date: Thu Apr 7 22:13:18 2005 +0000 b⇒1 and a⇒X on branch b There was a conflict merging commit 1-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a *#?? *??? *??? 4 - *??? | b 0 3 | | 0 - **** - a *#?? *??? *??? 4 - *??? | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 1-1' imerge-b-into-a-1-1.out + echo 1 + git add a.txt + tee imerge-b-into-a-1-2.out + git-imerge continue --no-edit [imerge/b 8621b71] imerge 'b': manual merge 1-1 Merge has been recorded for merge 1-1. Attempting automerge of 1-4...failure. Attempting automerge of 1-2...failure. Attempting automerge of 3-1...success. Autofilling 2-1...success. Autofilling 3-1...success. Recording autofilled block MergeState('b', tip1='a', tip2='b', goal='merge')[1:4,0:2]. Previous HEAD position was 54cc794 imerge 'b': automatic merge 3-1 Switched to branch 'imerge/b' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a Original second commit: commit 7851975ee7d12ef0a256db7ebd029aab51f895ab Author: Loú User Date: Thu Apr 7 22:13:19 2005 +0000 b⇒2 and a⇒0 on branch b There was a conflict merging commit 1-2, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a **.. *#?? *??? 4 - *??? | b 0 3 | | 0 - **** - a **-+ *#?? *??? 4 - *??? | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 1-2' imerge-b-into-a-1-2.out + echo 1 + git add a.txt + tee imerge-b-into-a-1-3.out + git-imerge continue --no-edit [imerge/b ae5ddc6] imerge 'b': manual merge 1-2 Merge has been recorded for merge 1-2. Attempting automerge of 1-4...success. Autofilling 1-3...success. Autofilling 1-4...success. Recording autofilled block MergeState('b', tip1='a', tip2='b', goal='merge')[0:2,2:5]. Attempting automerge of 3-4...success. Autofilling 2-4...success. Autofilling 3-2...success. Autofilling 3-3...success. Autofilling 3-4 (first way)...success. Autofilling 3-4 (second way)...success. The two ways of autofilling 3-4 agree. Recording autofilled block MergeState('b', tip1='a', tip2='b', goal='merge')[1:4,1:5]. Merge is complete! + grep -q 'Merge is complete' imerge-b-into-a-1-3.out + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a **.. **?. *.?. 4 - *... | b 0 3 | | 0 - **** - a **.| **?| *.?| 4 - *--+ | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge finish Merge b into a (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:33:24 2024 +0000 # # On branch b-into-a-1 # Changes to be committed: # new file: b.txt # [b-into-a-1 3af0ec7] Merge b into a (using imerge) Date: Mon May 20 10:33:24 2024 +0000 + test_merge a-into-b-1 b a 1-1 2-1 + local name=a-into-b-1 + local dst=b + local src=a + local conflict1=1-1 + local conflict2=2-1 + git checkout b Switched to branch 'b' + tee imerge-a-into-b-1-1.out + git-imerge merge --branch=a-into-b-1 a Attempting automerge of 4-3...success. Autofilling 1-3...unexpected conflict. Backtracking... Autofilling 1-2...unexpected conflict. Backtracking... Autofilling 1-1...unexpected conflict. Backtracking... Switched to branch 'imerge/a' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 044a3fac3fa19a3a6428eaeeb356b18764b9b1f2 Author: Loú User Date: Thu Apr 7 22:13:18 2005 +0000 b⇒1 and a⇒X on branch b Original second commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a There was a conflict merging commit 1-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b *#??? *???? 3 - *???? | a 0 4 | | 0 - ***** - b *#??? *???? 3 - *???? | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 1-1' imerge-a-into-b-1-1.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-a-into-b-1-2.out [imerge/a d3f806d] imerge 'a': manual merge 1-1 Merge has been recorded for merge 1-1. Attempting automerge of 1-3...success. Autofilling 1-2...success. Autofilling 1-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[0:2,1:4]. Attempting automerge of 4-3...failure. Attempting automerge of 2-1...failure. Switched to branch 'imerge/a' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 7851975ee7d12ef0a256db7ebd029aab51f895ab Author: Loú User Date: Thu Apr 7 22:13:19 2005 +0000 b⇒2 and a⇒0 on branch b Original second commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a There was a conflict merging commit 2-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b **#?? *.??? 3 - *.??? | a 0 4 | | 0 - ***** - b **#?? *|??? 3 - *+??? | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 2-1' imerge-a-into-b-1-2.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-a-into-b-1-3.out [imerge/a 01fee13] imerge 'a': manual merge 2-1 Merge has been recorded for merge 2-1. Attempting automerge of 2-3...success. Autofilling 2-2...success. Autofilling 2-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[1:3,1:4]. Attempting automerge of 4-3...success. Autofilling 3-3...success. Autofilling 4-1...success. Autofilling 4-2...success. Autofilling 4-3 (first way)...success. Autofilling 4-3 (second way)...success. The two ways of autofilling 4-3 agree. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[2:5,0:4]. Merge is complete! + grep -q 'Merge is complete' imerge-a-into-b-1-3.out + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b ***?. *..?. 3 - *.... | a 0 4 | | 0 - ***** - b ***?| *..?| 3 - *---+ | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge finish Merge a into b (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:33:27 2024 +0000 # # On branch a-into-b-1 # Changes to be committed: # modified: a.txt # [a-into-b-1 59b14b4] Merge a into b (using imerge) Date: Mon May 20 10:33:27 2024 +0000 + for n in 1 2 3 + flip_flop_test 2 + local n=2 + TMP=/build/git-imerge-1.2.0/t/tmp/flip-flop-2 + DESCRIPTION='git-imerge test repository with a commit and its revert at n=2' + init_test_repo /build/git-imerge-1.2.0/t/tmp/flip-flop-2 'git-imerge test repository with a commit and its revert at n=2' + local path=/build/git-imerge-1.2.0/t/tmp/flip-flop-2 + local 'description=git-imerge test repository with a commit and its revert at n=2' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/flip-flop-2 'git-imerge test repository with a commit and its revert at n=2' + local path=/build/git-imerge-1.2.0/t/tmp/flip-flop-2 + local 'description=git-imerge test repository with a commit and its revert at n=2' + test -d /build/git-imerge-1.2.0/t/tmp/flip-flop-2 + mkdir -p /build/git-imerge-1.2.0/t/tmp/flip-flop-2 + git init /build/git-imerge-1.2.0/t/tmp/flip-flop-2 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/flip-flop-2/.git/ + echo 'git-imerge test repository with a commit and its revert at n=2' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/flip-flop-2/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/flip-flop-2/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/flip-flop-2 + cd /build/git-imerge-1.2.0/t/tmp/flip-flop-2 + modify a.txt 0 + filename=a.txt + text=0 + echo 0 + git add a.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) a733afa] m⇒0 1 file changed, 1 insertion(+) create mode 100644 a.txt + git checkout -b a -- Switched to a new branch 'a' + for i in 1 2 3 + modify a.txt 1 + filename=a.txt + text=1 + echo 1 + git add a.txt + commit -m 'a⇒1 on branch a' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m 'a⇒1 on branch a' [a 2f1f75a] a⇒1 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + for i in 1 2 3 + modify a.txt 2 + filename=a.txt + text=2 + echo 2 + git add a.txt + commit -m 'a⇒2 on branch a' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m 'a⇒2 on branch a' [a 4700669] a⇒2 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + for i in 1 2 3 + modify a.txt 3 + filename=a.txt + text=3 + echo 3 + git add a.txt + commit -m 'a⇒3 on branch a' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m 'a⇒3 on branch a' [a 621c381] a⇒3 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b b master -- Switched to a new branch 'b' + for i in 1 2 3 4 + modify b.txt 1 + filename=b.txt + text=1 + echo 1 + git add b.txt + msg=$'b\342\207\2221' + test 1 = 2 + test 1 = 3 + commit -m 'b⇒1 on branch b' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m 'b⇒1 on branch b' [b 1f7d097] b⇒1 on branch b 1 file changed, 1 insertion(+) create mode 100644 b.txt + for i in 1 2 3 4 + modify b.txt 2 + filename=b.txt + text=2 + echo 2 + git add b.txt + msg=$'b\342\207\2222' + test 2 = 2 + modify a.txt X + filename=a.txt + text=X + echo X + git add a.txt + msg='b⇒2 and a⇒X' + test 2 = 3 + commit -m 'b⇒2 and a⇒X on branch b' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m 'b⇒2 and a⇒X on branch b' [b 48df77d] b⇒2 and a⇒X on branch b 2 files changed, 2 insertions(+), 2 deletions(-) + for i in 1 2 3 4 + modify b.txt 3 + filename=b.txt + text=3 + echo 3 + git add b.txt + msg=$'b\342\207\2223' + test 3 = 2 + test 3 = 3 + modify a.txt 0 + filename=a.txt + text=0 + echo 0 + git add a.txt + msg='b⇒3 and a⇒0' + commit -m 'b⇒3 and a⇒0 on branch b' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m 'b⇒3 and a⇒0 on branch b' [b f3ef019] b⇒3 and a⇒0 on branch b 2 files changed, 2 insertions(+), 2 deletions(-) + for i in 1 2 3 4 + modify b.txt 4 + filename=b.txt + text=4 + echo 4 + git add b.txt + msg=$'b\342\207\2224' + test 4 = 2 + test 4 = 3 + commit -m 'b⇒4 on branch b' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m 'b⇒4 on branch b' [b 69d0c21] b⇒4 on branch b 1 file changed, 1 insertion(+), 1 deletion(-) + test_merge b-into-a-2 a b 1-2 1-3 + local name=b-into-a-2 + local dst=a + local src=b + local conflict1=1-2 + local conflict2=1-3 + git checkout a Switched to branch 'a' + git-imerge merge --branch=b-into-a-2 b + tee imerge-b-into-a-2-1.out Attempting automerge of 3-4...success. Autofilling 1-4...success. Autofilling 2-4...success. Autofilling 3-1...success. Autofilling 3-2...unexpected conflict. Backtracking... Autofilling 1-4...success. Autofilling 2-1...success. Autofilling 2-2...unexpected conflict. Backtracking... Autofilling 1-1...success. Autofilling 1-2...unexpected conflict. Backtracking... Autofilling 1-1...success. Autofilling 2-1...success. Autofilling 3-1...success. Recording autofilled block MergeState('b', tip1='a', tip2='b', goal='merge')[0:4,0:2]. Attempting automerge of 3-4...success. Autofilling 1-4...success. Autofilling 2-4...success. Autofilling 3-2...unexpected conflict. Backtracking... Autofilling 1-4...success. Autofilling 2-2...unexpected conflict. Backtracking... Autofilling 1-2...unexpected conflict. Backtracking... Switched to branch 'imerge/b' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a Original second commit: commit 48df77d20a6d16fe330e32ba17d5472d3868a622 Author: Loú User Date: Thu Apr 7 22:13:19 2005 +0000 b⇒2 and a⇒X on branch b There was a conflict merging commit 1-2, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a *... *#?? *??? 4 - *??? | b 0 3 | | 0 - **** - a *--+ *#?? *??? 4 - *??? | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 1-2' imerge-b-into-a-2-1.out + echo 1 + git add a.txt + tee imerge-b-into-a-2-2.out + git-imerge continue --no-edit [imerge/b 03f32d7] imerge 'b': manual merge 1-2 Merge has been recorded for merge 1-2. Attempting automerge of 1-4...failure. Attempting automerge of 1-3...failure. Attempting automerge of 3-2...success. Autofilling 2-2...success. Autofilling 3-2...success. Recording autofilled block MergeState('b', tip1='a', tip2='b', goal='merge')[1:4,1:3]. Previous HEAD position was 4f40fc5 imerge 'b': automatic merge 3-2 Switched to branch 'imerge/b' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a Original second commit: commit f3ef01986be02ef5e40589b283c0385471ecca7d Author: Loú User Date: Thu Apr 7 22:13:20 2005 +0000 b⇒3 and a⇒0 on branch b There was a conflict merging commit 1-3, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a *... **.. *#?? 4 - *??? | b 0 3 | | 0 - **** - a *..| **-+ *#?? 4 - *??? | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 1-3' imerge-b-into-a-2-2.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-b-into-a-2-3.out [imerge/b fa663ce] imerge 'b': manual merge 1-3 Merge has been recorded for merge 1-3. Attempting automerge of 1-4...success. Autofilling 1-4...success. Recording autofilled block MergeState('b', tip1='a', tip2='b', goal='merge')[0:2,3:5]. Attempting automerge of 3-4...success. Autofilling 2-4...success. Autofilling 3-3...success. Autofilling 3-4 (first way)...success. Autofilling 3-4 (second way)...success. The two ways of autofilling 3-4 agree. Recording autofilled block MergeState('b', tip1='a', tip2='b', goal='merge')[1:4,2:5]. Merge is complete! + grep -q 'Merge is complete' imerge-b-into-a-2-3.out + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a *... **.. **?. 4 - *... | b 0 3 | | 0 - **** - a *..| **.| **?| 4 - *--+ | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge finish Merge b into a (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:33:32 2024 +0000 # # On branch b-into-a-2 # Changes to be committed: # new file: b.txt # [b-into-a-2 64ac3c5] Merge b into a (using imerge) Date: Mon May 20 10:33:32 2024 +0000 + test_merge a-into-b-2 b a 2-1 3-1 + local name=a-into-b-2 + local dst=b + local src=a + local conflict1=2-1 + local conflict2=3-1 + git checkout b Switched to branch 'b' + tee imerge-a-into-b-2-1.out + git-imerge merge --branch=a-into-b-2 a Attempting automerge of 4-3...success. Autofilling 1-3...success. Autofilling 2-3...unexpected conflict. Backtracking... Autofilling 1-1...success. Autofilling 1-2...success. Autofilling 1-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[0:2,0:4]. Autofilling 2-2...unexpected conflict. Backtracking... Autofilling 2-1...unexpected conflict. Backtracking... Switched to branch 'imerge/a' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 48df77d20a6d16fe330e32ba17d5472d3868a622 Author: Loú User Date: Thu Apr 7 22:13:19 2005 +0000 b⇒2 and a⇒X on branch b Original second commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a There was a conflict merging commit 2-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b *.#?? *.??? 3 - *.??? | a 0 4 | | 0 - ***** - b *|#?? *|??? 3 - *+??? | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 2-1' imerge-a-into-b-2-1.out + echo 1 + git add a.txt + tee imerge-a-into-b-2-2.out + git-imerge continue --no-edit [imerge/a d185a48] imerge 'a': manual merge 2-1 Merge has been recorded for merge 2-1. Attempting automerge of 2-3...success. Autofilling 2-2...success. Autofilling 2-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[1:3,1:4]. Attempting automerge of 4-3...failure. Attempting automerge of 3-1...failure. Switched to branch 'imerge/a' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit f3ef01986be02ef5e40589b283c0385471ecca7d Author: Loú User Date: Thu Apr 7 22:13:20 2005 +0000 b⇒3 and a⇒0 on branch b Original second commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a There was a conflict merging commit 3-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b *.*#? *..?? 3 - *..?? | a 0 4 | | 0 - ***** - b *.*#? *.|?? 3 - *-+?? | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 3-1' imerge-a-into-b-2-2.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-a-into-b-2-3.out [imerge/a 79545b1] imerge 'a': manual merge 3-1 Merge has been recorded for merge 3-1. Attempting automerge of 3-3...success. Autofilling 3-2...success. Autofilling 3-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[2:4,1:4]. Attempting automerge of 4-3...success. Autofilling 4-1...success. Autofilling 4-2...success. Autofilling 4-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[3:5,0:4]. Merge is complete! + grep -q 'Merge is complete' imerge-a-into-b-2-3.out + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b *.**. *.... 3 - *.... | a 0 4 | | 0 - ***** - b *.**| *...| 3 - *---+ | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge finish Merge a into b (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:33:35 2024 +0000 # # On branch a-into-b-2 # Changes to be committed: # modified: a.txt # [a-into-b-2 a6ae596] Merge a into b (using imerge) Date: Mon May 20 10:33:35 2024 +0000 + for n in 1 2 3 + flip_flop_test 3 + local n=3 + TMP=/build/git-imerge-1.2.0/t/tmp/flip-flop-3 + DESCRIPTION='git-imerge test repository with a commit and its revert at n=3' + init_test_repo /build/git-imerge-1.2.0/t/tmp/flip-flop-3 'git-imerge test repository with a commit and its revert at n=3' + local path=/build/git-imerge-1.2.0/t/tmp/flip-flop-3 + local 'description=git-imerge test repository with a commit and its revert at n=3' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/flip-flop-3 'git-imerge test repository with a commit and its revert at n=3' + local path=/build/git-imerge-1.2.0/t/tmp/flip-flop-3 + local 'description=git-imerge test repository with a commit and its revert at n=3' + test -d /build/git-imerge-1.2.0/t/tmp/flip-flop-3 + mkdir -p /build/git-imerge-1.2.0/t/tmp/flip-flop-3 + git init /build/git-imerge-1.2.0/t/tmp/flip-flop-3 hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/flip-flop-3/.git/ + echo 'git-imerge test repository with a commit and its revert at n=3' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/flip-flop-3/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/flip-flop-3/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/flip-flop-3 + cd /build/git-imerge-1.2.0/t/tmp/flip-flop-3 + modify a.txt 0 + filename=a.txt + text=0 + echo 0 + git add a.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) a733afa] m⇒0 1 file changed, 1 insertion(+) create mode 100644 a.txt + git checkout -b a -- Switched to a new branch 'a' + for i in 1 2 3 + modify a.txt 1 + filename=a.txt + text=1 + echo 1 + git add a.txt + commit -m 'a⇒1 on branch a' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m 'a⇒1 on branch a' [a 2f1f75a] a⇒1 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + for i in 1 2 3 + modify a.txt 2 + filename=a.txt + text=2 + echo 2 + git add a.txt + commit -m 'a⇒2 on branch a' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m 'a⇒2 on branch a' [a 4700669] a⇒2 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + for i in 1 2 3 + modify a.txt 3 + filename=a.txt + text=3 + echo 3 + git add a.txt + commit -m 'a⇒3 on branch a' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m 'a⇒3 on branch a' [a 621c381] a⇒3 on branch a 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b b master -- Switched to a new branch 'b' + for i in 1 2 3 4 + modify b.txt 1 + filename=b.txt + text=1 + echo 1 + git add b.txt + msg=$'b\342\207\2221' + test 1 = 3 + test 1 = 4 + commit -m 'b⇒1 on branch b' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m 'b⇒1 on branch b' [b 1f7d097] b⇒1 on branch b 1 file changed, 1 insertion(+) create mode 100644 b.txt + for i in 1 2 3 4 + modify b.txt 2 + filename=b.txt + text=2 + echo 2 + git add b.txt + msg=$'b\342\207\2222' + test 2 = 3 + test 2 = 4 + commit -m 'b⇒2 on branch b' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m 'b⇒2 on branch b' [b ce671e9] b⇒2 on branch b 1 file changed, 1 insertion(+), 1 deletion(-) + for i in 1 2 3 4 + modify b.txt 3 + filename=b.txt + text=3 + echo 3 + git add b.txt + msg=$'b\342\207\2223' + test 3 = 3 + modify a.txt X + filename=a.txt + text=X + echo X + git add a.txt + msg='b⇒3 and a⇒X' + test 3 = 4 + commit -m 'b⇒3 and a⇒X on branch b' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m 'b⇒3 and a⇒X on branch b' [b d40495e] b⇒3 and a⇒X on branch b 2 files changed, 2 insertions(+), 2 deletions(-) + for i in 1 2 3 4 + modify b.txt 4 + filename=b.txt + text=4 + echo 4 + git add b.txt + msg=$'b\342\207\2224' + test 4 = 3 + test 4 = 4 + modify a.txt 0 + filename=a.txt + text=0 + echo 0 + git add a.txt + msg='b⇒4 and a⇒0' + commit -m 'b⇒4 and a⇒0 on branch b' + TIME=1112912001 + GIT_AUTHOR_DATE='@1112912001 +0000' + GIT_COMMITTER_DATE='@1112912001 +0000' + git commit -m 'b⇒4 and a⇒0 on branch b' [b eb736f2] b⇒4 and a⇒0 on branch b 2 files changed, 2 insertions(+), 2 deletions(-) + test_merge b-into-a-3 a b 1-3 1-4 + local name=b-into-a-3 + local dst=a + local src=b + local conflict1=1-3 + local conflict2=1-4 + git checkout a Switched to branch 'a' + git-imerge merge --branch=b-into-a-3 b + tee imerge-b-into-a-3-1.out Attempting automerge of 3-4...success. Autofilling 1-4...success. Autofilling 2-4...success. Autofilling 3-1...success. Autofilling 3-2...success. Autofilling 3-3...unexpected conflict. Backtracking... Autofilling 1-4...success. Autofilling 2-1...success. Autofilling 2-2...success. Autofilling 2-3...unexpected conflict. Backtracking... Autofilling 1-1...success. Autofilling 1-2...success. Autofilling 1-3...unexpected conflict. Backtracking... Autofilling 1-2...success. Autofilling 2-2...success. Autofilling 3-1...success. Autofilling 3-2 (first way)...success. Autofilling 3-2 (second way)...success. The two ways of autofilling 3-2 agree. Recording autofilled block MergeState('b', tip1='a', tip2='b', goal='merge')[0:4,0:3]. Attempting automerge of 3-4...success. Autofilling 1-4...success. Autofilling 2-4...success. Autofilling 3-3...unexpected conflict. Backtracking... Autofilling 1-4...success. Autofilling 2-3...unexpected conflict. Backtracking... Autofilling 1-3...unexpected conflict. Backtracking... Switched to branch 'imerge/b' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a Original second commit: commit d40495ed379f376841e517047f90b663e8c7c7e1 Author: Loú User Date: Thu Apr 7 22:13:20 2005 +0000 b⇒3 and a⇒X on branch b There was a conflict merging commit 1-3, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a *??. *... *#?? 4 - *??? | b 0 3 | | 0 - **** - a *??| *--+ *#?? 4 - *??? | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 1-3' imerge-b-into-a-3-1.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-b-into-a-3-2.out [imerge/b 80b5b78] imerge 'b': manual merge 1-3 Merge has been recorded for merge 1-3. Attempting automerge of 1-4...failure. Attempting automerge of 1-4...failure. Attempting automerge of 3-3...success. Autofilling 2-3...success. Autofilling 3-3...success. Recording autofilled block MergeState('b', tip1='a', tip2='b', goal='merge')[1:4,2:4]. Previous HEAD position was b0e071f imerge 'b': automatic merge 3-3 Switched to branch 'imerge/b' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a Original second commit: commit eb736f2ae81944f79f443fd39a89adf74dbc907a Author: Loú User Date: Thu Apr 7 22:13:21 2005 +0000 b⇒4 and a⇒0 on branch b There was a conflict merging commit 1-4, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a *??. *... **.. 4 - *#?? | b 0 3 | | 0 - **** - a *??| *..| **-+ 4 - *#?? | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 1-4' imerge-b-into-a-3-2.out + echo 1 + git add a.txt + tee imerge-b-into-a-3-3.out + git-imerge continue --no-edit [imerge/b 36f316f] imerge 'b': manual merge 1-4 Merge has been recorded for merge 1-4. Attempting automerge of 3-4...success. Autofilling 2-4...success. Autofilling 3-4...success. Recording autofilled block MergeState('b', tip1='a', tip2='b', goal='merge')[1:4,3:5]. Merge is complete! + grep -q 'Merge is complete' imerge-b-into-a-3-3.out + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a *??. *... **.. 4 - **.. | b 0 3 | | 0 - **** - a *??| *..| **.| 4 - **-+ | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge finish Merge b into a (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:33:39 2024 +0000 # # On branch b-into-a-3 # Changes to be committed: # new file: b.txt # [b-into-a-3 c6d4bab] Merge b into a (using imerge) Date: Mon May 20 10:33:39 2024 +0000 + test_merge a-into-b-3 b a 3-1 4-1 + local name=a-into-b-3 + local dst=b + local src=a + local conflict1=3-1 + local conflict2=4-1 + git checkout b Switched to branch 'b' + tee imerge-a-into-b-3-1.out + git-imerge merge --branch=a-into-b-3 a Attempting automerge of 4-3...success. Autofilling 1-3...success. Autofilling 2-3...success. Autofilling 3-3...unexpected conflict. Backtracking... Autofilling 1-3...success. Autofilling 2-1...success. Autofilling 2-2...success. Autofilling 2-3 (first way)...success. Autofilling 2-3 (second way)...success. The two ways of autofilling 2-3 agree. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[0:3,0:4]. Autofilling 3-2...unexpected conflict. Backtracking... Autofilling 3-1...unexpected conflict. Backtracking... Switched to branch 'imerge/a' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit d40495ed379f376841e517047f90b663e8c7c7e1 Author: Loú User Date: Thu Apr 7 22:13:20 2005 +0000 b⇒3 and a⇒X on branch b Original second commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a There was a conflict merging commit 3-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b *?.#? *?.?? 3 - *..?? | a 0 4 | | 0 - ***** - b *?|#? *?|?? 3 - *-+?? | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 3-1' imerge-a-into-b-3-1.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-a-into-b-3-2.out [imerge/a e6160a8] imerge 'a': manual merge 3-1 Merge has been recorded for merge 3-1. Attempting automerge of 3-3...success. Autofilling 3-2...success. Autofilling 3-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[2:4,1:4]. Attempting automerge of 4-3...failure. Attempting automerge of 4-1...failure. Switched to branch 'imerge/a' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit eb736f2ae81944f79f443fd39a89adf74dbc907a Author: Loú User Date: Thu Apr 7 22:13:21 2005 +0000 b⇒4 and a⇒0 on branch b Original second commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a There was a conflict merging commit 4-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b *?.*# *?..? 3 - *...? | a 0 4 | | 0 - ***** - b *?.*# *?.|? 3 - *--+? | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q 'There was a conflict merging commit 4-1' imerge-a-into-b-3-2.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-a-into-b-3-3.out [imerge/a ad75296] imerge 'a': manual merge 4-1 Merge has been recorded for merge 4-1. Attempting automerge of 4-3...success. Autofilling 4-2...success. Autofilling 4-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[3:5,1:4]. Merge is complete! + grep -q 'Merge is complete' imerge-a-into-b-3-3.out + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b *?.** *?... 3 - *.... | a 0 4 | | 0 - ***** - b *?.** *?..| 3 - *---+ | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + GIT_EDITOR=cat + git-imerge finish Merge a into b (using imerge) # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Mon May 20 10:33:42 2024 +0000 # # On branch a-into-b-3 # Changes to be committed: # modified: a.txt # [a-into-b-3 f2f69bb] Merge a into b (using imerge) Date: Mon May 20 10:33:42 2024 +0000 py311 run-test: commands[5] | /bin/sh t/test-drop ++++ dirname t/test-drop +++ cd t +++ pwd ++ dirname /build/git-imerge-1.2.0/t + BASE=/build/git-imerge-1.2.0 + . /build/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + TMP=/build/git-imerge-1.2.0/t/tmp/drop + DESCRIPTION='git-imerge drop test repository' + init_test_repo /build/git-imerge-1.2.0/t/tmp/drop 'git-imerge drop test repository' + local path=/build/git-imerge-1.2.0/t/tmp/drop + local 'description=git-imerge drop test repository' + delete_test_repo /build/git-imerge-1.2.0/t/tmp/drop 'git-imerge drop test repository' + local path=/build/git-imerge-1.2.0/t/tmp/drop + local 'description=git-imerge drop test repository' + test -d /build/git-imerge-1.2.0/t/tmp/drop + mkdir -p /build/git-imerge-1.2.0/t/tmp/drop + git init /build/git-imerge-1.2.0/t/tmp/drop hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /build/git-imerge-1.2.0/t/tmp/drop/.git/ + echo 'git-imerge drop test repository' + printf '%s\n' '/*.out' '/*.css' '/*.html' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/drop/.git config user.name 'Loú User' + git --git-dir=/build/git-imerge-1.2.0/t/tmp/drop/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/git-imerge-1.2.0/imerge.css /build/git-imerge-1.2.0/t/tmp/drop + cd /build/git-imerge-1.2.0/t/tmp/drop + modify a.txt 0 + filename=a.txt + text=0 + echo 0 + git add a.txt + commit -m $'m\342\207\2220' + TIME=1112911994 + GIT_AUTHOR_DATE='@1112911994 +0000' + GIT_COMMITTER_DATE='@1112911994 +0000' + git commit -m $'m\342\207\2220' [master (root-commit) a733afa] m⇒0 1 file changed, 1 insertion(+) create mode 100644 a.txt ++ seq 6 + for i in $(seq 6) + modify a1.txt 1 + filename=a1.txt + text=1 + echo 1 + git add a1.txt + commit -m $'a1\342\207\2221' + TIME=1112911995 + GIT_AUTHOR_DATE='@1112911995 +0000' + GIT_COMMITTER_DATE='@1112911995 +0000' + git commit -m $'a1\342\207\2221' [master 389a4ba] a1⇒1 1 file changed, 1 insertion(+) create mode 100644 a1.txt + for i in $(seq 6) + modify a2.txt 2 + filename=a2.txt + text=2 + echo 2 + git add a2.txt + commit -m $'a2\342\207\2222' + TIME=1112911996 + GIT_AUTHOR_DATE='@1112911996 +0000' + GIT_COMMITTER_DATE='@1112911996 +0000' + git commit -m $'a2\342\207\2222' [master 4785218] a2⇒2 1 file changed, 1 insertion(+) create mode 100644 a2.txt + for i in $(seq 6) + modify a3.txt 3 + filename=a3.txt + text=3 + echo 3 + git add a3.txt + commit -m $'a3\342\207\2223' + TIME=1112911997 + GIT_AUTHOR_DATE='@1112911997 +0000' + GIT_COMMITTER_DATE='@1112911997 +0000' + git commit -m $'a3\342\207\2223' [master 34bdde3] a3⇒3 1 file changed, 1 insertion(+) create mode 100644 a3.txt + for i in $(seq 6) + modify a4.txt 4 + filename=a4.txt + text=4 + echo 4 + git add a4.txt + commit -m $'a4\342\207\2224' + TIME=1112911998 + GIT_AUTHOR_DATE='@1112911998 +0000' + GIT_COMMITTER_DATE='@1112911998 +0000' + git commit -m $'a4\342\207\2224' [master c793a5a] a4⇒4 1 file changed, 1 insertion(+) create mode 100644 a4.txt + for i in $(seq 6) + modify a5.txt 5 + filename=a5.txt + text=5 + echo 5 + git add a5.txt + commit -m $'a5\342\207\2225' + TIME=1112911999 + GIT_AUTHOR_DATE='@1112911999 +0000' + GIT_COMMITTER_DATE='@1112911999 +0000' + git commit -m $'a5\342\207\2225' [master b42f60c] a5⇒5 1 file changed, 1 insertion(+) create mode 100644 a5.txt + for i in $(seq 6) + modify a6.txt 6 + filename=a6.txt + text=6 + echo 6 + git add a6.txt + commit -m $'a6\342\207\2226' + TIME=1112912000 + GIT_AUTHOR_DATE='@1112912000 +0000' + GIT_COMMITTER_DATE='@1112912000 +0000' + git commit -m $'a6\342\207\2226' [master 9d6aec5] a6⇒6 1 file changed, 1 insertion(+) create mode 100644 a6.txt + git checkout -b dropped master Switched to a new branch 'dropped' + git-imerge drop HEAD~5..HEAD~3 Note: switching to '34bdde3a6a5b6b9c8bcac5aa36109195e2a3dc7a^0'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 34bdde3 a3⇒3 [detached HEAD 4f1e7cd] Revert "a3⇒3" Date: Mon May 20 10:33:43 2024 +0000 1 file changed, 1 deletion(-) delete mode 100644 a3.txt [detached HEAD bf51dc0] Revert "a2⇒2" Date: Mon May 20 10:33:43 2024 +0000 1 file changed, 1 deletion(-) delete mode 100644 a2.txt Attempting automerge of 3-2...success. Autofilling 1-2...success. Autofilling 2-2...success. Autofilling 3-1...success. Autofilling 3-2 (first way)...success. Autofilling 3-2 (second way)...success. The two ways of autofilling 3-2 agree. Recording autofilled block MergeState('dropped', tip1='dropped', tip2='bf51dc0eeb309bd68a2fcc8dc888065f5d4940ab', goal='drop')[0:4,0:3]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge-drop.html 0 3 | | 0 - **** - dropped *??. 2 - *... | bf51dc0eeb309bd68a2fcc8dc888065f5d4940ab 0 3 | | 0 - **** - dropped *??| 2 - *--+ | bf51dc0eeb309bd68a2fcc8dc888065f5d4940ab Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish + check_tree dropped 3b92d9e80adb5b542a651863e6853ff5de9e496b + local refname=dropped + local expected_tree=3b92d9e80adb5b542a651863e6853ff5de9e496b ++ git rev-parse 'dropped^{tree}' + test 3b92d9e80adb5b542a651863e6853ff5de9e496b = 3b92d9e80adb5b542a651863e6853ff5de9e496b + git checkout -b reverted master Switched to a new branch 'reverted' + git-imerge revert HEAD~5..HEAD~3 Note: switching to '34bdde3a6a5b6b9c8bcac5aa36109195e2a3dc7a^0'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 34bdde3 a3⇒3 [detached HEAD 859fe9f] Revert "a3⇒3" Date: Mon May 20 10:33:44 2024 +0000 1 file changed, 1 deletion(-) delete mode 100644 a3.txt [detached HEAD decde1e] Revert "a2⇒2" Date: Mon May 20 10:33:44 2024 +0000 1 file changed, 1 deletion(-) delete mode 100644 a2.txt Attempting automerge of 3-2...success. Autofilling 1-2...success. Autofilling 2-2...success. Autofilling 3-1...success. Autofilling 3-2 (first way)...success. Autofilling 3-2 (second way)...success. The two ways of autofilling 3-2 agree. Recording autofilled block MergeState('reverted', tip1='reverted', tip2='decde1eddf6f85709965b6f3003fb8539eee3e4d', goal='revert')[0:4,0:3]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge-revert.html 0 3 | | 0 - **** - reverted *??. 2 - *... | decde1eddf6f85709965b6f3003fb8539eee3e4d 0 3 | | 0 - **** - reverted *??| 2 - *--+ | decde1eddf6f85709965b6f3003fb8539eee3e4d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish + check_tree reverted 3b92d9e80adb5b542a651863e6853ff5de9e496b + local refname=reverted + local expected_tree=3b92d9e80adb5b542a651863e6853ff5de9e496b ++ git rev-parse 'reverted^{tree}' + test 3b92d9e80adb5b542a651863e6853ff5de9e496b = 3b92d9e80adb5b542a651863e6853ff5de9e496b ___________________________________ summary ____________________________________ py311: commands succeeded congratulations :) create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=pybuild dh_prep -O--buildsystem=pybuild dh_auto_install --destdir=debian/git-imerge/ -O--buildsystem=pybuild I: pybuild base:240: /usr/bin/python3 setup.py install --root /build/git-imerge-1.2.0/debian/git-imerge running install /usr/lib/python3/dist-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools. warnings.warn( running build running build_py running install_lib creating /build/git-imerge-1.2.0/debian/git-imerge/usr creating /build/git-imerge-1.2.0/debian/git-imerge/usr/lib creating /build/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.11 creating /build/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.11/dist-packages copying /build/git-imerge-1.2.0/.pybuild/cpython3_3.11/build/gitimerge.py -> /build/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.11/dist-packages byte-compiling /build/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.11/dist-packages/gitimerge.py to gitimerge.cpython-311.pyc running install_data creating /build/git-imerge-1.2.0/debian/git-imerge/usr/share creating /build/git-imerge-1.2.0/debian/git-imerge/usr/share/bash-completion creating /build/git-imerge-1.2.0/debian/git-imerge/usr/share/bash-completion/completions copying completions/git-imerge -> /build/git-imerge-1.2.0/debian/git-imerge/usr/share/bash-completion/completions running install_egg_info running egg_info writing git_imerge.egg-info/PKG-INFO writing dependency_links to git_imerge.egg-info/dependency_links.txt writing entry points to git_imerge.egg-info/entry_points.txt writing top-level names to git_imerge.egg-info/top_level.txt reading manifest file 'git_imerge.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'COPYING' writing manifest file 'git_imerge.egg-info/SOURCES.txt' Copying git_imerge.egg-info to /build/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.11/dist-packages/git_imerge-1.2.0.egg-info Skipping SOURCES.txt running install_scripts Installing git-imerge script to /build/git-imerge-1.2.0/debian/git-imerge/usr/bin dh_installdocs -O--buildsystem=pybuild dh_installchangelogs -O--buildsystem=pybuild dh_python3 -O--buildsystem=pybuild dh_installsystemduser -O--buildsystem=pybuild dh_perl -O--buildsystem=pybuild dh_link -O--buildsystem=pybuild dh_strip_nondeterminism -O--buildsystem=pybuild dh_compress -O--buildsystem=pybuild dh_fixperms -O--buildsystem=pybuild dh_missing -O--buildsystem=pybuild dh_installdeb -O--buildsystem=pybuild dh_gencontrol -O--buildsystem=pybuild dh_md5sums -O--buildsystem=pybuild dh_builddeb -O--buildsystem=pybuild dpkg-deb: building package 'git-imerge' in '../git-imerge_1.2.0-3_all.deb'. dpkg-genbuildinfo --build=binary -O../git-imerge_1.2.0-3_arm64.buildinfo dpkg-genchanges --build=binary -O../git-imerge_1.2.0-3_arm64.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: user script /srv/workspace/pbuilder/11422/tmp/hooks/B01_cleanup starting I: user script /srv/workspace/pbuilder/11422/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/11422 and its subdirectories I: Current time: Tue May 21 00:33:57 +14 2024 I: pbuilder-time-stamp: 1716201237