I: pbuilder: network access will be disabled during build I: Current time: Mon Aug 16 20:13:24 +14 2021 I: pbuilder-time-stamp: 1629094404 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/bullseye-reproducible-base.tgz] I: copying local configuration 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: unknown type of key resource 'trustedkeys.kbx' gpgv: keyblock resource '/tmp/dpkg-verify-sig.VFTcmgID/trustedkeys.kbx': General error 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: failed to verify signature on ./git-imerge_1.2.0-3.dsc 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/8249/tmp/hooks/D01_modify_environment starting debug: Running on virt64b. 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 Removing 'diversion of /bin/sh to /bin/sh.distrib by dash' Adding 'diversion of /bin/sh to /bin/sh.distrib by bash' Removing 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash' Adding 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by 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/8249/tmp/hooks/D01_modify_environment finished I: user script /srv/workspace/pbuilder/8249/tmp/hooks/D02_print_environment starting I: set BASH=/bin/sh BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath BASH_ALIASES=() BASH_ARGC=() BASH_ARGV=() BASH_CMDS=() BASH_LINENO=([0]="12" [1]="0") BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") BASH_VERSINFO=([0]="5" [1]="1" [2]="4" [3]="1" [4]="release" [5]="arm-unknown-linux-gnueabihf") BASH_VERSION='5.1.4(1)-release' BUILDDIR=/build BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' BUILDUSERNAME=pbuilder2 BUILD_ARCH=armhf DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all,-fixfilepath parallel=4' DIRSTACK=() DISTRIBUTION= EUID=0 FUNCNAME=([0]="Echo" [1]="main") GROUPS=() HOME=/root HOSTNAME=i-capture-the-hostname HOSTTYPE=arm HOST_ARCH=armhf IFS=' ' INVOCATION_ID=938e28d254ce424f9c13448b5ce1a001 LANG=C LANGUAGE=it_CH:it LC_ALL=C MACHTYPE=arm-unknown-linux-gnueabihf MAIL=/var/mail/root OPTERR=1 OPTIND=1 OSTYPE=linux-gnueabihf 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=8249 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/tmp.pP9Ew1Mfy0/pbuilderrc_W8gK --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bullseye-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/tmp.pP9Ew1Mfy0/b2 --logfile b2/build.log --extrapackages usrmerge git-imerge_1.2.0-3.dsc' SUDO_GID=113 SUDO_UID=107 SUDO_USER=jenkins TERM=unknown TZ=/usr/share/zoneinfo/Etc/GMT-14 UID=0 USER=root _='I: set' http_proxy=http://10.0.0.15:8000/ I: uname -a Linux i-capture-the-hostname 5.10.0-8-arm64 #1 SMP Debian 5.10.46-4 (2021-08-03) aarch64 GNU/Linux I: ls -l /bin total 3580 -rwxr-xr-x 1 root root 816764 Aug 5 10:25 bash -rwxr-xr-x 3 root root 26052 Jul 21 2020 bunzip2 -rwxr-xr-x 3 root root 26052 Jul 21 2020 bzcat lrwxrwxrwx 1 root root 6 Jul 21 2020 bzcmp -> bzdiff -rwxr-xr-x 1 root root 2225 Jul 21 2020 bzdiff lrwxrwxrwx 1 root root 6 Jul 21 2020 bzegrep -> bzgrep -rwxr-xr-x 1 root root 4877 Sep 5 2019 bzexe lrwxrwxrwx 1 root root 6 Jul 21 2020 bzfgrep -> bzgrep -rwxr-xr-x 1 root root 3775 Jul 21 2020 bzgrep -rwxr-xr-x 3 root root 26052 Jul 21 2020 bzip2 -rwxr-xr-x 1 root root 9636 Jul 21 2020 bzip2recover lrwxrwxrwx 1 root root 6 Jul 21 2020 bzless -> bzmore -rwxr-xr-x 1 root root 1297 Jul 21 2020 bzmore -rwxr-xr-x 1 root root 26668 Sep 23 2020 cat -rwxr-xr-x 1 root root 43104 Sep 23 2020 chgrp -rwxr-xr-x 1 root root 38984 Sep 23 2020 chmod -rwxr-xr-x 1 root root 43112 Sep 23 2020 chown -rwxr-xr-x 1 root root 92616 Sep 23 2020 cp -rwxr-xr-x 1 root root 75524 Dec 11 2020 dash -rwxr-xr-x 1 root root 75880 Sep 23 2020 date -rwxr-xr-x 1 root root 55436 Sep 23 2020 dd -rwxr-xr-x 1 root root 59912 Sep 23 2020 df -rwxr-xr-x 1 root root 96764 Sep 23 2020 dir -rwxr-xr-x 1 root root 55012 Jul 29 09:09 dmesg lrwxrwxrwx 1 root root 8 Nov 8 2019 dnsdomainname -> hostname lrwxrwxrwx 1 root root 8 Nov 8 2019 domainname -> hostname -rwxr-xr-x 1 root root 22508 Sep 23 2020 echo -rwxr-xr-x 1 root root 28 Nov 10 2020 egrep -rwxr-xr-x 1 root root 22496 Sep 23 2020 false -rwxr-xr-x 1 root root 28 Nov 10 2020 fgrep -rwxr-xr-x 1 root root 47492 Jul 29 09:09 findmnt -rwsr-xr-x 1 root root 26076 Feb 27 06:12 fusermount -rwxr-xr-x 1 root root 124508 Nov 10 2020 grep -rwxr-xr-x 2 root root 2346 Mar 3 13:30 gunzip -rwxr-xr-x 1 root root 6376 Mar 3 13:30 gzexe -rwxr-xr-x 1 root root 64212 Mar 3 13:30 gzip -rwxr-xr-x 1 root root 13784 Nov 8 2019 hostname -rwxr-xr-x 1 root root 43180 Sep 23 2020 ln -rwxr-xr-x 1 root root 35068 Feb 8 2020 login -rwxr-xr-x 1 root root 96764 Sep 23 2020 ls -rwxr-xr-x 1 root root 99940 Jul 29 09:09 lsblk -rwxr-xr-x 1 root root 51408 Sep 23 2020 mkdir -rwxr-xr-x 1 root root 43184 Sep 23 2020 mknod -rwxr-xr-x 1 root root 30780 Sep 23 2020 mktemp -rwxr-xr-x 1 root root 34408 Jul 29 09:09 more -rwsr-xr-x 1 root root 34400 Jul 29 09:09 mount -rwxr-xr-x 1 root root 9824 Jul 29 09:09 mountpoint -rwxr-xr-x 1 root root 88524 Sep 23 2020 mv lrwxrwxrwx 1 root root 8 Nov 8 2019 nisdomainname -> hostname lrwxrwxrwx 1 root root 14 Apr 19 05:38 pidof -> /sbin/killall5 -rwxr-xr-x 1 root root 26652 Sep 23 2020 pwd lrwxrwxrwx 1 root root 4 Aug 5 10:25 rbash -> bash -rwxr-xr-x 1 root root 30740 Sep 23 2020 readlink -rwxr-xr-x 1 root root 43104 Sep 23 2020 rm -rwxr-xr-x 1 root root 30732 Sep 23 2020 rmdir -rwxr-xr-x 1 root root 14144 Sep 28 2020 run-parts -rwxr-xr-x 1 root root 76012 Dec 23 2018 sed lrwxrwxrwx 1 root root 4 Aug 16 20:13 sh -> bash lrwxrwxrwx 1 root root 4 Aug 15 23:25 sh.distrib -> dash -rwxr-xr-x 1 root root 22532 Sep 23 2020 sleep -rwxr-xr-x 1 root root 55360 Sep 23 2020 stty -rwsr-xr-x 1 root root 46704 Jul 29 09:09 su -rwxr-xr-x 1 root root 22532 Sep 23 2020 sync -rwxr-xr-x 1 root root 340872 Feb 17 23:55 tar -rwxr-xr-x 1 root root 9808 Sep 28 2020 tempfile -rwxr-xr-x 1 root root 67696 Sep 23 2020 touch -rwxr-xr-x 1 root root 22496 Sep 23 2020 true -rwxr-xr-x 1 root root 9636 Feb 27 06:12 ulockmgr_server -rwsr-xr-x 1 root root 22108 Jul 29 09:09 umount -rwxr-xr-x 1 root root 22520 Sep 23 2020 uname -rwxr-xr-x 2 root root 2346 Mar 3 13:30 uncompress -rwxr-xr-x 1 root root 96764 Sep 23 2020 vdir -rwxr-xr-x 1 root root 38512 Jul 29 09:09 wdctl lrwxrwxrwx 1 root root 8 Nov 8 2019 ypdomainname -> hostname -rwxr-xr-x 1 root root 1984 Mar 3 13:30 zcat -rwxr-xr-x 1 root root 1678 Mar 3 13:30 zcmp -rwxr-xr-x 1 root root 5880 Mar 3 13:30 zdiff -rwxr-xr-x 1 root root 29 Mar 3 13:30 zegrep -rwxr-xr-x 1 root root 29 Mar 3 13:30 zfgrep -rwxr-xr-x 1 root root 2081 Mar 3 13:30 zforce -rwxr-xr-x 1 root root 7585 Mar 3 13:30 zgrep -rwxr-xr-x 1 root root 2206 Mar 3 13:30 zless -rwxr-xr-x 1 root root 1842 Mar 3 13:30 zmore -rwxr-xr-x 1 root root 4553 Mar 3 13:30 znew I: user script /srv/workspace/pbuilder/8249/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: armhf 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 ... 19398 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} libglib2.0-0{a} libicu67{a} libjs-jquery{a} libjs-sphinxdoc{a} libjs-underscore{a} libldap-2.4-2{a} libmagic-mgc{a} libmagic1{a} libmpdec3{a} libnghttp2-14{a} libpipeline1{a} libpsl5{a} libpython3-stdlib{a} libpython3.9-minimal{a} libpython3.9-stdlib{a} libreadline8{a} librtmp1{a} libsasl2-2{a} libsasl2-modules-db{a} libsigsegv2{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} po-debconf{a} python-pip-whl{a} python3{a} python3-appdirs{a} python3-distlib{a} python3-distutils{a} python3-filelock{a} python3-importlib-metadata{a} python3-lib2to3{a} python3-minimal{a} python3-more-itertools{a} python3-packaging{a} python3-pip{a} python3-pkg-resources{a} python3-pluggy{a} python3-py{a} python3-pyparsing{a} python3-setuptools{a} python3-six{a} python3-toml{a} python3-virtualenv{a} python3-wheel{a} python3-zipp{a} python3.9{a} python3.9-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 libglib2.0-data libldap-common libltdl-dev libmail-sendmail-perl libsasl2-modules lynx openssh-client publicsuffix python3-dev shared-mime-info wget xdg-user-dirs 0 packages upgraded, 85 newly installed, 0 to remove and 0 not upgraded. Need to get 38.1 MB of archives. After unpacking 132 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian bullseye/main armhf bsdextrautils armhf 2.36.1-8 [138 kB] Get: 2 http://deb.debian.org/debian bullseye/main armhf libuchardet0 armhf 0.0.7-1 [65.0 kB] Get: 3 http://deb.debian.org/debian bullseye/main armhf groff-base armhf 1.22.4-6 [847 kB] Get: 4 http://deb.debian.org/debian bullseye/main armhf libpipeline1 armhf 1.5.3-1 [30.1 kB] Get: 5 http://deb.debian.org/debian bullseye/main armhf man-db armhf 2.9.4-2 [1319 kB] Get: 6 http://deb.debian.org/debian bullseye/main armhf libpython3.9-minimal armhf 3.9.2-1 [790 kB] Get: 7 http://deb.debian.org/debian bullseye/main armhf libexpat1 armhf 2.2.10-2 [76.3 kB] Get: 8 http://deb.debian.org/debian bullseye/main armhf python3.9-minimal armhf 3.9.2-1 [1630 kB] Get: 9 http://deb.debian.org/debian bullseye/main armhf python3-minimal armhf 3.9.2-3 [38.2 kB] Get: 10 http://deb.debian.org/debian bullseye/main armhf media-types all 4.0.0 [30.3 kB] Get: 11 http://deb.debian.org/debian bullseye/main armhf libmpdec3 armhf 2.5.1-1 [74.9 kB] Get: 12 http://deb.debian.org/debian bullseye/main armhf readline-common all 8.1-1 [73.7 kB] Get: 13 http://deb.debian.org/debian bullseye/main armhf libreadline8 armhf 8.1-1 [147 kB] Get: 14 http://deb.debian.org/debian bullseye/main armhf libpython3.9-stdlib armhf 3.9.2-1 [1608 kB] Get: 15 http://deb.debian.org/debian bullseye/main armhf python3.9 armhf 3.9.2-1 [466 kB] Get: 16 http://deb.debian.org/debian bullseye/main armhf libpython3-stdlib armhf 3.9.2-3 [21.4 kB] Get: 17 http://deb.debian.org/debian bullseye/main armhf python3 armhf 3.9.2-3 [37.9 kB] Get: 18 http://deb.debian.org/debian bullseye/main armhf sensible-utils all 0.0.14 [14.8 kB] Get: 19 http://deb.debian.org/debian bullseye/main armhf bash-completion all 1:2.11-2 [234 kB] Get: 20 http://deb.debian.org/debian bullseye/main armhf openssl armhf 1.1.1k-1 [826 kB] Get: 21 http://deb.debian.org/debian bullseye/main armhf ca-certificates all 20210119 [158 kB] Get: 22 http://deb.debian.org/debian bullseye/main armhf libmagic-mgc armhf 1:5.39-3 [273 kB] Get: 23 http://deb.debian.org/debian bullseye/main armhf libmagic1 armhf 1:5.39-3 [117 kB] Get: 24 http://deb.debian.org/debian bullseye/main armhf file armhf 1:5.39-3 [68.1 kB] Get: 25 http://deb.debian.org/debian bullseye/main armhf gettext-base armhf 0.21-4 [171 kB] Get: 26 http://deb.debian.org/debian bullseye/main armhf libsigsegv2 armhf 2.13-1 [34.0 kB] Get: 27 http://deb.debian.org/debian bullseye/main armhf m4 armhf 1.4.18-5 [192 kB] Get: 28 http://deb.debian.org/debian bullseye/main armhf autoconf all 2.69-14 [313 kB] Get: 29 http://deb.debian.org/debian bullseye/main armhf autotools-dev all 20180224.1+nmu1 [77.1 kB] Get: 30 http://deb.debian.org/debian bullseye/main armhf automake all 1:1.16.3-2 [814 kB] Get: 31 http://deb.debian.org/debian bullseye/main armhf autopoint all 0.21-4 [510 kB] Get: 32 http://deb.debian.org/debian bullseye/main armhf libdebhelper-perl all 13.3.4 [189 kB] Get: 33 http://deb.debian.org/debian bullseye/main armhf libtool all 2.4.6-15 [513 kB] Get: 34 http://deb.debian.org/debian bullseye/main armhf dh-autoreconf all 20 [17.1 kB] Get: 35 http://deb.debian.org/debian bullseye/main armhf libarchive-zip-perl all 1.68-1 [104 kB] Get: 36 http://deb.debian.org/debian bullseye/main armhf libsub-override-perl all 0.09-2 [10.2 kB] Get: 37 http://deb.debian.org/debian bullseye/main armhf libfile-stripnondeterminism-perl all 1.12.0-1 [26.3 kB] Get: 38 http://deb.debian.org/debian bullseye/main armhf dh-strip-nondeterminism all 1.12.0-1 [15.4 kB] Get: 39 http://deb.debian.org/debian bullseye/main armhf libelf1 armhf 0.183-1 [161 kB] Get: 40 http://deb.debian.org/debian bullseye/main armhf dwz armhf 0.13+20210201-1 [179 kB] Get: 41 http://deb.debian.org/debian bullseye/main armhf libicu67 armhf 67.1-7 [8319 kB] Get: 42 http://deb.debian.org/debian bullseye/main armhf libxml2 armhf 2.9.10+dfsg-6.7 [602 kB] Get: 43 http://deb.debian.org/debian bullseye/main armhf gettext armhf 0.21-4 [1243 kB] Get: 44 http://deb.debian.org/debian bullseye/main armhf intltool-debian all 0.35.0+20060710.5 [26.8 kB] Get: 45 http://deb.debian.org/debian bullseye/main armhf po-debconf all 1.0.21+nmu1 [248 kB] Get: 46 http://deb.debian.org/debian bullseye/main armhf debhelper all 13.3.4 [1049 kB] Get: 47 http://deb.debian.org/debian bullseye/main armhf python3-lib2to3 all 3.9.2-1 [77.8 kB] Get: 48 http://deb.debian.org/debian bullseye/main armhf python3-distutils all 3.9.2-1 [143 kB] Get: 49 http://deb.debian.org/debian bullseye/main armhf dh-python all 4.20201102+nmu1 [99.4 kB] Get: 50 http://deb.debian.org/debian bullseye/main armhf libbrotli1 armhf 1.0.9-2+b2 [262 kB] Get: 51 http://deb.debian.org/debian bullseye/main armhf libsasl2-modules-db armhf 2.1.27+dfsg-2.1 [67.6 kB] Get: 52 http://deb.debian.org/debian bullseye/main armhf libsasl2-2 armhf 2.1.27+dfsg-2.1 [99.1 kB] Get: 53 http://deb.debian.org/debian bullseye/main armhf libldap-2.4-2 armhf 2.4.57+dfsg-3 [210 kB] Get: 54 http://deb.debian.org/debian bullseye/main armhf libnghttp2-14 armhf 1.43.0-1 [65.6 kB] Get: 55 http://deb.debian.org/debian bullseye/main armhf libpsl5 armhf 0.21.0-1.2 [56.1 kB] Get: 56 http://deb.debian.org/debian bullseye/main armhf librtmp1 armhf 2.4+20151223.gitfa8646d.1-2+b2 [55.2 kB] Get: 57 http://deb.debian.org/debian bullseye/main armhf libssh2-1 armhf 1.9.0-2 [143 kB] Get: 58 http://deb.debian.org/debian bullseye/main armhf libcurl3-gnutls armhf 7.74.0-1.3+b1 [306 kB] Get: 59 http://deb.debian.org/debian bullseye/main armhf liberror-perl all 0.17029-1 [31.0 kB] Get: 60 http://deb.debian.org/debian bullseye/main armhf git-man all 1:2.30.2-1 [1827 kB] Get: 61 http://deb.debian.org/debian bullseye/main armhf git armhf 1:2.30.2-1 [5128 kB] Get: 62 http://deb.debian.org/debian bullseye/main armhf libglib2.0-0 armhf 2.66.8-1 [1206 kB] Get: 63 http://deb.debian.org/debian bullseye/main armhf libjs-jquery all 3.5.1+dfsg+~3.5.5-7 [315 kB] Get: 64 http://deb.debian.org/debian bullseye/main armhf libjs-underscore all 1.9.1~dfsg-3 [100 kB] Get: 65 http://deb.debian.org/debian bullseye/main armhf libjs-sphinxdoc all 3.4.3-2 [127 kB] Get: 66 http://deb.debian.org/debian bullseye/main armhf pkg-config armhf 0.29.2-1 [62.4 kB] Get: 67 http://deb.debian.org/debian bullseye/main armhf python-pip-whl all 20.3.4-4 [1948 kB] Get: 68 http://deb.debian.org/debian bullseye/main armhf python3-appdirs all 1.4.4-1 [12.7 kB] Get: 69 http://deb.debian.org/debian bullseye/main armhf python3-distlib all 0.3.2+really+0.3.1-0.1 [123 kB] Get: 70 http://deb.debian.org/debian bullseye/main armhf python3-filelock all 3.0.12-2 [8036 B] Get: 71 http://deb.debian.org/debian bullseye/main armhf python3-six all 1.16.0-2 [17.5 kB] Get: 72 http://deb.debian.org/debian bullseye/main armhf python3-more-itertools all 4.2.0-3 [42.7 kB] Get: 73 http://deb.debian.org/debian bullseye/main armhf python3-zipp all 1.0.0-3 [6060 B] Get: 74 http://deb.debian.org/debian bullseye/main armhf python3-importlib-metadata all 1.6.0-2 [10.3 kB] Get: 75 http://deb.debian.org/debian bullseye/main armhf python3-pyparsing all 2.4.7-1 [109 kB] Get: 76 http://deb.debian.org/debian bullseye/main armhf python3-packaging all 20.9-2 [33.5 kB] Get: 77 http://deb.debian.org/debian bullseye/main armhf python3-pkg-resources all 52.0.0-4 [190 kB] Get: 78 http://deb.debian.org/debian bullseye/main armhf python3-setuptools all 52.0.0-4 [366 kB] Get: 79 http://deb.debian.org/debian bullseye/main armhf python3-wheel all 0.34.2-1 [24.0 kB] Get: 80 http://deb.debian.org/debian bullseye/main armhf python3-pip all 20.3.4-4 [337 kB] Get: 81 http://deb.debian.org/debian bullseye/main armhf python3-pluggy all 0.13.0-6 [22.3 kB] Get: 82 http://deb.debian.org/debian bullseye/main armhf python3-py all 1.10.0-1 [94.2 kB] Get: 83 http://deb.debian.org/debian bullseye/main armhf python3-toml all 0.10.1-1 [15.9 kB] Get: 84 http://deb.debian.org/debian bullseye/main armhf python3-virtualenv all 20.4.0+ds-2 [89.0 kB] Get: 85 http://deb.debian.org/debian bullseye/main armhf tox all 3.21.4-1 [359 kB] Fetched 38.1 MB in 6s (5978 kB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package bsdextrautils. (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 ... 19398 files and directories currently installed.) Preparing to unpack .../0-bsdextrautils_2.36.1-8_armhf.deb ... Unpacking bsdextrautils (2.36.1-8) ... Selecting previously unselected package libuchardet0:armhf. Preparing to unpack .../1-libuchardet0_0.0.7-1_armhf.deb ... Unpacking libuchardet0:armhf (0.0.7-1) ... Selecting previously unselected package groff-base. Preparing to unpack .../2-groff-base_1.22.4-6_armhf.deb ... Unpacking groff-base (1.22.4-6) ... Selecting previously unselected package libpipeline1:armhf. Preparing to unpack .../3-libpipeline1_1.5.3-1_armhf.deb ... Unpacking libpipeline1:armhf (1.5.3-1) ... Selecting previously unselected package man-db. Preparing to unpack .../4-man-db_2.9.4-2_armhf.deb ... Unpacking man-db (2.9.4-2) ... Selecting previously unselected package libpython3.9-minimal:armhf. Preparing to unpack .../5-libpython3.9-minimal_3.9.2-1_armhf.deb ... Unpacking libpython3.9-minimal:armhf (3.9.2-1) ... Selecting previously unselected package libexpat1:armhf. Preparing to unpack .../6-libexpat1_2.2.10-2_armhf.deb ... Unpacking libexpat1:armhf (2.2.10-2) ... Selecting previously unselected package python3.9-minimal. Preparing to unpack .../7-python3.9-minimal_3.9.2-1_armhf.deb ... Unpacking python3.9-minimal (3.9.2-1) ... Setting up libpython3.9-minimal:armhf (3.9.2-1) ... Setting up libexpat1:armhf (2.2.10-2) ... Setting up python3.9-minimal (3.9.2-1) ... 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 ... 20265 files and directories currently installed.) Preparing to unpack .../0-python3-minimal_3.9.2-3_armhf.deb ... Unpacking python3-minimal (3.9.2-3) ... Selecting previously unselected package media-types. Preparing to unpack .../1-media-types_4.0.0_all.deb ... Unpacking media-types (4.0.0) ... Selecting previously unselected package libmpdec3:armhf. Preparing to unpack .../2-libmpdec3_2.5.1-1_armhf.deb ... Unpacking libmpdec3:armhf (2.5.1-1) ... Selecting previously unselected package readline-common. Preparing to unpack .../3-readline-common_8.1-1_all.deb ... Unpacking readline-common (8.1-1) ... Selecting previously unselected package libreadline8:armhf. Preparing to unpack .../4-libreadline8_8.1-1_armhf.deb ... Unpacking libreadline8:armhf (8.1-1) ... Selecting previously unselected package libpython3.9-stdlib:armhf. Preparing to unpack .../5-libpython3.9-stdlib_3.9.2-1_armhf.deb ... Unpacking libpython3.9-stdlib:armhf (3.9.2-1) ... Selecting previously unselected package python3.9. Preparing to unpack .../6-python3.9_3.9.2-1_armhf.deb ... Unpacking python3.9 (3.9.2-1) ... Selecting previously unselected package libpython3-stdlib:armhf. Preparing to unpack .../7-libpython3-stdlib_3.9.2-3_armhf.deb ... Unpacking libpython3-stdlib:armhf (3.9.2-3) ... Setting up python3-minimal (3.9.2-3) ... 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 ... 20686 files and directories currently installed.) Preparing to unpack .../00-python3_3.9.2-3_armhf.deb ... Unpacking python3 (3.9.2-3) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../01-sensible-utils_0.0.14_all.deb ... Unpacking sensible-utils (0.0.14) ... Selecting previously unselected package bash-completion. Preparing to unpack .../02-bash-completion_1%3a2.11-2_all.deb ... Unpacking bash-completion (1:2.11-2) ... Selecting previously unselected package openssl. Preparing to unpack .../03-openssl_1.1.1k-1_armhf.deb ... Unpacking openssl (1.1.1k-1) ... Selecting previously unselected package ca-certificates. Preparing to unpack .../04-ca-certificates_20210119_all.deb ... Unpacking ca-certificates (20210119) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../05-libmagic-mgc_1%3a5.39-3_armhf.deb ... Unpacking libmagic-mgc (1:5.39-3) ... Selecting previously unselected package libmagic1:armhf. Preparing to unpack .../06-libmagic1_1%3a5.39-3_armhf.deb ... Unpacking libmagic1:armhf (1:5.39-3) ... Selecting previously unselected package file. Preparing to unpack .../07-file_1%3a5.39-3_armhf.deb ... Unpacking file (1:5.39-3) ... Selecting previously unselected package gettext-base. Preparing to unpack .../08-gettext-base_0.21-4_armhf.deb ... Unpacking gettext-base (0.21-4) ... Selecting previously unselected package libsigsegv2:armhf. Preparing to unpack .../09-libsigsegv2_2.13-1_armhf.deb ... Unpacking libsigsegv2:armhf (2.13-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.18-5_armhf.deb ... Unpacking m4 (1.4.18-5) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.69-14_all.deb ... Unpacking autoconf (2.69-14) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20180224.1+nmu1_all.deb ... Unpacking autotools-dev (20180224.1+nmu1) ... Selecting previously unselected package automake. Preparing to unpack .../13-automake_1%3a1.16.3-2_all.deb ... Unpacking automake (1:1.16.3-2) ... Selecting previously unselected package autopoint. Preparing to unpack .../14-autopoint_0.21-4_all.deb ... Unpacking autopoint (0.21-4) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.3.4_all.deb ... Unpacking libdebhelper-perl (13.3.4) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.6-15_all.deb ... Unpacking libtool (2.4.6-15) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-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 .../19-libsub-override-perl_0.09-2_all.deb ... Unpacking libsub-override-perl (0.09-2) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../20-libfile-stripnondeterminism-perl_1.12.0-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.12.0-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../21-dh-strip-nondeterminism_1.12.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.12.0-1) ... Selecting previously unselected package libelf1:armhf. Preparing to unpack .../22-libelf1_0.183-1_armhf.deb ... Unpacking libelf1:armhf (0.183-1) ... Selecting previously unselected package dwz. Preparing to unpack .../23-dwz_0.13+20210201-1_armhf.deb ... Unpacking dwz (0.13+20210201-1) ... Selecting previously unselected package libicu67:armhf. Preparing to unpack .../24-libicu67_67.1-7_armhf.deb ... Unpacking libicu67:armhf (67.1-7) ... Selecting previously unselected package libxml2:armhf. Preparing to unpack .../25-libxml2_2.9.10+dfsg-6.7_armhf.deb ... Unpacking libxml2:armhf (2.9.10+dfsg-6.7) ... Selecting previously unselected package gettext. Preparing to unpack .../26-gettext_0.21-4_armhf.deb ... Unpacking gettext (0.21-4) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../27-intltool-debian_0.35.0+20060710.5_all.deb ... Unpacking intltool-debian (0.35.0+20060710.5) ... Selecting previously unselected package po-debconf. Preparing to unpack .../28-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../29-debhelper_13.3.4_all.deb ... Unpacking debhelper (13.3.4) ... Selecting previously unselected package python3-lib2to3. Preparing to unpack .../30-python3-lib2to3_3.9.2-1_all.deb ... Unpacking python3-lib2to3 (3.9.2-1) ... Selecting previously unselected package python3-distutils. Preparing to unpack .../31-python3-distutils_3.9.2-1_all.deb ... Unpacking python3-distutils (3.9.2-1) ... Selecting previously unselected package dh-python. Preparing to unpack .../32-dh-python_4.20201102+nmu1_all.deb ... Unpacking dh-python (4.20201102+nmu1) ... Selecting previously unselected package libbrotli1:armhf. Preparing to unpack .../33-libbrotli1_1.0.9-2+b2_armhf.deb ... Unpacking libbrotli1:armhf (1.0.9-2+b2) ... Selecting previously unselected package libsasl2-modules-db:armhf. Preparing to unpack .../34-libsasl2-modules-db_2.1.27+dfsg-2.1_armhf.deb ... Unpacking libsasl2-modules-db:armhf (2.1.27+dfsg-2.1) ... Selecting previously unselected package libsasl2-2:armhf. Preparing to unpack .../35-libsasl2-2_2.1.27+dfsg-2.1_armhf.deb ... Unpacking libsasl2-2:armhf (2.1.27+dfsg-2.1) ... Selecting previously unselected package libldap-2.4-2:armhf. Preparing to unpack .../36-libldap-2.4-2_2.4.57+dfsg-3_armhf.deb ... Unpacking libldap-2.4-2:armhf (2.4.57+dfsg-3) ... Selecting previously unselected package libnghttp2-14:armhf. Preparing to unpack .../37-libnghttp2-14_1.43.0-1_armhf.deb ... Unpacking libnghttp2-14:armhf (1.43.0-1) ... Selecting previously unselected package libpsl5:armhf. Preparing to unpack .../38-libpsl5_0.21.0-1.2_armhf.deb ... Unpacking libpsl5:armhf (0.21.0-1.2) ... Selecting previously unselected package librtmp1:armhf. Preparing to unpack .../39-librtmp1_2.4+20151223.gitfa8646d.1-2+b2_armhf.deb ... Unpacking librtmp1:armhf (2.4+20151223.gitfa8646d.1-2+b2) ... Selecting previously unselected package libssh2-1:armhf. Preparing to unpack .../40-libssh2-1_1.9.0-2_armhf.deb ... Unpacking libssh2-1:armhf (1.9.0-2) ... Selecting previously unselected package libcurl3-gnutls:armhf. Preparing to unpack .../41-libcurl3-gnutls_7.74.0-1.3+b1_armhf.deb ... Unpacking libcurl3-gnutls:armhf (7.74.0-1.3+b1) ... Selecting previously unselected package liberror-perl. Preparing to unpack .../42-liberror-perl_0.17029-1_all.deb ... Unpacking liberror-perl (0.17029-1) ... Selecting previously unselected package git-man. Preparing to unpack .../43-git-man_1%3a2.30.2-1_all.deb ... Unpacking git-man (1:2.30.2-1) ... Selecting previously unselected package git. Preparing to unpack .../44-git_1%3a2.30.2-1_armhf.deb ... Unpacking git (1:2.30.2-1) ... Selecting previously unselected package libglib2.0-0:armhf. Preparing to unpack .../45-libglib2.0-0_2.66.8-1_armhf.deb ... Unpacking libglib2.0-0:armhf (2.66.8-1) ... Selecting previously unselected package libjs-jquery. Preparing to unpack .../46-libjs-jquery_3.5.1+dfsg+~3.5.5-7_all.deb ... Unpacking libjs-jquery (3.5.1+dfsg+~3.5.5-7) ... Selecting previously unselected package libjs-underscore. Preparing to unpack .../47-libjs-underscore_1.9.1~dfsg-3_all.deb ... Unpacking libjs-underscore (1.9.1~dfsg-3) ... Selecting previously unselected package libjs-sphinxdoc. Preparing to unpack .../48-libjs-sphinxdoc_3.4.3-2_all.deb ... Unpacking libjs-sphinxdoc (3.4.3-2) ... Selecting previously unselected package pkg-config. Preparing to unpack .../49-pkg-config_0.29.2-1_armhf.deb ... Unpacking pkg-config (0.29.2-1) ... Selecting previously unselected package python-pip-whl. Preparing to unpack .../50-python-pip-whl_20.3.4-4_all.deb ... Unpacking python-pip-whl (20.3.4-4) ... Selecting previously unselected package python3-appdirs. Preparing to unpack .../51-python3-appdirs_1.4.4-1_all.deb ... Unpacking python3-appdirs (1.4.4-1) ... Selecting previously unselected package python3-distlib. Preparing to unpack .../52-python3-distlib_0.3.2+really+0.3.1-0.1_all.deb ... Unpacking python3-distlib (0.3.2+really+0.3.1-0.1) ... Selecting previously unselected package python3-filelock. Preparing to unpack .../53-python3-filelock_3.0.12-2_all.deb ... Unpacking python3-filelock (3.0.12-2) ... Selecting previously unselected package python3-six. Preparing to unpack .../54-python3-six_1.16.0-2_all.deb ... Unpacking python3-six (1.16.0-2) ... Selecting previously unselected package python3-more-itertools. Preparing to unpack .../55-python3-more-itertools_4.2.0-3_all.deb ... Unpacking python3-more-itertools (4.2.0-3) ... Selecting previously unselected package python3-zipp. Preparing to unpack .../56-python3-zipp_1.0.0-3_all.deb ... Unpacking python3-zipp (1.0.0-3) ... Selecting previously unselected package python3-importlib-metadata. Preparing to unpack .../57-python3-importlib-metadata_1.6.0-2_all.deb ... Unpacking python3-importlib-metadata (1.6.0-2) ... Selecting previously unselected package python3-pyparsing. Preparing to unpack .../58-python3-pyparsing_2.4.7-1_all.deb ... Unpacking python3-pyparsing (2.4.7-1) ... Selecting previously unselected package python3-packaging. Preparing to unpack .../59-python3-packaging_20.9-2_all.deb ... Unpacking python3-packaging (20.9-2) ... Selecting previously unselected package python3-pkg-resources. Preparing to unpack .../60-python3-pkg-resources_52.0.0-4_all.deb ... Unpacking python3-pkg-resources (52.0.0-4) ... Selecting previously unselected package python3-setuptools. Preparing to unpack .../61-python3-setuptools_52.0.0-4_all.deb ... Unpacking python3-setuptools (52.0.0-4) ... Selecting previously unselected package python3-wheel. Preparing to unpack .../62-python3-wheel_0.34.2-1_all.deb ... Unpacking python3-wheel (0.34.2-1) ... Selecting previously unselected package python3-pip. Preparing to unpack .../63-python3-pip_20.3.4-4_all.deb ... Unpacking python3-pip (20.3.4-4) ... Selecting previously unselected package python3-pluggy. Preparing to unpack .../64-python3-pluggy_0.13.0-6_all.deb ... Unpacking python3-pluggy (0.13.0-6) ... Selecting previously unselected package python3-py. Preparing to unpack .../65-python3-py_1.10.0-1_all.deb ... Unpacking python3-py (1.10.0-1) ... Selecting previously unselected package python3-toml. Preparing to unpack .../66-python3-toml_0.10.1-1_all.deb ... Unpacking python3-toml (0.10.1-1) ... Selecting previously unselected package python3-virtualenv. Preparing to unpack .../67-python3-virtualenv_20.4.0+ds-2_all.deb ... Unpacking python3-virtualenv (20.4.0+ds-2) ... Selecting previously unselected package tox. Preparing to unpack .../68-tox_3.21.4-1_all.deb ... Unpacking tox (3.21.4-1) ... Setting up media-types (4.0.0) ... Setting up libpipeline1:armhf (1.5.3-1) ... Setting up libpsl5:armhf (0.21.0-1.2) ... Setting up bsdextrautils (2.36.1-8) ... update-alternatives: using /usr/bin/write.ul to provide /usr/bin/write (write) in auto mode Setting up libicu67:armhf (67.1-7) ... Setting up libmagic-mgc (1:5.39-3) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libglib2.0-0:armhf (2.66.8-1) ... No schema files found: doing nothing. Setting up libdebhelper-perl (13.3.4) ... Setting up libbrotli1:armhf (1.0.9-2+b2) ... Setting up libnghttp2-14:armhf (1.43.0-1) ... Setting up libmagic1:armhf (1:5.39-3) ... Setting up gettext-base (0.21-4) ... Setting up file (1:5.39-3) ... Setting up libsasl2-modules-db:armhf (2.1.27+dfsg-2.1) ... Setting up liberror-perl (0.17029-1) ... Setting up autotools-dev (20180224.1+nmu1) ... Setting up librtmp1:armhf (2.4+20151223.gitfa8646d.1-2+b2) ... Setting up bash-completion (1:2.11-2) ... Setting up libsigsegv2:armhf (2.13-1) ... Setting up autopoint (0.21-4) ... Setting up pkg-config (0.29.2-1) ... Setting up libsasl2-2:armhf (2.1.27+dfsg-2.1) ... Setting up sensible-utils (0.0.14) ... Setting up libuchardet0:armhf (0.0.7-1) ... Setting up libmpdec3:armhf (2.5.1-1) ... Setting up libsub-override-perl (0.09-2) ... Setting up git-man (1:2.30.2-1) ... Setting up libssh2-1:armhf (1.9.0-2) ... Setting up libjs-jquery (3.5.1+dfsg+~3.5.5-7) ... Setting up openssl (1.1.1k-1) ... Setting up libelf1:armhf (0.183-1) ... Setting up readline-common (8.1-1) ... Setting up libxml2:armhf (2.9.10+dfsg-6.7) ... Setting up libjs-underscore (1.9.1~dfsg-3) ... Setting up libfile-stripnondeterminism-perl (1.12.0-1) ... Setting up gettext (0.21-4) ... Setting up libtool (2.4.6-15) ... Setting up libreadline8:armhf (8.1-1) ... Setting up libldap-2.4-2:armhf (2.4.57+dfsg-3) ... Setting up m4 (1.4.18-5) ... Setting up libcurl3-gnutls:armhf (7.74.0-1.3+b1) ... Setting up intltool-debian (0.35.0+20060710.5) ... Setting up ca-certificates (20210119) ... Updating certificates in /etc/ssl/certs... 129 added, 0 removed; done. Setting up git (1:2.30.2-1) ... Setting up libjs-sphinxdoc (3.4.3-2) ... Setting up autoconf (2.69-14) ... Setting up dh-strip-nondeterminism (1.12.0-1) ... Setting up dwz (0.13+20210201-1) ... Setting up groff-base (1.22.4-6) ... Setting up python-pip-whl (20.3.4-4) ... Setting up libpython3.9-stdlib:armhf (3.9.2-1) ... Setting up libpython3-stdlib:armhf (3.9.2-3) ... Setting up automake (1:1.16.3-2) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up po-debconf (1.0.21+nmu1) ... Setting up man-db (2.9.4-2) ... Not building database; man-db/auto-update is not 'true'. Setting up dh-autoreconf (20) ... Setting up python3.9 (3.9.2-1) ... Setting up debhelper (13.3.4) ... Setting up python3 (3.9.2-3) ... Setting up python3-distlib (0.3.2+really+0.3.1-0.1) ... Setting up python3-wheel (0.34.2-1) ... Setting up python3-six (1.16.0-2) ... Setting up python3-pyparsing (2.4.7-1) ... Setting up python3-toml (0.10.1-1) ... Setting up python3-lib2to3 (3.9.2-1) ... Setting up python3-appdirs (1.4.4-1) ... Setting up python3-pkg-resources (52.0.0-4) ... Setting up python3-distutils (3.9.2-1) ... Setting up dh-python (4.20201102+nmu1) ... Setting up python3-more-itertools (4.2.0-3) ... Setting up python3-filelock (3.0.12-2) ... Setting up python3-setuptools (52.0.0-4) ... Setting up python3-py (1.10.0-1) ... Setting up python3-zipp (1.0.0-3) ... Setting up python3-packaging (20.9-2) ... Setting up python3-pip (20.3.4-4) ... Setting up python3-importlib-metadata (1.6.0-2) ... Setting up python3-virtualenv (20.4.0+ds-2) ... Setting up python3-pluggy (0.13.0-6) ... Setting up tox (3.21.4-1) ... Processing triggers for libc-bin (2.31-13) ... Processing triggers for ca-certificates (20210119) ... 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... The following additional packages will be installed: libfile-find-rule-perl libnumber-compare-perl libtext-glob-perl The following NEW packages will be installed: libfile-find-rule-perl libnumber-compare-perl libtext-glob-perl usrmerge 0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded. Need to get 59.5 kB of archives. After this operation, 157 kB of additional disk space will be used. Get:1 http://deb.debian.org/debian bullseye/main armhf libnumber-compare-perl all 0.03-1.1 [6956 B] Get:2 http://deb.debian.org/debian bullseye/main armhf libtext-glob-perl all 0.11-1 [8888 B] Get:3 http://deb.debian.org/debian bullseye/main armhf libfile-find-rule-perl all 0.34-1 [30.6 kB] Get:4 http://deb.debian.org/debian bullseye/main armhf usrmerge all 25 [13.0 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 59.5 kB in 0s (703 kB/s) Selecting previously unselected package libnumber-compare-perl. (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 ... 25472 files and directories currently installed.) Preparing to unpack .../libnumber-compare-perl_0.03-1.1_all.deb ... Unpacking libnumber-compare-perl (0.03-1.1) ... Selecting previously unselected package libtext-glob-perl. Preparing to unpack .../libtext-glob-perl_0.11-1_all.deb ... Unpacking libtext-glob-perl (0.11-1) ... Selecting previously unselected package libfile-find-rule-perl. Preparing to unpack .../libfile-find-rule-perl_0.34-1_all.deb ... Unpacking libfile-find-rule-perl (0.34-1) ... Selecting previously unselected package usrmerge. Preparing to unpack .../archives/usrmerge_25_all.deb ... Unpacking usrmerge (25) ... Setting up libtext-glob-perl (0.11-1) ... Setting up libnumber-compare-perl (0.03-1.1) ... Setting up libfile-find-rule-perl (0.34-1) ... Setting up usrmerge (25) ... The system has been successfully converted. Processing triggers for man-db (2.9.4-2) ... Not building database; man-db/auto-update is not 'true'. I: Building the package hostname: Name or service not known 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 armhf debian/rules clean dh clean --with python3 --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild I: pybuild base:232: python3.9 setup.py clean running clean removing '/build/git-imerge-1.2.0/.pybuild/cpython3_3.9/build' (and everything under it) 'build/bdist.linux-armhf' does not exist -- can't clean it 'build/scripts-3.9' 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:232: python3.9 setup.py config running config dh_auto_build -O--buildsystem=pybuild I: pybuild base:232: /usr/bin/python3 setup.py build running build running build_py copying gitimerge.py -> /build/git-imerge-1.2.0/.pybuild/cpython3_3.9/build dh_auto_test -O--buildsystem=pybuild I: pybuild base:232: cd /build/git-imerge-1.2.0/.pybuild/cpython3_3.9/build; tox -c /build/git-imerge-1.2.0/tox.ini -e py39 GLOB sdist-make: /build/git-imerge-1.2.0/setup.py py39 create: /build/git-imerge-1.2.0/.tox/py39 py39 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. py39 installed: git-imerge @ file:///build/git-imerge-1.2.0/.tox/.tmp/package/1/git-imerge-1.2.0.zip py39 run-test-pre: PYTHONHASHSEED='3858043505' py39 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 Aug 16 06:15:27 2021 +0000 # # On branch a-b-merge # Changes to be committed: # modified: b.txt # [a-b-merge 63f68b4] Merge b into a (using imerge) Date: Mon Aug 16 06:15:27 2021 +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 py39 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 decff6e] 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 Aug 16 06:15:40 2021 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge a220f9b] Merge d into c (using imerge) Date: Mon Aug 16 06:15:40 2021 +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 2a9e762 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 77009e5] 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 a573ecb] 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 Aug 16 06:15:56 2021 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 03e8e41] Merge d into c (using imerge) Date: Mon Aug 16 06:15:56 2021 +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...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 11d4269] 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 b9b00cb] 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 Aug 16 06:16:22 2021 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 8c8cfa1] Merge d into c (using imerge) Date: Mon Aug 16 06:16:22 2021 +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 cbd7470] 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 1a77f18] 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 Aug 16 06:16:45 2021 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 7dd140f] Merge d into c (using imerge) Date: Mon Aug 16 06:16:45 2021 +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 d29e510 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 7269066] 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 3b13a15] 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 Aug 16 06:17:07 2021 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge cabe5d2] Merge d into c (using imerge) Date: Mon Aug 16 06:17:07 2021 +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 cdfab03] 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 c2ff7f8] 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 Aug 16 06:17:28 2021 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 7a19080] Merge d into c (using imerge) Date: Mon Aug 16 06:17:28 2021 +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...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 d0bc42f 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 ad98a71] 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 + 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...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 21ef8b4] 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 Aug 16 06:17:47 2021 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 0689e47] Merge d into c (using imerge) Date: Mon Aug 16 06:17:47 2021 +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...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 2a6aaf4] 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 13ca046] 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 Aug 16 06:18:19 2021 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 489a449] Merge d into c (using imerge) Date: Mon Aug 16 06:18:19 2021 +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 69aba1a] 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 + 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...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 7910092] 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 Aug 16 06:18:50 2021 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge b2d1b10] Merge d into c (using imerge) Date: Mon Aug 16 06:18:50 2021 +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 c9d0cd2 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 bc986ab] 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 py39 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 65b74ac] 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 + tee autofill.out + git-imerge continue --no-edit [imerge/c-d d06196b] 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: a2769d4 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 a2769d4 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 + git-imerge continue --no-edit + tee autofill.out [imerge/c-d b6109bd] 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 ba6a2ae 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 + tee autofill.out + git-imerge continue --no-edit [imerge/c-d 2a0f8ad] 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 8301c73 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 + git-imerge continue --no-edit + tee autofill.out [imerge/c-d 1eccdb5] 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 + git-imerge continue --no-edit + tee autofill.out [imerge/c-d a79f413] 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 7aed860 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 cae5907] 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 146d122] 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 Aug 16 06:19:39 2021 +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 bcc4953] Merge d into c (using imerge) Date: Mon Aug 16 06:19:39 2021 +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 py39 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 Aug 16 06:19:51 2021 +0000 # # On branch a-b-merge # Changes to be committed: # modified: a.txt # [a-b-merge 167fb5d] Merge b into a (using imerge) Date: Mon Aug 16 06:19:51 2021 +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 py39 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' + tee imerge-b-into-a-1-1.out + git-imerge merge --branch=b-into-a-1 b 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 + git-imerge continue --no-edit + tee imerge-b-into-a-1-2.out [imerge/b 9f9625b] 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 dcd75bf 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 f9b7d52] 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 Aug 16 06:20:04 2021 +0000 # # On branch b-into-a-1 # Changes to be committed: # new file: b.txt # [b-into-a-1 42415d8] Merge b into a (using imerge) Date: Mon Aug 16 06:20:04 2021 +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 + tee imerge-a-into-b-1-2.out + git-imerge continue --no-edit [imerge/a bd10581] 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 + tee imerge-a-into-b-1-3.out + git-imerge continue --no-edit [imerge/a def503e] 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 Aug 16 06:20:08 2021 +0000 # # On branch a-into-b-1 # Changes to be committed: # modified: a.txt # [a-into-b-1 ef02f74] Merge a into b (using imerge) Date: Mon Aug 16 06:20:08 2021 +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 b3acab8] 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 d16c586 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 + tee imerge-b-into-a-2-3.out + git-imerge continue --no-edit [imerge/b c2e16fc] 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 Aug 16 06:20:13 2021 +0000 # # On branch b-into-a-2 # Changes to be committed: # new file: b.txt # [b-into-a-2 5c8d935] Merge b into a (using imerge) Date: Mon Aug 16 06:20:13 2021 +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' + git-imerge merge --branch=a-into-b-2 a + tee imerge-a-into-b-2-1.out 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 2dc5eb7] 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 + tee imerge-a-into-b-2-3.out + git-imerge continue --no-edit [imerge/a d479674] 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 Aug 16 06:20:17 2021 +0000 # # On branch a-into-b-2 # Changes to be committed: # modified: a.txt # [a-into-b-2 eb2877a] Merge a into b (using imerge) Date: Mon Aug 16 06:20:17 2021 +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 + tee imerge-b-into-a-3-2.out + git-imerge continue --no-edit [imerge/b 23d5000] 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 d0e799a 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 b2c5f92] 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 Aug 16 06:20:22 2021 +0000 # # On branch b-into-a-3 # Changes to be committed: # new file: b.txt # [b-into-a-3 f3b6477] Merge b into a (using imerge) Date: Mon Aug 16 06:20:22 2021 +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 f2a7e6e] 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 + tee imerge-a-into-b-3-3.out + git-imerge continue --no-edit [imerge/a 370bb54] 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 Aug 16 06:20:26 2021 +0000 # # On branch a-into-b-3 # Changes to be committed: # modified: a.txt # [a-into-b-3 294f80f] Merge a into b (using imerge) Date: Mon Aug 16 06:20:26 2021 +0000 py39 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 Removing a3.txt [detached HEAD 142b69c] Revert "a3⇒3" Date: Mon Aug 16 06:20:26 2021 +0000 1 file changed, 1 deletion(-) delete mode 100644 a3.txt Removing a2.txt [detached HEAD 7602478] Revert "a2⇒2" Date: Mon Aug 16 06:20:27 2021 +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='760247867269c12f444c0de1926aa636f1e29b09', goal='drop')[0:4,0:3]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge-drop.html 0 3 | | 0 - **** - dropped *??. 2 - *... | 760247867269c12f444c0de1926aa636f1e29b09 0 3 | | 0 - **** - dropped *??| 2 - *--+ | 760247867269c12f444c0de1926aa636f1e29b09 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 Removing a3.txt [detached HEAD bb4bb22] Revert "a3⇒3" Date: Mon Aug 16 06:20:28 2021 +0000 1 file changed, 1 deletion(-) delete mode 100644 a3.txt Removing a2.txt [detached HEAD 01ab6e1] Revert "a2⇒2" Date: Mon Aug 16 06:20:28 2021 +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='01ab6e1da388f3aadcfaa419a9ea426edcc06454', goal='revert')[0:4,0:3]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge-revert.html 0 3 | | 0 - **** - reverted *??. 2 - *... | 01ab6e1da388f3aadcfaa419a9ea426edcc06454 0 3 | | 0 - **** - reverted *??| 2 - *--+ | 01ab6e1da388f3aadcfaa419a9ea426edcc06454 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 ____________________________________ py39: commands succeeded congratulations :) create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=pybuild dh_prep -O--buildsystem=pybuild dh_auto_install -O--buildsystem=pybuild I: pybuild base:232: /usr/bin/python3 setup.py install --root /build/git-imerge-1.2.0/debian/git-imerge running install 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.9 creating /build/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.9/dist-packages copying /build/git-imerge-1.2.0/.pybuild/cpython3_3.9/build/gitimerge.py -> /build/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.9/dist-packages byte-compiling /build/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.9/dist-packages/gitimerge.py to gitimerge.cpython-39.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' 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.9/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 dpkg-genchanges --build=binary >../git-imerge_1.2.0-3_armhf.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/8249/tmp/hooks/B01_cleanup starting I: user script /srv/workspace/pbuilder/8249/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/8249 and its subdirectories I: Current time: Mon Aug 16 20:20:53 +14 2021 I: pbuilder-time-stamp: 1629094853