Tue May 7 01:19:36 UTC 2024 I: starting to build git-imerge/unstable/amd64 on jenkins on '2024-05-07 01:19' Tue May 7 01:19:36 UTC 2024 I: The jenkins build log is/was available at https://jenkins.debian.net/userContent/reproducible/debian/build_service/amd64_22/6544/console.log Tue May 7 01:19:36 UTC 2024 I: Downloading source for unstable/git-imerge=1.2.0-5 --2024-05-07 01:19:36-- http://deb.debian.org/debian/pool/main/g/git-imerge/git-imerge_1.2.0-5.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 1896 (1.9K) [text/prs.lines.tag] Saving to: ‘git-imerge_1.2.0-5.dsc’ 0K . 100% 232M=0s 2024-05-07 01:19:36 (232 MB/s) - ‘git-imerge_1.2.0-5.dsc’ saved [1896/1896] Tue May 7 01:19:36 UTC 2024 I: git-imerge_1.2.0-5.dsc -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 3.0 (quilt) Source: git-imerge Binary: git-imerge Architecture: all Version: 1.2.0-5 Maintainer: Paul Wise Homepage: https://github.com/mhagger/git-imerge Standards-Version: 4.6.2 Testsuite: autopkgtest-pkg-pybuild Build-Depends: bash-completion, debhelper-compat (= 13), dh-sequence-python3, git , pkg-config, python3, python3-setuptools, python3-wheel , tox Package-List: git-imerge deb vcs optional arch=all Checksums-Sha1: ebc6d10e0a91414cc3396314fd3a3d857926595e 64449 git-imerge_1.2.0.orig.tar.gz 445d4913d4da7b612288c1f14c29807a8d39f9e8 3144 git-imerge_1.2.0-5.debian.tar.xz Checksums-Sha256: cd80a817bc8dd4b5642f83610237e855fc0a23f5c11978d6f7d021cfb0e87bb2 64449 git-imerge_1.2.0.orig.tar.gz 31521a00bfa011fb6e423139e141e92009c083272633b92f7dd73b53b37d1afd 3144 git-imerge_1.2.0-5.debian.tar.xz Files: 87a2b582c619f888a7b195487cbaa83f 64449 git-imerge_1.2.0.orig.tar.gz aa6f3002505a23c84a7627b70ca28c87 3144 git-imerge_1.2.0-5.debian.tar.xz -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEYQsotVz8/kXqG1Y7MRa6Xp/6aaMFAmTgXpEACgkQMRa6Xp/6 aaOn7RAAtNLXqYQ4f4aQUnvb3VFs4KhIZVHpf0OwKm4jcM8TI3bMjL8enHPvnFvS JhAJ1rM6VJ9FIHIs7TA0jsyJP9uUQ8HrBFMQ1gX1A38MG3I9aTBPD7ILwtTEuN0Q fzC+KlhatxUbWQdK4S6wE9S/opeEmUCIW2YFIgea2cCbpYufIfLHLxTCz6CluPB7 7q+HEc96O0WCc+bNr22pwsUiO+Mv+FUOx8cB8MJClO/isuQnsoCe7R5bg+0gDlD2 4mYr74o8SRV85XH0nEj+0FKldwPNrnzP8QOumbBCicG+zBb7hfbgQBx6i8ZvWxVv 1BJRPPAS+bdZ/QTHYtufYr1N9vH5gS7rMS35JKTJmbrHbIqch4/oJNvMmErlobmc au7QSQFTiegzC7wEjte9z4cf+kZMc+dQuzzLLFKXdehYhECa6o7rCo3IA/WfmiSS YJral+ERtsf6AQxLSfclUqzClmXRV83sihL+mpLfa9wrjuGF6LHWanVlMr3H8k4w kFL9idJoXM6+MhuzXvjwlkuFKH9kMCOMEl4K+aBFGSs601YG2y+WLxntBjCE3tKV OjTK7NOmbaiSoPcAuGfjb7x/B7GT4T8BNiEb9iYQsge+AieDNtWPshO5h9tVgHxo FLS8X9U7uUf9hcs8X8tUwgg5t6zO6l9XtdxjwI0gO1hN2TVcE3M= =Gsdn -----END PGP SIGNATURE----- Tue May 7 01:19:36 UTC 2024 I: Checking whether the package is not for us Tue May 7 01:19:36 UTC 2024 I: Starting 1st build on remote node ionos5-amd64.debian.net. Tue May 7 01:19:36 UTC 2024 I: Preparing to do remote build '1' on ionos5-amd64.debian.net. Tue May 7 01:21:50 UTC 2024 I: Deleting $TMPDIR on ionos5-amd64.debian.net. I: pbuilder: network access will be disabled during build I: Current time: Sun Jun 8 19:42:38 -12 2025 I: pbuilder-time-stamp: 1749454958 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: Copying source file I: copying [git-imerge_1.2.0-5.dsc] I: copying [./git-imerge_1.2.0.orig.tar.gz] I: copying [./git-imerge_1.2.0-5.debian.tar.xz] I: Extracting source gpgv: Signature made Sat Aug 19 06:17:53 2023 gpgv: using RSA key 610B28B55CFCFE45EA1B563B3116BA5E9FFA69A3 gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./git-imerge_1.2.0-5.dsc: no acceptable signature found dpkg-source: info: extracting git-imerge in git-imerge-1.2.0 dpkg-source: info: unpacking git-imerge_1.2.0.orig.tar.gz dpkg-source: info: unpacking git-imerge_1.2.0-5.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying tox-4-pr-204.patch I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/77485/tmp/hooks/D02_print_environment starting I: set BUILDDIR='/build/reproducible-path' BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' BUILDUSERNAME='pbuilder1' BUILD_ARCH='amd64' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' DISTRIBUTION='unstable' HOME='/root' HOST_ARCH='amd64' IFS=' ' INVOCATION_ID='dc44b332679a401ba532a05d6affc054' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' MAIL='/var/mail/root' OPTIND='1' PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' PBCURRENTCOMMANDLINEOPERATION='build' PBUILDER_OPERATION='build' PBUILDER_PKGDATADIR='/usr/share/pbuilder' PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' PBUILDER_SYSCONFDIR='/etc' PPID='77485' PS1='# ' PS2='> ' PS4='+ ' PWD='/' SHELL='/bin/bash' SHLVL='2' SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.n8XFVnfN/pbuilderrc_X1aZ --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.n8XFVnfN/b1 --logfile b1/build.log git-imerge_1.2.0-5.dsc' SUDO_GID='110' SUDO_UID='105' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' http_proxy='http://213.165.73.152:3128' I: uname -a Linux ionos5-amd64 6.6.13+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.6.13-1~bpo12+1 (2024-02-15) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Jun 7 14:06 /bin -> usr/bin I: user script /srv/workspace/pbuilder/77485/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: amd64 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-sequence-python3, git, pkg-config, python3, python3-setuptools, python3-wheel, 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 ... 19699 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-sequence-python3; however: Package dh-sequence-python3 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 python3-wheel; however: Package python3-wheel 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} libcom-err2{a} libcurl3t64-gnutls{a} libdebhelper-perl{a} libelf1t64{a} liberror-perl{a} libexpat1{a} libfile-stripnondeterminism-perl{a} libgssapi-krb5-2{a} libicu72{a} libjs-jquery{a} libjs-sphinxdoc{a} libjs-underscore{a} libk5crypto3{a} libkeyutils1{a} libkrb5-3{a} libkrb5support0{a} libldap-2.5-0{a} libmagic-mgc{a} libmagic1t64{a} libnghttp2-14{a} libpipeline1{a} libpkgconf3{a} libpsl5t64{a} libpython3-stdlib{a} libpython3.11-minimal{a} libpython3.11-stdlib{a} libreadline8t64{a} librtmp1{a} libsasl2-2{a} libsasl2-modules-db{a} libssh2-1t64{a} libsub-override-perl{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} media-types{a} netbase{a} openssl{a} pkg-config{a} pkgconf{a} pkgconf-bin{a} po-debconf{a} python3{a} python3-cachetools{a} python3-chardet{a} python3-colorama{a} python3-distlib{a} python3-distutils{a} python3-filelock{a} python3-lib2to3{a} python3-minimal{a} python3-packaging{a} python3-pip-whl{a} python3-pkg-resources{a} python3-platformdirs{a} python3-pluggy{a} python3-pyproject-api{a} python3-setuptools{a} python3-setuptools-whl{a} python3-virtualenv{a} python3-wheel{a} python3-wheel-whl{a} python3.11{a} python3.11-minimal{a} readline-common{a} sensible-utils{a} tox{a} tzdata{a} The following packages are RECOMMENDED but will NOT be installed: curl javascript-common krb5-locales less libarchive-cpio-perl libldap-common libltdl-dev libmail-sendmail-perl libsasl2-modules lynx openssh-client publicsuffix python3-dev wget 0 packages upgraded, 91 newly installed, 0 to remove and 0 not upgraded. Need to get 43.8 MB of archives. After unpacking 174 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main amd64 libpython3.11-minimal amd64 3.11.9-1 [817 kB] Get: 2 http://deb.debian.org/debian unstable/main amd64 libexpat1 amd64 2.6.2-1 [103 kB] Get: 3 http://deb.debian.org/debian unstable/main amd64 python3.11-minimal amd64 3.11.9-1 [1879 kB] Get: 4 http://deb.debian.org/debian unstable/main amd64 python3-minimal amd64 3.11.8-1 [26.3 kB] Get: 5 http://deb.debian.org/debian unstable/main amd64 media-types all 10.1.0 [26.9 kB] Get: 6 http://deb.debian.org/debian unstable/main amd64 netbase all 6.4 [12.8 kB] Get: 7 http://deb.debian.org/debian unstable/main amd64 tzdata all 2024a-4 [255 kB] Get: 8 http://deb.debian.org/debian unstable/main amd64 readline-common all 8.2-4 [69.3 kB] Get: 9 http://deb.debian.org/debian unstable/main amd64 libreadline8t64 amd64 8.2-4 [167 kB] Get: 10 http://deb.debian.org/debian unstable/main amd64 libpython3.11-stdlib amd64 3.11.9-1 [1792 kB] Get: 11 http://deb.debian.org/debian unstable/main amd64 python3.11 amd64 3.11.9-1 [602 kB] Get: 12 http://deb.debian.org/debian unstable/main amd64 libpython3-stdlib amd64 3.11.8-1 [9332 B] Get: 13 http://deb.debian.org/debian unstable/main amd64 python3 amd64 3.11.8-1 [27.4 kB] Get: 14 http://deb.debian.org/debian unstable/main amd64 sensible-utils all 0.0.22 [22.4 kB] Get: 15 http://deb.debian.org/debian unstable/main amd64 bash-completion all 1:2.13.0-1 [302 kB] Get: 16 http://deb.debian.org/debian unstable/main amd64 openssl amd64 3.2.1-3 [1360 kB] Get: 17 http://deb.debian.org/debian unstable/main amd64 ca-certificates all 20240203 [158 kB] Get: 18 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.45-3 [314 kB] Get: 19 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.45-3 [105 kB] Get: 20 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.45-3 [42.9 kB] Get: 21 http://deb.debian.org/debian unstable/main amd64 gettext-base amd64 0.21-14+b1 [161 kB] Get: 22 http://deb.debian.org/debian unstable/main amd64 libuchardet0 amd64 0.0.8-1+b1 [68.8 kB] Get: 23 http://deb.debian.org/debian unstable/main amd64 groff-base amd64 1.23.0-4 [1180 kB] Get: 24 http://deb.debian.org/debian unstable/main amd64 bsdextrautils amd64 2.40-8 [92.8 kB] Get: 25 http://deb.debian.org/debian unstable/main amd64 libpipeline1 amd64 1.5.7-2 [38.0 kB] Get: 26 http://deb.debian.org/debian unstable/main amd64 man-db amd64 2.12.1-1 [1411 kB] Get: 27 http://deb.debian.org/debian unstable/main amd64 m4 amd64 1.4.19-4 [287 kB] Get: 28 http://deb.debian.org/debian unstable/main amd64 autoconf all 2.71-3 [332 kB] Get: 29 http://deb.debian.org/debian unstable/main amd64 autotools-dev all 20220109.1 [51.6 kB] Get: 30 http://deb.debian.org/debian unstable/main amd64 automake all 1:1.16.5-1.3 [823 kB] Get: 31 http://deb.debian.org/debian unstable/main amd64 autopoint all 0.21-14 [496 kB] Get: 32 http://deb.debian.org/debian unstable/main amd64 libdebhelper-perl all 13.15.3 [88.0 kB] Get: 33 http://deb.debian.org/debian unstable/main amd64 libtool all 2.4.7-7 [517 kB] Get: 34 http://deb.debian.org/debian unstable/main amd64 dh-autoreconf all 20 [17.1 kB] Get: 35 http://deb.debian.org/debian unstable/main amd64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 36 http://deb.debian.org/debian unstable/main amd64 libsub-override-perl all 0.10-1 [10.6 kB] Get: 37 http://deb.debian.org/debian unstable/main amd64 libfile-stripnondeterminism-perl all 1.13.1-1 [19.4 kB] Get: 38 http://deb.debian.org/debian unstable/main amd64 dh-strip-nondeterminism all 1.13.1-1 [8620 B] Get: 39 http://deb.debian.org/debian unstable/main amd64 libelf1t64 amd64 0.191-1+b1 [189 kB] Get: 40 http://deb.debian.org/debian unstable/main amd64 dwz amd64 0.15-1+b1 [110 kB] Get: 41 http://deb.debian.org/debian unstable/main amd64 libicu72 amd64 72.1-4+b1 [9395 kB] Get: 42 http://deb.debian.org/debian unstable/main amd64 libxml2 amd64 2.9.14+dfsg-1.3+b3 [692 kB] Get: 43 http://deb.debian.org/debian unstable/main amd64 gettext amd64 0.21-14+b1 [1301 kB] Get: 44 http://deb.debian.org/debian unstable/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 45 http://deb.debian.org/debian unstable/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 46 http://deb.debian.org/debian unstable/main amd64 debhelper all 13.15.3 [901 kB] Get: 47 http://deb.debian.org/debian unstable/main amd64 python3-pkg-resources all 68.1.2-2 [241 kB] Get: 48 http://deb.debian.org/debian unstable/main amd64 python3-lib2to3 all 3.12.3-1 [77.6 kB] Get: 49 http://deb.debian.org/debian unstable/main amd64 python3-distutils all 3.12.3-1 [131 kB] Get: 50 http://deb.debian.org/debian unstable/main amd64 python3-setuptools all 68.1.2-2 [468 kB] Get: 51 http://deb.debian.org/debian unstable/main amd64 dh-python all 6.20240422 [107 kB] Get: 52 http://deb.debian.org/debian unstable/main amd64 libbrotli1 amd64 1.1.0-2+b3 [305 kB] Get: 53 http://deb.debian.org/debian unstable/main amd64 libkrb5support0 amd64 1.20.1-6+b1 [33.3 kB] Get: 54 http://deb.debian.org/debian unstable/main amd64 libcom-err2 amd64 1.47.1~rc2-1 [22.6 kB] Get: 55 http://deb.debian.org/debian unstable/main amd64 libk5crypto3 amd64 1.20.1-6+b1 [79.8 kB] Get: 56 http://deb.debian.org/debian unstable/main amd64 libkeyutils1 amd64 1.6.3-3 [8952 B] Get: 57 http://deb.debian.org/debian unstable/main amd64 libkrb5-3 amd64 1.20.1-6+b1 [333 kB] Get: 58 http://deb.debian.org/debian unstable/main amd64 libgssapi-krb5-2 amd64 1.20.1-6+b1 [135 kB] Get: 59 http://deb.debian.org/debian unstable/main amd64 libsasl2-modules-db amd64 2.1.28+dfsg1-6 [19.5 kB] Get: 60 http://deb.debian.org/debian unstable/main amd64 libsasl2-2 amd64 2.1.28+dfsg1-6 [56.9 kB] Get: 61 http://deb.debian.org/debian unstable/main amd64 libldap-2.5-0 amd64 2.5.17+dfsg-1 [186 kB] Get: 62 http://deb.debian.org/debian unstable/main amd64 libnghttp2-14 amd64 1.61.0-1+b1 [75.6 kB] Get: 63 http://deb.debian.org/debian unstable/main amd64 libpsl5t64 amd64 0.21.2-1.1 [56.8 kB] Get: 64 http://deb.debian.org/debian unstable/main amd64 librtmp1 amd64 2.4+20151223.gitfa8646d.1-2+b4 [58.5 kB] Get: 65 http://deb.debian.org/debian unstable/main amd64 libssh2-1t64 amd64 1.11.0-4.1+b2 [215 kB] Get: 66 http://deb.debian.org/debian unstable/main amd64 libcurl3t64-gnutls amd64 8.7.1-5 [433 kB] Get: 67 http://deb.debian.org/debian unstable/main amd64 liberror-perl all 0.17029-2 [29.0 kB] Get: 68 http://deb.debian.org/debian unstable/main amd64 git-man all 1:2.43.0-1 [2112 kB] Get: 69 http://deb.debian.org/debian unstable/main amd64 git amd64 1:2.43.0-1+b1 [7541 kB] Get: 70 http://deb.debian.org/debian unstable/main amd64 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [326 kB] Get: 71 http://deb.debian.org/debian unstable/main amd64 libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [116 kB] Get: 72 http://deb.debian.org/debian unstable/main amd64 libjs-sphinxdoc all 7.2.6-6 [150 kB] Get: 73 http://deb.debian.org/debian unstable/main amd64 libpkgconf3 amd64 1.8.1-1+b2 [36.4 kB] Get: 74 http://deb.debian.org/debian unstable/main amd64 pkgconf-bin amd64 1.8.1-1+b2 [29.7 kB] Get: 75 http://deb.debian.org/debian unstable/main amd64 pkgconf amd64 1.8.1-1+b2 [26.2 kB] Get: 76 http://deb.debian.org/debian unstable/main amd64 pkg-config amd64 1.8.1-1+b2 [14.0 kB] Get: 77 http://deb.debian.org/debian unstable/main amd64 python3-cachetools all 5.3.0-2 [13.3 kB] Get: 78 http://deb.debian.org/debian unstable/main amd64 python3-chardet all 5.2.0+dfsg-1 [107 kB] Get: 79 http://deb.debian.org/debian unstable/main amd64 python3-colorama all 0.4.6-4 [36.2 kB] Get: 80 http://deb.debian.org/debian unstable/main amd64 python3-distlib all 0.3.8-1 [257 kB] Get: 81 http://deb.debian.org/debian unstable/main amd64 python3-filelock all 3.14.0-1 [10.9 kB] Get: 82 http://deb.debian.org/debian unstable/main amd64 python3-packaging all 24.0-1 [45.5 kB] Get: 83 http://deb.debian.org/debian unstable/main amd64 python3-pip-whl all 24.0+dfsg-2 [1774 kB] Get: 84 http://deb.debian.org/debian unstable/main amd64 python3-platformdirs all 4.2.1-1 [16.0 kB] Get: 85 http://deb.debian.org/debian unstable/main amd64 python3-pluggy all 1.5.0-1 [26.9 kB] Get: 86 http://deb.debian.org/debian unstable/main amd64 python3-pyproject-api all 1.6.1-1 [55.6 kB] Get: 87 http://deb.debian.org/debian unstable/main amd64 python3-setuptools-whl all 68.1.2-2 [797 kB] Get: 88 http://deb.debian.org/debian unstable/main amd64 python3-wheel-whl all 0.43.0-1 [68.8 kB] Get: 89 http://deb.debian.org/debian unstable/main amd64 python3-virtualenv all 20.26.1+ds-1 [70.7 kB] Get: 90 http://deb.debian.org/debian unstable/main amd64 python3-wheel all 0.43.0-1 [52.5 kB] Get: 91 http://deb.debian.org/debian unstable/main amd64 tox all 4.15.0-2 [375 kB] Fetched 43.8 MB in 1s (34.4 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libpython3.11-minimal:amd64. (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 ... 19699 files and directories currently installed.) Preparing to unpack .../libpython3.11-minimal_3.11.9-1_amd64.deb ... Unpacking libpython3.11-minimal:amd64 (3.11.9-1) ... Selecting previously unselected package libexpat1:amd64. Preparing to unpack .../libexpat1_2.6.2-1_amd64.deb ... Unpacking libexpat1:amd64 (2.6.2-1) ... Selecting previously unselected package python3.11-minimal. Preparing to unpack .../python3.11-minimal_3.11.9-1_amd64.deb ... Unpacking python3.11-minimal (3.11.9-1) ... Setting up libpython3.11-minimal:amd64 (3.11.9-1) ... Setting up libexpat1:amd64 (2.6.2-1) ... Setting up python3.11-minimal (3.11.9-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 ... 20015 files and directories currently installed.) Preparing to unpack .../0-python3-minimal_3.11.8-1_amd64.deb ... Unpacking python3-minimal (3.11.8-1) ... Selecting previously unselected package media-types. Preparing to unpack .../1-media-types_10.1.0_all.deb ... Unpacking media-types (10.1.0) ... Selecting previously unselected package netbase. Preparing to unpack .../2-netbase_6.4_all.deb ... Unpacking netbase (6.4) ... Selecting previously unselected package tzdata. Preparing to unpack .../3-tzdata_2024a-4_all.deb ... Unpacking tzdata (2024a-4) ... Selecting previously unselected package readline-common. Preparing to unpack .../4-readline-common_8.2-4_all.deb ... Unpacking readline-common (8.2-4) ... Selecting previously unselected package libreadline8t64:amd64. Preparing to unpack .../5-libreadline8t64_8.2-4_amd64.deb ... Adding 'diversion of /lib/x86_64-linux-gnu/libhistory.so.8 to /lib/x86_64-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libhistory.so.8.2 to /lib/x86_64-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libreadline.so.8 to /lib/x86_64-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libreadline.so.8.2 to /lib/x86_64-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64' Unpacking libreadline8t64:amd64 (8.2-4) ... Selecting previously unselected package libpython3.11-stdlib:amd64. Preparing to unpack .../6-libpython3.11-stdlib_3.11.9-1_amd64.deb ... Unpacking libpython3.11-stdlib:amd64 (3.11.9-1) ... Selecting previously unselected package python3.11. Preparing to unpack .../7-python3.11_3.11.9-1_amd64.deb ... Unpacking python3.11 (3.11.9-1) ... Selecting previously unselected package libpython3-stdlib:amd64. Preparing to unpack .../8-libpython3-stdlib_3.11.8-1_amd64.deb ... Unpacking libpython3-stdlib:amd64 (3.11.8-1) ... Setting up python3-minimal (3.11.8-1) ... 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 ... 21007 files and directories currently installed.) Preparing to unpack .../00-python3_3.11.8-1_amd64.deb ... Unpacking python3 (3.11.8-1) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../01-sensible-utils_0.0.22_all.deb ... Unpacking sensible-utils (0.0.22) ... Selecting previously unselected package bash-completion. Preparing to unpack .../02-bash-completion_1%3a2.13.0-1_all.deb ... Unpacking bash-completion (1:2.13.0-1) ... Selecting previously unselected package openssl. Preparing to unpack .../03-openssl_3.2.1-3_amd64.deb ... Unpacking openssl (3.2.1-3) ... Selecting previously unselected package ca-certificates. Preparing to unpack .../04-ca-certificates_20240203_all.deb ... Unpacking ca-certificates (20240203) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../05-libmagic-mgc_1%3a5.45-3_amd64.deb ... Unpacking libmagic-mgc (1:5.45-3) ... Selecting previously unselected package libmagic1t64:amd64. Preparing to unpack .../06-libmagic1t64_1%3a5.45-3_amd64.deb ... Unpacking libmagic1t64:amd64 (1:5.45-3) ... Selecting previously unselected package file. Preparing to unpack .../07-file_1%3a5.45-3_amd64.deb ... Unpacking file (1:5.45-3) ... Selecting previously unselected package gettext-base. Preparing to unpack .../08-gettext-base_0.21-14+b1_amd64.deb ... Unpacking gettext-base (0.21-14+b1) ... Selecting previously unselected package libuchardet0:amd64. Preparing to unpack .../09-libuchardet0_0.0.8-1+b1_amd64.deb ... Unpacking libuchardet0:amd64 (0.0.8-1+b1) ... Selecting previously unselected package groff-base. Preparing to unpack .../10-groff-base_1.23.0-4_amd64.deb ... Unpacking groff-base (1.23.0-4) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../11-bsdextrautils_2.40-8_amd64.deb ... Unpacking bsdextrautils (2.40-8) ... Selecting previously unselected package libpipeline1:amd64. Preparing to unpack .../12-libpipeline1_1.5.7-2_amd64.deb ... Unpacking libpipeline1:amd64 (1.5.7-2) ... Selecting previously unselected package man-db. Preparing to unpack .../13-man-db_2.12.1-1_amd64.deb ... Unpacking man-db (2.12.1-1) ... Selecting previously unselected package m4. Preparing to unpack .../14-m4_1.4.19-4_amd64.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../15-autoconf_2.71-3_all.deb ... Unpacking autoconf (2.71-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../16-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../17-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../18-autopoint_0.21-14_all.deb ... Unpacking autopoint (0.21-14) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../19-libdebhelper-perl_13.15.3_all.deb ... Unpacking libdebhelper-perl (13.15.3) ... Selecting previously unselected package libtool. Preparing to unpack .../20-libtool_2.4.7-7_all.deb ... Unpacking libtool (2.4.7-7) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../21-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../22-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libsub-override-perl. Preparing to unpack .../23-libsub-override-perl_0.10-1_all.deb ... Unpacking libsub-override-perl (0.10-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../24-libfile-stripnondeterminism-perl_1.13.1-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.13.1-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../25-dh-strip-nondeterminism_1.13.1-1_all.deb ... Unpacking dh-strip-nondeterminism (1.13.1-1) ... Selecting previously unselected package libelf1t64:amd64. Preparing to unpack .../26-libelf1t64_0.191-1+b1_amd64.deb ... Unpacking libelf1t64:amd64 (0.191-1+b1) ... Selecting previously unselected package dwz. Preparing to unpack .../27-dwz_0.15-1+b1_amd64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:amd64. Preparing to unpack .../28-libicu72_72.1-4+b1_amd64.deb ... Unpacking libicu72:amd64 (72.1-4+b1) ... Selecting previously unselected package libxml2:amd64. Preparing to unpack .../29-libxml2_2.9.14+dfsg-1.3+b3_amd64.deb ... Unpacking libxml2:amd64 (2.9.14+dfsg-1.3+b3) ... Selecting previously unselected package gettext. Preparing to unpack .../30-gettext_0.21-14+b1_amd64.deb ... Unpacking gettext (0.21-14+b1) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../31-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../32-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../33-debhelper_13.15.3_all.deb ... Unpacking debhelper (13.15.3) ... Selecting previously unselected package python3-pkg-resources. Preparing to unpack .../34-python3-pkg-resources_68.1.2-2_all.deb ... Unpacking python3-pkg-resources (68.1.2-2) ... Selecting previously unselected package python3-lib2to3. Preparing to unpack .../35-python3-lib2to3_3.12.3-1_all.deb ... Unpacking python3-lib2to3 (3.12.3-1) ... Selecting previously unselected package python3-distutils. Preparing to unpack .../36-python3-distutils_3.12.3-1_all.deb ... Unpacking python3-distutils (3.12.3-1) ... Selecting previously unselected package python3-setuptools. Preparing to unpack .../37-python3-setuptools_68.1.2-2_all.deb ... Unpacking python3-setuptools (68.1.2-2) ... Selecting previously unselected package dh-python. Preparing to unpack .../38-dh-python_6.20240422_all.deb ... Unpacking dh-python (6.20240422) ... Selecting previously unselected package libbrotli1:amd64. Preparing to unpack .../39-libbrotli1_1.1.0-2+b3_amd64.deb ... Unpacking libbrotli1:amd64 (1.1.0-2+b3) ... Selecting previously unselected package libkrb5support0:amd64. Preparing to unpack .../40-libkrb5support0_1.20.1-6+b1_amd64.deb ... Unpacking libkrb5support0:amd64 (1.20.1-6+b1) ... Selecting previously unselected package libcom-err2:amd64. Preparing to unpack .../41-libcom-err2_1.47.1~rc2-1_amd64.deb ... Unpacking libcom-err2:amd64 (1.47.1~rc2-1) ... Selecting previously unselected package libk5crypto3:amd64. Preparing to unpack .../42-libk5crypto3_1.20.1-6+b1_amd64.deb ... Unpacking libk5crypto3:amd64 (1.20.1-6+b1) ... Selecting previously unselected package libkeyutils1:amd64. Preparing to unpack .../43-libkeyutils1_1.6.3-3_amd64.deb ... Unpacking libkeyutils1:amd64 (1.6.3-3) ... Selecting previously unselected package libkrb5-3:amd64. Preparing to unpack .../44-libkrb5-3_1.20.1-6+b1_amd64.deb ... Unpacking libkrb5-3:amd64 (1.20.1-6+b1) ... Selecting previously unselected package libgssapi-krb5-2:amd64. Preparing to unpack .../45-libgssapi-krb5-2_1.20.1-6+b1_amd64.deb ... Unpacking libgssapi-krb5-2:amd64 (1.20.1-6+b1) ... Selecting previously unselected package libsasl2-modules-db:amd64. Preparing to unpack .../46-libsasl2-modules-db_2.1.28+dfsg1-6_amd64.deb ... Unpacking libsasl2-modules-db:amd64 (2.1.28+dfsg1-6) ... Selecting previously unselected package libsasl2-2:amd64. Preparing to unpack .../47-libsasl2-2_2.1.28+dfsg1-6_amd64.deb ... Unpacking libsasl2-2:amd64 (2.1.28+dfsg1-6) ... Selecting previously unselected package libldap-2.5-0:amd64. Preparing to unpack .../48-libldap-2.5-0_2.5.17+dfsg-1_amd64.deb ... Unpacking libldap-2.5-0:amd64 (2.5.17+dfsg-1) ... Selecting previously unselected package libnghttp2-14:amd64. Preparing to unpack .../49-libnghttp2-14_1.61.0-1+b1_amd64.deb ... Unpacking libnghttp2-14:amd64 (1.61.0-1+b1) ... Selecting previously unselected package libpsl5t64:amd64. Preparing to unpack .../50-libpsl5t64_0.21.2-1.1_amd64.deb ... Unpacking libpsl5t64:amd64 (0.21.2-1.1) ... Selecting previously unselected package librtmp1:amd64. Preparing to unpack .../51-librtmp1_2.4+20151223.gitfa8646d.1-2+b4_amd64.deb ... Unpacking librtmp1:amd64 (2.4+20151223.gitfa8646d.1-2+b4) ... Selecting previously unselected package libssh2-1t64:amd64. Preparing to unpack .../52-libssh2-1t64_1.11.0-4.1+b2_amd64.deb ... Unpacking libssh2-1t64:amd64 (1.11.0-4.1+b2) ... Selecting previously unselected package libcurl3t64-gnutls:amd64. Preparing to unpack .../53-libcurl3t64-gnutls_8.7.1-5_amd64.deb ... Unpacking libcurl3t64-gnutls:amd64 (8.7.1-5) ... Selecting previously unselected package liberror-perl. Preparing to unpack .../54-liberror-perl_0.17029-2_all.deb ... Unpacking liberror-perl (0.17029-2) ... Selecting previously unselected package git-man. Preparing to unpack .../55-git-man_1%3a2.43.0-1_all.deb ... Unpacking git-man (1:2.43.0-1) ... Selecting previously unselected package git. Preparing to unpack .../56-git_1%3a2.43.0-1+b1_amd64.deb ... Unpacking git (1:2.43.0-1+b1) ... Selecting previously unselected package libjs-jquery. Preparing to unpack .../57-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... Selecting previously unselected package libjs-underscore. Preparing to unpack .../58-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... Selecting previously unselected package libjs-sphinxdoc. Preparing to unpack .../59-libjs-sphinxdoc_7.2.6-6_all.deb ... Unpacking libjs-sphinxdoc (7.2.6-6) ... Selecting previously unselected package libpkgconf3:amd64. Preparing to unpack .../60-libpkgconf3_1.8.1-1+b2_amd64.deb ... Unpacking libpkgconf3:amd64 (1.8.1-1+b2) ... Selecting previously unselected package pkgconf-bin. Preparing to unpack .../61-pkgconf-bin_1.8.1-1+b2_amd64.deb ... Unpacking pkgconf-bin (1.8.1-1+b2) ... Selecting previously unselected package pkgconf:amd64. Preparing to unpack .../62-pkgconf_1.8.1-1+b2_amd64.deb ... Unpacking pkgconf:amd64 (1.8.1-1+b2) ... Selecting previously unselected package pkg-config:amd64. Preparing to unpack .../63-pkg-config_1.8.1-1+b2_amd64.deb ... Unpacking pkg-config:amd64 (1.8.1-1+b2) ... Selecting previously unselected package python3-cachetools. Preparing to unpack .../64-python3-cachetools_5.3.0-2_all.deb ... Unpacking python3-cachetools (5.3.0-2) ... Selecting previously unselected package python3-chardet. Preparing to unpack .../65-python3-chardet_5.2.0+dfsg-1_all.deb ... Unpacking python3-chardet (5.2.0+dfsg-1) ... Selecting previously unselected package python3-colorama. Preparing to unpack .../66-python3-colorama_0.4.6-4_all.deb ... Unpacking python3-colorama (0.4.6-4) ... Selecting previously unselected package python3-distlib. Preparing to unpack .../67-python3-distlib_0.3.8-1_all.deb ... Unpacking python3-distlib (0.3.8-1) ... Selecting previously unselected package python3-filelock. Preparing to unpack .../68-python3-filelock_3.14.0-1_all.deb ... Unpacking python3-filelock (3.14.0-1) ... Selecting previously unselected package python3-packaging. Preparing to unpack .../69-python3-packaging_24.0-1_all.deb ... Unpacking python3-packaging (24.0-1) ... Selecting previously unselected package python3-pip-whl. Preparing to unpack .../70-python3-pip-whl_24.0+dfsg-2_all.deb ... Unpacking python3-pip-whl (24.0+dfsg-2) ... Selecting previously unselected package python3-platformdirs. Preparing to unpack .../71-python3-platformdirs_4.2.1-1_all.deb ... Unpacking python3-platformdirs (4.2.1-1) ... Selecting previously unselected package python3-pluggy. Preparing to unpack .../72-python3-pluggy_1.5.0-1_all.deb ... Unpacking python3-pluggy (1.5.0-1) ... Selecting previously unselected package python3-pyproject-api. Preparing to unpack .../73-python3-pyproject-api_1.6.1-1_all.deb ... Unpacking python3-pyproject-api (1.6.1-1) ... Selecting previously unselected package python3-setuptools-whl. Preparing to unpack .../74-python3-setuptools-whl_68.1.2-2_all.deb ... Unpacking python3-setuptools-whl (68.1.2-2) ... Selecting previously unselected package python3-wheel-whl. Preparing to unpack .../75-python3-wheel-whl_0.43.0-1_all.deb ... Unpacking python3-wheel-whl (0.43.0-1) ... Selecting previously unselected package python3-virtualenv. Preparing to unpack .../76-python3-virtualenv_20.26.1+ds-1_all.deb ... Unpacking python3-virtualenv (20.26.1+ds-1) ... Selecting previously unselected package python3-wheel. Preparing to unpack .../77-python3-wheel_0.43.0-1_all.deb ... Unpacking python3-wheel (0.43.0-1) ... Selecting previously unselected package tox. Preparing to unpack .../78-tox_4.15.0-2_all.deb ... Unpacking tox (4.15.0-2) ... Setting up media-types (10.1.0) ... Setting up libpipeline1:amd64 (1.5.7-2) ... Setting up python3-setuptools-whl (68.1.2-2) ... Setting up libkeyutils1:amd64 (1.6.3-3) ... Setting up libicu72:amd64 (72.1-4+b1) ... Setting up bsdextrautils (2.40-8) ... Setting up libmagic-mgc (1:5.45-3) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.15.3) ... Setting up libbrotli1:amd64 (1.1.0-2+b3) ... Setting up libmagic1t64:amd64 (1:5.45-3) ... Setting up libpsl5t64:amd64 (0.21.2-1.1) ... Setting up libnghttp2-14:amd64 (1.61.0-1+b1) ... Setting up gettext-base (0.21-14+b1) ... Setting up m4 (1.4.19-4) ... Setting up libcom-err2:amd64 (1.47.1~rc2-1) ... Setting up file (1:5.45-3) ... Setting up libelf1t64:amd64 (0.191-1+b1) ... Setting up libkrb5support0:amd64 (1.20.1-6+b1) ... Setting up libsasl2-modules-db:amd64 (2.1.28+dfsg1-6) ... Setting up tzdata (2024a-4) ... Current default time zone: 'Etc/UTC' Local time is now: Mon Jun 9 07:43:23 UTC 2025. Universal Time is now: Mon Jun 9 07:43:23 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up liberror-perl (0.17029-2) ... Setting up autotools-dev (20220109.1) ... Setting up libpkgconf3:amd64 (1.8.1-1+b2) ... Setting up librtmp1:amd64 (2.4+20151223.gitfa8646d.1-2+b4) ... Setting up bash-completion (1:2.13.0-1) ... Setting up autopoint (0.21-14) ... Setting up pkgconf-bin (1.8.1-1+b2) ... Setting up libk5crypto3:amd64 (1.20.1-6+b1) ... Setting up libsasl2-2:amd64 (2.1.28+dfsg1-6) ... Setting up autoconf (2.71-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.22) ... Setting up libuchardet0:amd64 (0.0.8-1+b1) ... Setting up libsub-override-perl (0.10-1) ... Setting up git-man (1:2.43.0-1) ... Setting up netbase (6.4) ... Setting up libkrb5-3:amd64 (1.20.1-6+b1) ... Setting up libssh2-1t64:amd64 (1.11.0-4.1+b2) ... Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... Setting up openssl (3.2.1-3) ... Setting up python3-wheel-whl (0.43.0-1) ... Setting up readline-common (8.2-4) ... Setting up libxml2:amd64 (2.9.14+dfsg-1.3+b3) ... Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.13.1-1) ... Setting up gettext (0.21-14+b1) ... Setting up libtool (2.4.7-7) ... Setting up libldap-2.5-0:amd64 (2.5.17+dfsg-1) ... Setting up pkgconf:amd64 (1.8.1-1+b2) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up ca-certificates (20240203) ... Updating certificates in /etc/ssl/certs... 146 added, 0 removed; done. Setting up libgssapi-krb5-2:amd64 (1.20.1-6+b1) ... Setting up pkg-config:amd64 (1.8.1-1+b2) ... Setting up libjs-sphinxdoc (7.2.6-6) ... Setting up libreadline8t64:amd64 (8.2-4) ... Setting up dh-strip-nondeterminism (1.13.1-1) ... Setting up groff-base (1.23.0-4) ... Setting up python3-pip-whl (24.0+dfsg-2) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up libpython3.11-stdlib:amd64 (3.11.9-1) ... Setting up libcurl3t64-gnutls:amd64 (8.7.1-5) ... Setting up man-db (2.12.1-1) ... Not building database; man-db/auto-update is not 'true'. Setting up git (1:2.43.0-1+b1) ... Setting up libpython3-stdlib:amd64 (3.11.8-1) ... Setting up python3.11 (3.11.9-1) ... Setting up debhelper (13.15.3) ... Setting up python3 (3.11.8-1) ... Setting up python3-distlib (0.3.8-1) ... Setting up python3-wheel (0.43.0-1) ... Setting up python3-platformdirs (4.2.1-1) ... Setting up python3-packaging (24.0-1) ... Setting up python3-pluggy (1.5.0-1) ... Setting up python3-lib2to3 (3.12.3-1) ... Setting up python3-pkg-resources (68.1.2-2) ... Setting up python3-distutils (3.12.3-1) ... Setting up python3-filelock (3.14.0-1) ... Setting up python3-setuptools (68.1.2-2) ... Setting up python3-cachetools (5.3.0-2) ... Setting up python3-colorama (0.4.6-4) ... Setting up python3-pyproject-api (1.6.1-1) ... Setting up python3-virtualenv (20.26.1+ds-1) ... Setting up python3-chardet (5.2.0+dfsg-1) ... Setting up dh-python (6.20240422) ... Setting up tox (4.15.0-2) ... Processing triggers for libc-bin (2.38-7) ... Processing triggers for ca-certificates (20240203) ... 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 I: Building the package I: Running cd /build/reproducible-path/git-imerge-1.2.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../git-imerge_1.2.0-5_source.changes dpkg-buildpackage: info: source package git-imerge dpkg-buildpackage: info: source version 1.2.0-5 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Paul Wise dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 debian/rules clean dh clean --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild I: pybuild base:311: python3.11 setup.py clean running clean removing '/build/reproducible-path/git-imerge-1.2.0/.pybuild/cpython3_3.11/build' (and everything under it) 'build/bdist.linux-x86_64' does not exist -- can't clean it 'build/scripts-3.11' does not exist -- can't clean it dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild debian/rules binary dh binary --buildsystem=pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild I: pybuild base:311: python3.11 setup.py config running config dh_auto_build -O--buildsystem=pybuild I: pybuild base:311: /usr/bin/python3 setup.py build running build running build_py copying gitimerge.py -> /build/reproducible-path/git-imerge-1.2.0/.pybuild/cpython3_3.11/build dh_auto_test -O--buildsystem=pybuild I: pybuild base:311: /usr/bin/python3 -c "import setuptools, runpy; runpy.run_path('setup.py')" bdist_wheel running bdist_wheel running build running build_py creating build creating build/lib copying gitimerge.py -> build/lib /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. !! ******************************************************************************** Please avoid running ``setup.py`` directly. Instead, use pypa/build, pypa/installer or other standards-based tools. See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. ******************************************************************************** !! self.initialize_options() installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64 creating build/bdist.linux-x86_64/wheel copying build/lib/gitimerge.py -> build/bdist.linux-x86_64/wheel running install_data creating build/bdist.linux-x86_64/wheel/git_imerge-1.2.0.data creating build/bdist.linux-x86_64/wheel/git_imerge-1.2.0.data/data creating build/bdist.linux-x86_64/wheel/usr creating build/bdist.linux-x86_64/wheel/usr/share creating build/bdist.linux-x86_64/wheel/usr/share/bash-completion creating build/bdist.linux-x86_64/wheel/usr/share/bash-completion/completions copying completions/git-imerge -> build/bdist.linux-x86_64/wheel/usr/share/bash-completion/completions running install_egg_info running egg_info creating git_imerge.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 writing manifest file 'git_imerge.egg-info/SOURCES.txt' reading manifest file 'git_imerge.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'COPYING' writing manifest file 'git_imerge.egg-info/SOURCES.txt' Copying git_imerge.egg-info to build/bdist.linux-x86_64/wheel/git_imerge-1.2.0.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/git_imerge-1.2.0.dist-info/WHEEL creating 'dist/git_imerge-1.2.0-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'gitimerge.py' adding 'usr/share/bash-completion/completions/git-imerge' adding 'git_imerge-1.2.0.dist-info/COPYING' adding 'git_imerge-1.2.0.dist-info/METADATA' adding 'git_imerge-1.2.0.dist-info/WHEEL' adding 'git_imerge-1.2.0.dist-info/entry_points.txt' adding 'git_imerge-1.2.0.dist-info/top_level.txt' adding 'git_imerge-1.2.0.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel I: pybuild base:311: cd /build/reproducible-path/git-imerge-1.2.0/.pybuild/cpython3_3.11/build; tox -c /build/reproducible-path/git-imerge-1.2.0/tox.ini --sitepackages -e py311 -x testenv.passenv+=_PYTHON_HOST_PLATFORM --installpkg /build/reproducible-path/git-imerge-1.2.0/.pybuild/cpython3_3.11/git_imerge-1.2.0-py3-none-any.whl py311: install_package .pybuild/cpython3_3.11/build> python -I -m pip install --force-reinstall --no-deps /build/reproducible-path/git-imerge-1.2.0/.pybuild/cpython3_3.11/git_imerge-1.2.0-py3-none-any.whl py311: commands[0] .pybuild/cpython3_3.11/build> /bin/sh t/test-unconflicted + dirname t/test-unconflicted + cd t + pwd + dirname /build/reproducible-path/git-imerge-1.2.0/t + BASE=/build/reproducible-path/git-imerge-1.2.0 + . /build/reproducible-path/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + TMP=/build/reproducible-path/git-imerge-1.2.0/t/tmp/unconflicted + DESCRIPTION=git-imerge test repository without conflicts + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/unconflicted git-imerge test repository without conflicts + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/unconflicted + local description=git-imerge test repository without conflicts + delete_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/unconflicted git-imerge test repository without conflicts + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/unconflicted + local description=git-imerge test repository without conflicts + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/unconflicted + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/unconflicted + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/unconflicted/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/unconflicted/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/unconflicted + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + modify a.txt 1 + filename=a.txt + text=1 + echo 1 + git add a.txt + commit -m a⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m a⇒1 [a b862e30] a⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify a.txt 2 + filename=a.txt + text=2 + echo 2 + git add a.txt + commit -m a⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m a⇒2 [a dcbe282] a⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify a.txt 3 + filename=a.txt + text=3 + echo 3 + git add a.txt + commit -m a⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m a⇒3 [a ecd8647] a⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify a.txt 4 + filename=a.txt + text=4 + echo 4 + git add a.txt + commit -m a⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m a⇒4 [a 1634bab] a⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify a.txt 5 + filename=a.txt + text=5 + echo 5 + git add a.txt + commit -m a⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m a⇒5 [a 909ce12] a⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify a.txt 6 + filename=a.txt + text=6 + echo 6 + git add a.txt + commit -m a⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m a⇒6 [a f6520bf] a⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + modify a.txt 7 + filename=a.txt + text=7 + echo 7 + git add a.txt + commit -m a⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m a⇒7 [a 6797186] a⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + modify a.txt 8 + filename=a.txt + text=8 + echo 8 + git add a.txt + commit -m a⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m a⇒8 [a 49643dd] a⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b b master -- Switched to a new branch 'b' + seq 5 + modify b.txt 1 + filename=b.txt + text=1 + echo 1 + git add b.txt + commit -m b⇒1 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m b⇒1 [b d43305b] b⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify b.txt 2 + filename=b.txt + text=2 + echo 2 + git add b.txt + commit -m b⇒2 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m b⇒2 [b 853ee68] b⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify b.txt 3 + filename=b.txt + text=3 + echo 3 + git add b.txt + commit -m b⇒3 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m b⇒3 [b 03a2455] b⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify b.txt 4 + filename=b.txt + text=4 + echo 4 + git add b.txt + commit -m b⇒4 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m b⇒4 [b 484ea85] b⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify b.txt 5 + filename=b.txt + text=5 + echo 5 + git add b.txt + commit -m b⇒5 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m b⇒5 [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 Jun 9 07:43:50 2025 +0000 # # On branch a-b-merge # Changes to be committed: # modified: b.txt # [a-b-merge 7a987c9] Merge b into a (using imerge) Date: Mon Jun 9 07:43:50 2025 +0000 + check_tree a-b-merge e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-merge + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git rev-parse a-b-merge^{tree} + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge simplify --goal=rebase --branch=a-b-rebase + check_tree a-b-rebase e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-rebase + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git rev-parse a-b-rebase^{tree} + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge simplify --goal=rebase-with-history --branch=a-b-rebase-with-history + check_tree a-b-rebase-with-history e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-rebase-with-history + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git rev-parse a-b-rebase-with-history^{tree} + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge simplify --goal=border --branch=a-b-border + check_tree a-b-border e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-border + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git rev-parse a-b-border^{tree} + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge simplify --goal=border-with-history --branch=a-b-border-with-history + check_tree a-b-border-with-history e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-border-with-history + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git rev-parse a-b-border-with-history^{tree} + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge simplify --goal=border-with-history2 --branch=a-b-border-with-history2 + check_tree a-b-border-with-history2 e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-border-with-history2 + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git rev-parse a-b-border-with-history2^{tree} + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git-imerge remove + git checkout a Switched to branch 'a' + git-imerge start --goal=full --name=a-b b Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 1-5...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 2-5...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Attempting to merge 3-5...success. Attempting to merge 4-1...success. Attempting to merge 4-2...success. Attempting to merge 4-3...success. Attempting to merge 4-4...success. Attempting to merge 4-5...success. Attempting to merge 5-1...success. Attempting to merge 5-2...success. Attempting to merge 5-3...success. Attempting to merge 5-4...success. Attempting to merge 5-5...success. Attempting to merge 6-1...success. Attempting to merge 6-2...success. Attempting to merge 6-3...success. Attempting to merge 6-4...success. Attempting to merge 6-5...success. Attempting to merge 7-1...success. Attempting to merge 7-2...success. Attempting to merge 7-3...success. Attempting to merge 7-4...success. Attempting to merge 7-5...success. Attempting to merge 8-1...success. Attempting to merge 8-2...success. Attempting to merge 8-3...success. Attempting to merge 8-4...success. Attempting to merge 8-5...success. Merge is complete! + git-imerge list * a-b + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 8 | | | 0 - ********* - a *........ *........ *........ *........ 5 - *........ | b 0 5 8 | | | 0 - ********* - a *.......| *.......| *.......| *.......| 5 - *-------+ | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=a-b-full + check_tree a-b-full e4a7b27799be355bbcbf8bfe9c29d74190082c42 + local refname=a-b-full + local expected_tree=e4a7b27799be355bbcbf8bfe9c29d74190082c42 + git rev-parse a-b-full^{tree} + test e4a7b27799be355bbcbf8bfe9c29d74190082c42 = e4a7b27799be355bbcbf8bfe9c29d74190082c42 py311: commands[1] .pybuild/cpython3_3.11/build> /bin/sh t/test-conflicted + dirname t/test-conflicted + cd t + pwd + dirname /build/reproducible-path/git-imerge-1.2.0/t + BASE=/build/reproducible-path/git-imerge-1.2.0 + . /build/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-4-3 + DESCRIPTION=git-imerge test repository with conflict at 4-3 + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-4-3 git-imerge test repository with conflict at 4-3 + local path=/build/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-4-3 git-imerge test repository with conflict at 4-3 + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-4-3 + local description=git-imerge test repository with conflict at 4-3 + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-4-3 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-4-3 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-4-3/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-4-3/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-4-3 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + commit -m c⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m c⇒1 [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + commit -m c⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m c⇒2 [c 7c431f2] 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⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m c⇒3 [c f02ab24] 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 conflict.txt c version + filename=conflict.txt + text=c version + echo c version + git add conflict.txt + commit -m c⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m c⇒4 [c 3c091de] c⇒4 2 files changed, 2 insertions(+), 2 deletions(-) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + commit -m c⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m c⇒5 [c a0ac37a] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + commit -m c⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m c⇒6 [c ed9fdfa] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + commit -m c⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m c⇒7 [c 1da7bf5] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + commit -m c⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m c⇒8 [c d8de99f] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + commit -m c⇒9 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m c⇒9 [c 9cde605] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' + seq 6 + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + commit -m d⇒1 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m d⇒1 [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + commit -m d⇒2 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m d⇒2 [d 93e27e6] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + modify conflict.txt d version + filename=conflict.txt + text=d version + echo d version + git add conflict.txt + commit -m d⇒3 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m d⇒3 [d 2bb1a7e] d⇒3 2 files changed, 2 insertions(+), 2 deletions(-) + modify d.txt 4 + filename=d.txt + text=4 + echo 4 + git add d.txt + commit -m d⇒4 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m d⇒4 [d 81f9c80] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + commit -m d⇒5 + TIME=1112912008 + GIT_AUTHOR_DATE=@1112912008 +0000 GIT_COMMITTER_DATE=@1112912008 +0000 git commit -m d⇒5 [d 3690dde] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + commit -m d⇒6 + TIME=1112912009 + GIT_AUTHOR_DATE=@1112912009 +0000 GIT_COMMITTER_DATE=@1112912009 +0000 git commit -m d⇒6 [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 20c6ebe] 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 Jun 9 07:43:58 2025 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge bba1158] Merge d into c (using imerge) Date: Mon Jun 9 07:43:58 2025 +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...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 2c8d270 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 3b377b8] 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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-1 + DESCRIPTION=git-imerge test repository with conflict at 1-1 + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-1 git-imerge test repository with conflict at 1-1 + local path=/build/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-1 git-imerge test repository with conflict at 1-1 + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-1 + local description=git-imerge test repository with conflict at 1-1 + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-1 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-1 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-1/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-1/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-1 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + modify conflict.txt c version + filename=conflict.txt + text=c version + echo c version + git add conflict.txt + commit -m c⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m c⇒1 [c 2120f40] c⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + commit -m c⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m c⇒2 [c 90cc7de] 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⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m c⇒3 [c 2046ed2] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + commit -m c⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m c⇒4 [c 8a2cee9] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + commit -m c⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m c⇒5 [c ac16a05] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + commit -m c⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m c⇒6 [c 30dd2ae] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + commit -m c⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m c⇒7 [c 0883eb9] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + commit -m c⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m c⇒8 [c f661c06] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + commit -m c⇒9 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m c⇒9 [c 243e8ed] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' + seq 6 + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + modify conflict.txt d version + filename=conflict.txt + text=d version + echo d version + git add conflict.txt + commit -m d⇒1 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m d⇒1 [d ac0427a] d⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + commit -m d⇒2 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m d⇒2 [d 43c38c0] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + commit -m d⇒3 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m d⇒3 [d 0260058] 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⇒4 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m d⇒4 [d 40fef44] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + commit -m d⇒5 + TIME=1112912008 + GIT_AUTHOR_DATE=@1112912008 +0000 GIT_COMMITTER_DATE=@1112912008 +0000 git commit -m d⇒5 [d b080a65] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + commit -m d⇒6 + TIME=1112912009 + GIT_AUTHOR_DATE=@1112912009 +0000 GIT_COMMITTER_DATE=@1112912009 +0000 git commit -m d⇒6 [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 c55f84e] 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 Jun 9 07:44:03 2025 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge dec8003] Merge d into c (using imerge) Date: Mon Jun 9 07:44:03 2025 +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 3e3b7a5] 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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-1 + DESCRIPTION=git-imerge test repository with conflict at 9-1 + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-1 git-imerge test repository with conflict at 9-1 + local path=/build/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-1 git-imerge test repository with conflict at 9-1 + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-1 + local description=git-imerge test repository with conflict at 9-1 + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-1 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-1 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-1/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-1/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-1 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + commit -m c⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m c⇒1 [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + commit -m c⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m c⇒2 [c 7c431f2] 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⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m c⇒3 [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + commit -m c⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m c⇒4 [c ed9122f] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + commit -m c⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m c⇒5 [c 1d3bf09] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + commit -m c⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m c⇒6 [c f999ecd] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + commit -m c⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m c⇒7 [c 7050a8a] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + commit -m c⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m c⇒8 [c 9732e77] 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 conflict.txt c version + filename=conflict.txt + text=c version + echo c version + git add conflict.txt + commit -m c⇒9 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m c⇒9 [c 73a5eed] c⇒9 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout -b d master -- Switched to a new branch 'd' + seq 6 + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + modify conflict.txt d version + filename=conflict.txt + text=d version + echo d version + git add conflict.txt + commit -m d⇒1 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m d⇒1 [d ac0427a] d⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + commit -m d⇒2 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m d⇒2 [d 43c38c0] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + commit -m d⇒3 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m d⇒3 [d 0260058] 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⇒4 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m d⇒4 [d 40fef44] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + commit -m d⇒5 + TIME=1112912008 + GIT_AUTHOR_DATE=@1112912008 +0000 GIT_COMMITTER_DATE=@1112912008 +0000 git commit -m d⇒5 [d b080a65] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + commit -m d⇒6 + TIME=1112912009 + GIT_AUTHOR_DATE=@1112912009 +0000 GIT_COMMITTER_DATE=@1112912009 +0000 git commit -m d⇒6 [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 43ba0ad] 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 Jun 9 07:44:07 2025 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge f5b3175] Merge d into c (using imerge) Date: Mon Jun 9 07:44:07 2025 +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 99f2540] 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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-6 + DESCRIPTION=git-imerge test repository with conflict at 1-6 + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-6 git-imerge test repository with conflict at 1-6 + local path=/build/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-6 git-imerge test repository with conflict at 1-6 + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-6 + local description=git-imerge test repository with conflict at 1-6 + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-6 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-6 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-6/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-6/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-6 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + modify conflict.txt c version + filename=conflict.txt + text=c version + echo c version + git add conflict.txt + commit -m c⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m c⇒1 [c 2120f40] c⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + commit -m c⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m c⇒2 [c 90cc7de] 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⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m c⇒3 [c 2046ed2] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + commit -m c⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m c⇒4 [c 8a2cee9] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + commit -m c⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m c⇒5 [c ac16a05] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + commit -m c⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m c⇒6 [c 30dd2ae] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + commit -m c⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m c⇒7 [c 0883eb9] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + commit -m c⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m c⇒8 [c f661c06] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + commit -m c⇒9 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m c⇒9 [c 243e8ed] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' + seq 6 + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + commit -m d⇒1 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m d⇒1 [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + commit -m d⇒2 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m d⇒2 [d 93e27e6] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + commit -m d⇒3 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m d⇒3 [d 133f385] 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⇒4 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m d⇒4 [d 586472a] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + commit -m d⇒5 + TIME=1112912008 + GIT_AUTHOR_DATE=@1112912008 +0000 GIT_COMMITTER_DATE=@1112912008 +0000 git commit -m d⇒5 [d 9522207] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + modify conflict.txt d version + filename=conflict.txt + text=d version + echo d version + git add conflict.txt + commit -m d⇒6 + TIME=1112912009 + GIT_AUTHOR_DATE=@1112912009 +0000 GIT_COMMITTER_DATE=@1112912009 +0000 git commit -m d⇒6 [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 d1da13d] 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 Jun 9 07:44:11 2025 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 18a15dc] Merge d into c (using imerge) Date: Mon Jun 9 07:44:11 2025 +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 1aa5704 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 690244e] 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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-6 + DESCRIPTION=git-imerge test repository with conflict at 9-6 + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-6 git-imerge test repository with conflict at 9-6 + local path=/build/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-6 git-imerge test repository with conflict at 9-6 + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-6 + local description=git-imerge test repository with conflict at 9-6 + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-6 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-6 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-6/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-6/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-6 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + commit -m c⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m c⇒1 [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + commit -m c⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m c⇒2 [c 7c431f2] 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⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m c⇒3 [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + commit -m c⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m c⇒4 [c ed9122f] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + commit -m c⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m c⇒5 [c 1d3bf09] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + commit -m c⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m c⇒6 [c f999ecd] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + commit -m c⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m c⇒7 [c 7050a8a] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + commit -m c⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m c⇒8 [c 9732e77] 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 conflict.txt c version + filename=conflict.txt + text=c version + echo c version + git add conflict.txt + commit -m c⇒9 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m c⇒9 [c 73a5eed] c⇒9 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout -b d master -- Switched to a new branch 'd' + seq 6 + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + commit -m d⇒1 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m d⇒1 [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + commit -m d⇒2 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m d⇒2 [d 93e27e6] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + commit -m d⇒3 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m d⇒3 [d 133f385] 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⇒4 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m d⇒4 [d 586472a] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + commit -m d⇒5 + TIME=1112912008 + GIT_AUTHOR_DATE=@1112912008 +0000 GIT_COMMITTER_DATE=@1112912008 +0000 git commit -m d⇒5 [d 9522207] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + modify conflict.txt d version + filename=conflict.txt + text=d version + echo d version + git add conflict.txt + commit -m d⇒6 + TIME=1112912009 + GIT_AUTHOR_DATE=@1112912009 +0000 GIT_COMMITTER_DATE=@1112912009 +0000 git commit -m d⇒6 [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 eba8bfc] 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 Jun 9 07:44:14 2025 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge a3d9617] Merge d into c (using imerge) Date: Mon Jun 9 07:44:14 2025 +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 f821322] 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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-2 + DESCRIPTION=git-imerge test repository with conflict at 1-2 + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-2 git-imerge test repository with conflict at 1-2 + local path=/build/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-2 git-imerge test repository with conflict at 1-2 + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-2 + local description=git-imerge test repository with conflict at 1-2 + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-2 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-2 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-2/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-2/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-1-2 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + modify conflict.txt c version + filename=conflict.txt + text=c version + echo c version + git add conflict.txt + commit -m c⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m c⇒1 [c 2120f40] c⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + commit -m c⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m c⇒2 [c 90cc7de] 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⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m c⇒3 [c 2046ed2] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + commit -m c⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m c⇒4 [c 8a2cee9] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + commit -m c⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m c⇒5 [c ac16a05] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + commit -m c⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m c⇒6 [c 30dd2ae] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + commit -m c⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m c⇒7 [c 0883eb9] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + commit -m c⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m c⇒8 [c f661c06] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + commit -m c⇒9 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m c⇒9 [c 243e8ed] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' + seq 6 + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + commit -m d⇒1 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m d⇒1 [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + modify conflict.txt d version + filename=conflict.txt + text=d version + echo d version + git add conflict.txt + commit -m d⇒2 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m d⇒2 [d 69efde8] d⇒2 2 files changed, 2 insertions(+), 2 deletions(-) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + commit -m d⇒3 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m d⇒3 [d 3169557] 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⇒4 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m d⇒4 [d 86c8052] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + commit -m d⇒5 + TIME=1112912008 + GIT_AUTHOR_DATE=@1112912008 +0000 GIT_COMMITTER_DATE=@1112912008 +0000 git commit -m d⇒5 [d 1700773] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + commit -m d⇒6 + TIME=1112912009 + GIT_AUTHOR_DATE=@1112912009 +0000 GIT_COMMITTER_DATE=@1112912009 +0000 git commit -m d⇒6 [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 8efc91a] 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 Jun 9 07:44:18 2025 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge aaabe69] Merge d into c (using imerge) Date: Mon Jun 9 07:44:18 2025 +0000 + check_tree c-d-merge ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-merge + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 + git rev-parse c-d-merge^{tree} + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 + git rev-parse c-d-rebase^{tree} + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-rebase-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 + git rev-parse c-d-rebase-with-history^{tree} + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 + git rev-parse c-d-border^{tree} + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 + git rev-parse c-d-border-with-history^{tree} + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-border-with-history2 + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 + git rev-parse c-d-border-with-history2^{tree} + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 + git-imerge remove + git checkout c Switched to branch 'c' + git-imerge start --goal=full --first-parent --name=c-d d + tee start.out Attempting to merge 1-1...success. Attempting to merge 1-2...conflict. Attempting to merge 2-1...success. Attempting to merge 3-1...success. Attempting to merge 4-1...success. Attempting to merge 5-1...success. Attempting to merge 6-1...success. Attempting to merge 7-1...success. Attempting to merge 8-1...success. Attempting to merge 9-1...success. Previous HEAD position was f040151 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 e2d7425] 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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-5 + DESCRIPTION=git-imerge test repository with conflict at 9-5 + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-5 git-imerge test repository with conflict at 9-5 + local path=/build/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-5 git-imerge test repository with conflict at 9-5 + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-5 + local description=git-imerge test repository with conflict at 9-5 + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-5 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-5 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-5/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-5/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-9-5 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + commit -m c⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m c⇒1 [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + commit -m c⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m c⇒2 [c 7c431f2] 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⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m c⇒3 [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + commit -m c⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m c⇒4 [c ed9122f] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + commit -m c⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m c⇒5 [c 1d3bf09] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + commit -m c⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m c⇒6 [c f999ecd] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + commit -m c⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m c⇒7 [c 7050a8a] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + commit -m c⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m c⇒8 [c 9732e77] 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 conflict.txt c version + filename=conflict.txt + text=c version + echo c version + git add conflict.txt + commit -m c⇒9 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m c⇒9 [c 73a5eed] c⇒9 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout -b d master -- Switched to a new branch 'd' + seq 6 + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + commit -m d⇒1 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m d⇒1 [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + commit -m d⇒2 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m d⇒2 [d 93e27e6] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + commit -m d⇒3 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m d⇒3 [d 133f385] 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⇒4 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m d⇒4 [d 586472a] 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 conflict.txt d version + filename=conflict.txt + text=d version + echo d version + git add conflict.txt + commit -m d⇒5 + TIME=1112912008 + GIT_AUTHOR_DATE=@1112912008 +0000 GIT_COMMITTER_DATE=@1112912008 +0000 git commit -m d⇒5 [d 0a6f956] d⇒5 2 files changed, 2 insertions(+), 2 deletions(-) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + commit -m d⇒6 + TIME=1112912009 + GIT_AUTHOR_DATE=@1112912009 +0000 GIT_COMMITTER_DATE=@1112912009 +0000 git commit -m d⇒6 [d bfb30f0] d⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge autofill + tee autofill.out Attempting automerge of 9-6...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-4...success. Attempting automerge of 1-6...success. Attempting automerge of 9-6...failure. Attempting automerge of 5-6...success. Attempting automerge of 7-6...success. Attempting automerge of 8-6...success. Attempting automerge of 9-1...success. Attempting automerge of 9-4...success. Attempting automerge of 9-5...failure. Autofilling 1-6...success. Autofilling 2-6...success. Autofilling 3-6...success. Autofilling 4-6...success. Autofilling 5-6...success. Autofilling 6-6...success. Autofilling 7-6...success. Autofilling 8-1...success. Autofilling 8-2...success. Autofilling 8-3...success. Autofilling 8-4...success. Autofilling 8-5...success. Autofilling 8-6 (first way)...success. Autofilling 8-6 (second way)...success. The two ways of autofilling 8-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:9,0:7]. Autofilling 9-1...success. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[8:10,0:5]. Attempting automerge of 9-6...failure. Attempting automerge of 9-5...failure. HEAD is now at 73a5eed c⇒9 Conflict; suggest manual merge of 9-5 + grep -q Traceback autofill.out + grep -q suggest manual merge of 9-5 autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *???????.. *???????.. *???????.. *???????.. 5 - *???????.# 6 - *........? | d 0 5 9 | | | 0 - ********** - c *???????.| *???????.| *???????.| *???????.+ 5 - *???????|# 6 - *-------+? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 73a5eedb087a0f656d730831b8def7943b40f3cf Author: Loú User Date: Thu Apr 7 22:13:23 2005 +0000 c⇒9 Original second commit: commit 0a6f956bd00cebb5567e80d6ee247a51128ad36f Author: Loú User Date: Thu Apr 7 22:13:28 2005 +0000 d⇒5 There was a conflict merging commit 9-5, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo merged version + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d 5db4bba] 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 Jun 9 07:44:22 2025 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 3e308e9] Merge d into c (using imerge) Date: Mon Jun 9 07:44:22 2025 +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 feb5186] 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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-5-1 + DESCRIPTION=git-imerge test repository with conflict at 5-1 + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-5-1 git-imerge test repository with conflict at 5-1 + local path=/build/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-5-1 git-imerge test repository with conflict at 5-1 + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-5-1 + local description=git-imerge test repository with conflict at 5-1 + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-5-1 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-5-1 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-5-1/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-5-1/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-5-1 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + commit -m c⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m c⇒1 [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + commit -m c⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m c⇒2 [c 7c431f2] 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⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m c⇒3 [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + commit -m c⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m c⇒4 [c ed9122f] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + modify conflict.txt c version + filename=conflict.txt + text=c version + echo c version + git add conflict.txt + commit -m c⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m c⇒5 [c 7e31f25] c⇒5 2 files changed, 2 insertions(+), 2 deletions(-) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + commit -m c⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m c⇒6 [c df3c57a] c⇒6 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + commit -m c⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m c⇒7 [c ea32d81] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + commit -m c⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m c⇒8 [c 44473d6] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + commit -m c⇒9 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m c⇒9 [c d8d80cf] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' + seq 6 + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + modify conflict.txt d version + filename=conflict.txt + text=d version + echo d version + git add conflict.txt + commit -m d⇒1 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m d⇒1 [d ac0427a] d⇒1 2 files changed, 2 insertions(+), 2 deletions(-) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + commit -m d⇒2 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m d⇒2 [d 43c38c0] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + commit -m d⇒3 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m d⇒3 [d 0260058] 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⇒4 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m d⇒4 [d 40fef44] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + commit -m d⇒5 + TIME=1112912008 + GIT_AUTHOR_DATE=@1112912008 +0000 GIT_COMMITTER_DATE=@1112912008 +0000 git commit -m d⇒5 [d b080a65] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + commit -m d⇒6 + TIME=1112912009 + GIT_AUTHOR_DATE=@1112912009 +0000 GIT_COMMITTER_DATE=@1112912009 +0000 git commit -m d⇒6 [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...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 753bc38] 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 Jun 9 07:44:26 2025 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 9749eee] Merge d into c (using imerge) Date: Mon Jun 9 07:44:26 2025 +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...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 0cd54d1] 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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-6-6 + DESCRIPTION=git-imerge test repository with conflict at 6-6 + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-6-6 git-imerge test repository with conflict at 6-6 + local path=/build/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-6-6 git-imerge test repository with conflict at 6-6 + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-6-6 + local description=git-imerge test repository with conflict at 6-6 + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-6-6 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-6-6 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-6-6/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-6-6/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/conflicted-6-6 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + modify c.txt 1 + filename=c.txt + text=1 + echo 1 + git add c.txt + commit -m c⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m c⇒1 [c 89e2141] c⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 2 + filename=c.txt + text=2 + echo 2 + git add c.txt + commit -m c⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m c⇒2 [c 7c431f2] 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⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m c⇒3 [c f02ab24] c⇒3 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 4 + filename=c.txt + text=4 + echo 4 + git add c.txt + commit -m c⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m c⇒4 [c ed9122f] c⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 5 + filename=c.txt + text=5 + echo 5 + git add c.txt + commit -m c⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m c⇒5 [c 1d3bf09] c⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 6 + filename=c.txt + text=6 + echo 6 + git add c.txt + modify conflict.txt c version + filename=conflict.txt + text=c version + echo c version + git add conflict.txt + commit -m c⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m c⇒6 [c fe4fed8] c⇒6 2 files changed, 2 insertions(+), 2 deletions(-) + modify c.txt 7 + filename=c.txt + text=7 + echo 7 + git add c.txt + commit -m c⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m c⇒7 [c ec255ea] c⇒7 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 8 + filename=c.txt + text=8 + echo 8 + git add c.txt + commit -m c⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m c⇒8 [c 7459ac3] c⇒8 1 file changed, 1 insertion(+), 1 deletion(-) + modify c.txt 9 + filename=c.txt + text=9 + echo 9 + git add c.txt + commit -m c⇒9 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m c⇒9 [c 70408c8] c⇒9 1 file changed, 1 insertion(+), 1 deletion(-) + git checkout -b d master -- Switched to a new branch 'd' + seq 6 + modify d.txt 1 + filename=d.txt + text=1 + echo 1 + git add d.txt + commit -m d⇒1 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m d⇒1 [d bd5368a] d⇒1 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 2 + filename=d.txt + text=2 + echo 2 + git add d.txt + commit -m d⇒2 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m d⇒2 [d 93e27e6] d⇒2 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 3 + filename=d.txt + text=3 + echo 3 + git add d.txt + commit -m d⇒3 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m d⇒3 [d 133f385] 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⇒4 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m d⇒4 [d 586472a] d⇒4 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 5 + filename=d.txt + text=5 + echo 5 + git add d.txt + commit -m d⇒5 + TIME=1112912008 + GIT_AUTHOR_DATE=@1112912008 +0000 GIT_COMMITTER_DATE=@1112912008 +0000 git commit -m d⇒5 [d 9522207] d⇒5 1 file changed, 1 insertion(+), 1 deletion(-) + modify d.txt 6 + filename=d.txt + text=6 + echo 6 + git add d.txt + modify conflict.txt d version + filename=conflict.txt + text=d version + echo d version + git add conflict.txt + commit -m d⇒6 + TIME=1112912009 + GIT_AUTHOR_DATE=@1112912009 +0000 GIT_COMMITTER_DATE=@1112912009 +0000 git commit -m d⇒6 [d f7e451a] d⇒6 2 files changed, 2 insertions(+), 2 deletions(-) + git checkout c Switched to branch 'c' + git-imerge init --name=c-d d + git-imerge list * c-d + git-imerge diagram --commits --frontier --html=imerge0.html 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d 0 5 9 | | | 0 - ********** - c *????????? *????????? *????????? *????????? 5 - *????????? 6 - *????????? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge autofill + tee autofill.out Attempting automerge of 9-6...failure. Attempting automerge of 1-1...success. Attempting automerge of 1-4...success. Attempting automerge of 1-6...success. Attempting automerge of 9-6...failure. Attempting automerge of 5-6...success. Attempting automerge of 7-6...failure. Attempting automerge of 6-6...failure. Attempting automerge of 6-1...success. Attempting automerge of 6-4...success. Attempting automerge of 6-5...success. Attempting automerge of 9-5...success. Autofilling 1-6...success. Autofilling 2-6...success. Autofilling 3-6...success. Autofilling 4-6...success. Autofilling 5-1...success. Autofilling 5-2...success. Autofilling 5-3...success. Autofilling 5-4...success. Autofilling 5-5...success. Autofilling 5-6 (first way)...success. Autofilling 5-6 (second way)...success. The two ways of autofilling 5-6 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[0:6,0:7]. Autofilling 6-5...success. Autofilling 7-5...success. Autofilling 8-5...success. Autofilling 9-1...success. Autofilling 9-2...success. Autofilling 9-3...success. Autofilling 9-4...success. Autofilling 9-5 (first way)...success. Autofilling 9-5 (second way)...success. The two ways of autofilling 9-5 agree. Recording autofilled block MergeState('c-d', tip1='c', tip2='d', goal='merge')[5:10,0:6]. Attempting automerge of 9-6...failure. Attempting automerge of 6-6...failure. HEAD is now at 70408c8 c⇒9 Conflict; suggest manual merge of 6-6 + grep -q Traceback autofill.out + grep -q suggest manual merge of 6-6 autofill.out + git-imerge diagram --commits --frontier --html=imerge1.html 0 5 9 | | | 0 - ********** - c *????.???. *????.???. *????.???. *????.???. 5 - *????..... 6 - *.....#??? | d 0 5 9 | | | 0 - ********** - c *????.???| *????.???| *????.???| *????.???| 5 - *????.---+ 6 - *----+#??? | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge continue --edit Switched to branch 'imerge/c-d' Auto-merging conflict.txt CONFLICT (content): Merge conflict in conflict.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit fe4fed83ab13bbc7e9ee5ef0a814b170b8194854 Author: Loú User Date: Thu Apr 7 22:13:20 2005 +0000 c⇒6 Original second commit: commit f7e451a6c9656dda15641a9fbc591a602f158692 Author: Loú User Date: Thu Apr 7 22:13:29 2005 +0000 d⇒6 There was a conflict merging commit 6-6, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + echo merged version + git add conflict.txt + git-imerge continue --no-edit [imerge/c-d 692f711] 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 Jun 9 07:44:29 2025 +0000 # # On branch c-d-merge # Changes to be committed: # modified: conflict.txt # modified: d.txt # [c-d-merge 30406d1] Merge d into c (using imerge) Date: Mon Jun 9 07:44:29 2025 +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 5199de6 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 c07c400] imerge 'c-d': manual merge 6-6 + git-imerge continue --edit Merge has been recorded for merge 6-6. Attempting to merge 7-6...success. Attempting to merge 8-6...success. Attempting to merge 9-6...success. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge4.html 0 5 9 | | | 0 - ********** - c *......... *......... *......... *......... 5 - *......... 6 - *.....*... | d 0 5 9 | | | 0 - ********** - c *........| *........| *........| *........| 5 - *........| 6 - *-----*--+ | d Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=c-d-full + check_tree c-d-full ffa191c987a8d3f597376744a95439fa1b4a55c5 + local refname=c-d-full + local expected_tree=ffa191c987a8d3f597376744a95439fa1b4a55c5 + git rev-parse c-d-full^{tree} + test ffa191c987a8d3f597376744a95439fa1b4a55c5 = ffa191c987a8d3f597376744a95439fa1b4a55c5 py311: commands[2] .pybuild/cpython3_3.11/build> /bin/sh t/test-really-conflicted + dirname t/test-really-conflicted + cd t + pwd + dirname /build/reproducible-path/git-imerge-1.2.0/t + BASE=/build/reproducible-path/git-imerge-1.2.0 + . /build/reproducible-path/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + TMP=/build/reproducible-path/git-imerge-1.2.0/t/tmp/really-conflicted + DESCRIPTION=git-imerge test repository with multiple conflicts + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/really-conflicted git-imerge test repository with multiple conflicts + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/really-conflicted + local description=git-imerge test repository with multiple conflicts + delete_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/really-conflicted git-imerge test repository with multiple conflicts + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/really-conflicted + local description=git-imerge test repository with multiple conflicts + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/really-conflicted + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/really-conflicted + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/really-conflicted/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/really-conflicted/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/really-conflicted + cd /build/reproducible-path/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 + modify conflict0.txt original version + filename=conflict0.txt + text=original version + echo original version + git add conflict0.txt + modify conflict1.txt original version + filename=conflict1.txt + text=original version + echo original version + git add conflict1.txt + modify conflict2.txt original version + filename=conflict2.txt + text=original version + echo original version + git add conflict2.txt + modify conflict3.txt original version + filename=conflict3.txt + text=original version + echo original version + git add conflict3.txt + modify conflict4.txt original version + filename=conflict4.txt + text=original version + echo original version + git add conflict4.txt + modify conflict5.txt original version + filename=conflict5.txt + text=original version + echo original version + git add conflict5.txt + modify conflict6.txt original version + filename=conflict6.txt + text=original version + echo original version + git add conflict6.txt + modify conflict7.txt original version + filename=conflict7.txt + text=original version + echo original version + git add conflict7.txt + commit -m m⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m c⇒1 [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⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m c⇒2 [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⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m c⇒3 [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⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m c⇒4 [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⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m c⇒5 [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⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m c⇒6 [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⇒7 + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m c⇒7 [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⇒8 + TIME=1112912002 + GIT_AUTHOR_DATE=@1112912002 +0000 GIT_COMMITTER_DATE=@1112912002 +0000 git commit -m c⇒8 [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⇒9 + TIME=1112912003 + GIT_AUTHOR_DATE=@1112912003 +0000 GIT_COMMITTER_DATE=@1112912003 +0000 git commit -m c⇒9 [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⇒1 + TIME=1112912004 + GIT_AUTHOR_DATE=@1112912004 +0000 GIT_COMMITTER_DATE=@1112912004 +0000 git commit -m d⇒1 [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⇒2 + TIME=1112912005 + GIT_AUTHOR_DATE=@1112912005 +0000 GIT_COMMITTER_DATE=@1112912005 +0000 git commit -m d⇒2 [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⇒3 + TIME=1112912006 + GIT_AUTHOR_DATE=@1112912006 +0000 GIT_COMMITTER_DATE=@1112912006 +0000 git commit -m d⇒3 [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⇒4 + TIME=1112912007 + GIT_AUTHOR_DATE=@1112912007 +0000 GIT_COMMITTER_DATE=@1112912007 +0000 git commit -m d⇒4 [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⇒5 + TIME=1112912008 + GIT_AUTHOR_DATE=@1112912008 +0000 GIT_COMMITTER_DATE=@1112912008 +0000 git commit -m d⇒5 [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⇒6 + TIME=1112912009 + GIT_AUTHOR_DATE=@1112912009 +0000 GIT_COMMITTER_DATE=@1112912009 +0000 git commit -m d⇒6 [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⇒7 + TIME=1112912010 + GIT_AUTHOR_DATE=@1112912010 +0000 GIT_COMMITTER_DATE=@1112912010 +0000 git commit -m d⇒7 [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⇒8 + TIME=1112912011 + GIT_AUTHOR_DATE=@1112912011 +0000 GIT_COMMITTER_DATE=@1112912011 +0000 git commit -m d⇒8 [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 + git-imerge continue --no-edit + tee autofill.out 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 + 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 + grep -q ==== conflict1.txt + grep -q ==== conflict2.txt + grep -q ==== conflict3.txt + grep -q ==== conflict4.txt + grep -q ==== conflict5.txt + grep -q ==== conflict6.txt + grep -q ==== conflict7.txt + true + git-imerge continue --no-edit + tee autofill.out [imerge/c-d 596182b] 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 + grep -q ==== conflict0.txt + grep -q ==== conflict1.txt + grep -q ==== conflict2.txt + grep -q ==== conflict3.txt + 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 + grep -q ==== conflict5.txt + grep -q ==== conflict6.txt + grep -q ==== conflict7.txt + true + git-imerge continue --no-edit + tee autofill.out [imerge/c-d e0cec3d] 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: 66b9594 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 66b9594 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 + grep -q ==== conflict0.txt + 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 + grep -q ==== conflict2.txt + grep -q ==== conflict3.txt + grep -q ==== conflict4.txt + grep -q ==== conflict5.txt + grep -q ==== conflict6.txt + grep -q ==== conflict7.txt + true + git-imerge continue --no-edit + tee autofill.out [imerge/c-d 1c91ec2] 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 9a902fd 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 + grep -q ==== conflict0.txt + grep -q ==== conflict1.txt + grep -q ==== conflict2.txt + grep -q ==== conflict3.txt + grep -q ==== conflict4.txt + grep -q ==== conflict5.txt + 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 + grep -q ==== conflict7.txt + true + git-imerge continue --no-edit + tee autofill.out [imerge/c-d 1798c23] 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 e83ce4e 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 + grep -q ==== conflict0.txt + grep -q ==== conflict1.txt + grep -q ==== conflict2.txt + 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 + grep -q ==== conflict4.txt + grep -q ==== conflict5.txt + grep -q ==== conflict6.txt + grep -q ==== conflict7.txt + true + git-imerge continue --no-edit + tee autofill.out [imerge/c-d 2dd0ef8] 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 + grep -q ==== conflict0.txt + grep -q ==== conflict1.txt + grep -q ==== conflict2.txt + grep -q ==== conflict3.txt + grep -q ==== conflict4.txt + 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 + grep -q ==== conflict6.txt + grep -q ==== conflict7.txt + true + git-imerge continue --no-edit + tee autofill.out [imerge/c-d 835e724] 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 8f219a0 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 + grep -q ==== conflict0.txt + grep -q ==== conflict1.txt + 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 + grep -q ==== conflict3.txt + grep -q ==== conflict4.txt + grep -q ==== conflict5.txt + grep -q ==== conflict6.txt + grep -q ==== conflict7.txt + true + git-imerge continue --no-edit + tee autofill.out [imerge/c-d 59d59dd] 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 + grep -q ==== conflict0.txt + grep -q ==== conflict1.txt + grep -q ==== conflict2.txt + grep -q ==== conflict3.txt + grep -q ==== conflict4.txt + grep -q ==== conflict5.txt + grep -q ==== conflict6.txt + 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 + git-imerge continue --no-edit + tee autofill.out [imerge/c-d 26bee00] 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 + cat + diff -u - diagram.out + 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 Jun 9 07:44:36 2025 +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 13337a5] Merge d into c (using imerge) Date: Mon Jun 9 07:44:36 2025 +0000 + check_tree c-d-merge 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-merge + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git rev-parse c-d-merge^{tree} + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge simplify --goal=rebase --branch=c-d-rebase + check_tree c-d-rebase 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-rebase + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git rev-parse c-d-rebase^{tree} + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge simplify --goal=rebase-with-history --branch=c-d-rebase-with-history + check_tree c-d-rebase-with-history 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-rebase-with-history + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git rev-parse c-d-rebase-with-history^{tree} + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge simplify --goal=border --branch=c-d-border + check_tree c-d-border 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-border + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git rev-parse c-d-border^{tree} + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge simplify --goal=border-with-history --branch=c-d-border-with-history + check_tree c-d-border-with-history 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-border-with-history + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git rev-parse c-d-border-with-history^{tree} + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge simplify --goal=border-with-history2 --branch=c-d-border-with-history2 + check_tree c-d-border-with-history2 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + local refname=c-d-border-with-history2 + local expected_tree=13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git rev-parse c-d-border-with-history2^{tree} + test 13e5a8955ab8f88dc7fec8278ee2622655c21d7f = 13e5a8955ab8f88dc7fec8278ee2622655c21d7f + git-imerge remove py311: commands[3] .pybuild/cpython3_3.11/build> /bin/sh t/test-duplicated + dirname t/test-duplicated + cd t + pwd + dirname /build/reproducible-path/git-imerge-1.2.0/t + BASE=/build/reproducible-path/git-imerge-1.2.0 + . /build/reproducible-path/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + TMP=/build/reproducible-path/git-imerge-1.2.0/t/tmp/duplicated + DESCRIPTION=git-imerge test repository with duplicate commits + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/duplicated git-imerge test repository with duplicate commits + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/duplicated + local description=git-imerge test repository with duplicate commits + delete_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/duplicated git-imerge test repository with duplicate commits + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/duplicated + local description=git-imerge test repository with duplicate commits + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/duplicated + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/duplicated + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/duplicated/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/duplicated/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/duplicated + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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 + 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(-) + 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(-) + 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 + 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(-) + 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(-) + 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(-) + 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 Jun 9 07:44:38 2025 +0000 # # On branch a-b-merge # Changes to be committed: # modified: a.txt # [a-b-merge f6ae9c7] Merge b into a (using imerge) Date: Mon Jun 9 07:44:38 2025 +0000 + check_tree a-b-merge 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-merge + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 + git rev-parse a-b-merge^{tree} + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git-imerge simplify --goal=rebase --branch=a-b-rebase + check_tree a-b-rebase 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-rebase + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 + git rev-parse a-b-rebase^{tree} + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git-imerge simplify --goal=rebase-with-history --branch=a-b-rebase-with-history + check_tree a-b-rebase-with-history 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-rebase-with-history + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 + git rev-parse a-b-rebase-with-history^{tree} + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git-imerge simplify --goal=border --branch=a-b-border + check_tree a-b-border 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-border + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 + git rev-parse a-b-border^{tree} + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git-imerge simplify --goal=border-with-history --branch=a-b-border-with-history + check_tree a-b-border-with-history 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-border-with-history + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 + git rev-parse a-b-border-with-history^{tree} + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git-imerge finish --goal=border-with-history2 --branch=a-b-border-with-history2 + check_tree a-b-border-with-history2 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-border-with-history2 + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 + git rev-parse a-b-border-with-history2^{tree} + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 + git checkout a Switched to branch 'a' + git-imerge start --goal=full --name=a-b b Attempting to merge 1-1...success. Attempting to merge 1-2...success. Attempting to merge 1-3...success. Attempting to merge 1-4...success. Attempting to merge 2-1...success. Attempting to merge 2-2...success. Attempting to merge 2-3...success. Attempting to merge 2-4...success. Attempting to merge 3-1...success. Attempting to merge 3-2...success. Attempting to merge 3-3...success. Attempting to merge 3-4...success. Merge is complete! + git-imerge list * a-b + git-imerge diagram --commits --frontier --html=imerge6.html 0 3 | | 0 - **** - a *... *... *... 4 - *... | b 0 3 | | 0 - **** - a *..| *..| *..| 4 - *--+ | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish --branch=a-b-full + check_tree a-b-full 9d521927e179e882efacd2a0ba94b89a1de00eb2 + local refname=a-b-full + local expected_tree=9d521927e179e882efacd2a0ba94b89a1de00eb2 + git rev-parse a-b-full^{tree} + test 9d521927e179e882efacd2a0ba94b89a1de00eb2 = 9d521927e179e882efacd2a0ba94b89a1de00eb2 py311: commands[4] .pybuild/cpython3_3.11/build> /bin/sh t/test-flip-flop + dirname t/test-flip-flop + cd t + pwd + dirname /build/reproducible-path/git-imerge-1.2.0/t + BASE=/build/reproducible-path/git-imerge-1.2.0 + . /build/reproducible-path/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + flip_flop_test 1 + local n=1 + TMP=/build/reproducible-path/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/reproducible-path/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/reproducible-path/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/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-1 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-1 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-1/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-1/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-1 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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' + 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(-) + 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(-) + 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' + modify b.txt 1 + filename=b.txt + text=1 + echo 1 + git add b.txt + msg=b⇒1 + 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 + modify b.txt 2 + filename=b.txt + text=2 + echo 2 + git add b.txt + msg=b⇒2 + 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(-) + modify b.txt 3 + filename=b.txt + text=3 + echo 3 + git add b.txt + msg=b⇒3 + 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(-) + modify b.txt 4 + filename=b.txt + text=4 + echo 4 + git add b.txt + msg=b⇒4 + test 4 = 1 + test 4 = 2 + commit -m b⇒4 on branch b + TIME=1112912001 + GIT_AUTHOR_DATE=@1112912001 +0000 GIT_COMMITTER_DATE=@1112912001 +0000 git commit -m b⇒4 on branch b [b 2dc5eb7] b⇒4 on branch b 1 file changed, 1 insertion(+), 1 deletion(-) + test_merge b-into-a-1 a b 1-1 1-2 + local name=b-into-a-1 + local dst=a + local src=b + local conflict1=1-1 + local conflict2=1-2 + git checkout a Switched to branch 'a' + git-imerge merge --branch=b-into-a-1 b + tee imerge-b-into-a-1-1.out Attempting automerge of 3-4...success. Autofilling 1-4...success. Autofilling 2-4...success. Autofilling 3-1...unexpected conflict. Backtracking... Autofilling 1-4...success. Autofilling 2-1...unexpected conflict. Backtracking... Autofilling 1-1...unexpected conflict. Backtracking... Switched to branch 'imerge/b' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a Original second commit: commit 044a3fac3fa19a3a6428eaeeb356b18764b9b1f2 Author: Loú User Date: Thu Apr 7 22:13:18 2005 +0000 b⇒1 and a⇒X on branch b There was a conflict merging commit 1-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a *#?? *??? *??? 4 - *??? | b 0 3 | | 0 - **** - a *#?? *??? *??? 4 - *??? | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q There was a conflict merging commit 1-1 imerge-b-into-a-1-1.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-b-into-a-1-2.out [imerge/b 46be459] 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 4f49a6f 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 + git-imerge continue --no-edit + tee imerge-b-into-a-1-3.out [imerge/b 82efd56] 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 Jun 9 07:44:40 2025 +0000 # # On branch b-into-a-1 # Changes to be committed: # new file: b.txt # [b-into-a-1 e33c8b6] Merge b into a (using imerge) Date: Mon Jun 9 07:44:40 2025 +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' + git-imerge merge --branch=a-into-b-1 a + tee imerge-a-into-b-1-1.out Attempting automerge of 4-3...success. Autofilling 1-3...unexpected conflict. Backtracking... Autofilling 1-2...unexpected conflict. Backtracking... Autofilling 1-1...unexpected conflict. Backtracking... Switched to branch 'imerge/a' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 044a3fac3fa19a3a6428eaeeb356b18764b9b1f2 Author: Loú User Date: Thu Apr 7 22:13:18 2005 +0000 b⇒1 and a⇒X on branch b Original second commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a There was a conflict merging commit 1-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b *#??? *???? 3 - *???? | a 0 4 | | 0 - ***** - b *#??? *???? 3 - *???? | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q There was a conflict merging commit 1-1 imerge-a-into-b-1-1.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-a-into-b-1-2.out [imerge/a a4ba363] imerge 'a': manual merge 1-1 Merge has been recorded for merge 1-1. Attempting automerge of 1-3...success. Autofilling 1-2...success. Autofilling 1-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[0:2,1:4]. Attempting automerge of 4-3...failure. Attempting automerge of 2-1...failure. Switched to branch 'imerge/a' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 7851975ee7d12ef0a256db7ebd029aab51f895ab Author: Loú User Date: Thu Apr 7 22:13:19 2005 +0000 b⇒2 and a⇒0 on branch b Original second commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a There was a conflict merging commit 2-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b **#?? *.??? 3 - *.??? | a 0 4 | | 0 - ***** - b **#?? *|??? 3 - *+??? | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q There was a conflict merging commit 2-1 imerge-a-into-b-1-2.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-a-into-b-1-3.out [imerge/a cbfc354] 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 Jun 9 07:44:40 2025 +0000 # # On branch a-into-b-1 # Changes to be committed: # modified: a.txt # [a-into-b-1 03d3432] Merge a into b (using imerge) Date: Mon Jun 9 07:44:40 2025 +0000 + flip_flop_test 2 + local n=2 + TMP=/build/reproducible-path/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/reproducible-path/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/reproducible-path/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/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-2 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-2 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-2/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-2/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-2 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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' + 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(-) + 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(-) + 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' + modify b.txt 1 + filename=b.txt + text=1 + echo 1 + git add b.txt + msg=b⇒1 + 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 + modify b.txt 2 + filename=b.txt + text=2 + echo 2 + git add b.txt + msg=b⇒2 + 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(-) + modify b.txt 3 + filename=b.txt + text=3 + echo 3 + git add b.txt + msg=b⇒3 + 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(-) + modify b.txt 4 + filename=b.txt + text=4 + echo 4 + git add b.txt + msg=b⇒4 + 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 + git-imerge continue --no-edit + tee imerge-b-into-a-2-2.out [imerge/b ef91088] 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 5c3d335 imerge 'b': automatic merge 3-2 Switched to branch 'imerge/b' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a Original second commit: commit f3ef01986be02ef5e40589b283c0385471ecca7d Author: Loú User Date: Thu Apr 7 22:13:20 2005 +0000 b⇒3 and a⇒0 on branch b There was a conflict merging commit 1-3, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 3 | | 0 - **** - a *... **.. *#?? 4 - *??? | b 0 3 | | 0 - **** - a *..| **-+ *#?? 4 - *??? | b Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q There was a conflict merging commit 1-3 imerge-b-into-a-2-2.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-b-into-a-2-3.out [imerge/b 0524893] 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 Jun 9 07:44:42 2025 +0000 # # On branch b-into-a-2 # Changes to be committed: # new file: b.txt # [b-into-a-2 940f66a] Merge b into a (using imerge) Date: Mon Jun 9 07:44:42 2025 +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 + git-imerge continue --no-edit + tee imerge-a-into-b-2-2.out [imerge/a 06e12ed] imerge 'a': manual merge 2-1 Merge has been recorded for merge 2-1. Attempting automerge of 2-3...success. Autofilling 2-2...success. Autofilling 2-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[1:3,1:4]. Attempting automerge of 4-3...failure. Attempting automerge of 3-1...failure. Switched to branch 'imerge/a' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit f3ef01986be02ef5e40589b283c0385471ecca7d Author: Loú User Date: Thu Apr 7 22:13:20 2005 +0000 b⇒3 and a⇒0 on branch b Original second commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a There was a conflict merging commit 3-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b *.*#? *..?? 3 - *..?? | a 0 4 | | 0 - ***** - b *.*#? *.|?? 3 - *-+?? | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q There was a conflict merging commit 3-1 imerge-a-into-b-2-2.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-a-into-b-2-3.out [imerge/a 92ed67a] 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 Jun 9 07:44:42 2025 +0000 # # On branch a-into-b-2 # Changes to be committed: # modified: a.txt # [a-into-b-2 55bdbe3] Merge a into b (using imerge) Date: Mon Jun 9 07:44:42 2025 +0000 + flip_flop_test 3 + local n=3 + TMP=/build/reproducible-path/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/reproducible-path/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/reproducible-path/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/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-3 + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-3 + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-3/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-3/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/flip-flop-3 + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [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' + 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(-) + 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(-) + 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' + modify b.txt 1 + filename=b.txt + text=1 + echo 1 + git add b.txt + msg=b⇒1 + 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 + modify b.txt 2 + filename=b.txt + text=2 + echo 2 + git add b.txt + msg=b⇒2 + 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(-) + modify b.txt 3 + filename=b.txt + text=3 + echo 3 + git add b.txt + msg=b⇒3 + 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(-) + modify b.txt 4 + filename=b.txt + text=4 + echo 4 + git add b.txt + msg=b⇒4 + 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 3c84380] 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 f847412 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 + git-imerge continue --no-edit + tee imerge-b-into-a-3-3.out [imerge/b fd5f3c9] 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 Jun 9 07:44:44 2025 +0000 # # On branch b-into-a-3 # Changes to be committed: # new file: b.txt # [b-into-a-3 8be1826] Merge b into a (using imerge) Date: Mon Jun 9 07:44:44 2025 +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' + git-imerge merge --branch=a-into-b-3 a + tee imerge-a-into-b-3-1.out 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 f0e7daf] imerge 'a': manual merge 3-1 Merge has been recorded for merge 3-1. Attempting automerge of 3-3...success. Autofilling 3-2...success. Autofilling 3-3...success. Recording autofilled block MergeState('a', tip1='b', tip2='a', goal='merge')[2:4,1:4]. Attempting automerge of 4-3...failure. Attempting automerge of 4-1...failure. Switched to branch 'imerge/a' Auto-merging a.txt CONFLICT (content): Merge conflict in a.txt Automatic merge failed; fix conflicts and then commit the result. Original first commit: commit eb736f2ae81944f79f443fd39a89adf74dbc907a Author: Loú User Date: Thu Apr 7 22:13:21 2005 +0000 b⇒4 and a⇒0 on branch b Original second commit: commit 2f1f75a7b49864d699f9e222c1d78078cfe01587 Author: Loú User Date: Thu Apr 7 22:13:15 2005 +0000 a⇒1 on branch a There was a conflict merging commit 4-1, shown above. Please resolve the conflict, commit the result, then type git-imerge continue + git-imerge diagram --commits --frontier 0 4 | | 0 - ***** - b *?.*# *?..? 3 - *...? | a 0 4 | | 0 - ***** - b *?.*# *?.|? 3 - *--+? | a Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + grep -q There was a conflict merging commit 4-1 imerge-a-into-b-3-2.out + echo 1 + git add a.txt + git-imerge continue --no-edit + tee imerge-a-into-b-3-3.out [imerge/a 6e2d782] 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 Jun 9 07:44:44 2025 +0000 # # On branch a-into-b-3 # Changes to be committed: # modified: a.txt # [a-into-b-3 9f6c1fd] Merge a into b (using imerge) Date: Mon Jun 9 07:44:44 2025 +0000 py311: commands[5] .pybuild/cpython3_3.11/build> /bin/sh t/test-drop + dirname t/test-drop + cd t + pwd + dirname /build/reproducible-path/git-imerge-1.2.0/t + BASE=/build/reproducible-path/git-imerge-1.2.0 + . /build/reproducible-path/git-imerge-1.2.0/t/test-lib.sh + GIT_IMERGE=git-imerge + TMP=/build/reproducible-path/git-imerge-1.2.0/t/tmp/drop + DESCRIPTION=git-imerge drop test repository + init_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/drop git-imerge drop test repository + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/drop + local description=git-imerge drop test repository + delete_test_repo /build/reproducible-path/git-imerge-1.2.0/t/tmp/drop git-imerge drop test repository + local path=/build/reproducible-path/git-imerge-1.2.0/t/tmp/drop + local description=git-imerge drop test repository + test -d /build/reproducible-path/git-imerge-1.2.0/t/tmp/drop + mkdir -p /build/reproducible-path/git-imerge-1.2.0/t/tmp/drop + git init /build/reproducible-path/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/reproducible-path/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/reproducible-path/git-imerge-1.2.0/t/tmp/drop/.git config user.name Loú User + git --git-dir=/build/reproducible-path/git-imerge-1.2.0/t/tmp/drop/.git config user.email luser@example.com + TIME=1112911993 + ln -s /build/reproducible-path/git-imerge-1.2.0/imerge.css /build/reproducible-path/git-imerge-1.2.0/t/tmp/drop + cd /build/reproducible-path/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⇒0 + TIME=1112911994 + GIT_AUTHOR_DATE=@1112911994 +0000 GIT_COMMITTER_DATE=@1112911994 +0000 git commit -m m⇒0 [master (root-commit) a733afa] m⇒0 1 file changed, 1 insertion(+) create mode 100644 a.txt + seq 6 + modify a1.txt 1 + filename=a1.txt + text=1 + echo 1 + git add a1.txt + commit -m a1⇒1 + TIME=1112911995 + GIT_AUTHOR_DATE=@1112911995 +0000 GIT_COMMITTER_DATE=@1112911995 +0000 git commit -m a1⇒1 [master 389a4ba] a1⇒1 1 file changed, 1 insertion(+) create mode 100644 a1.txt + modify a2.txt 2 + filename=a2.txt + text=2 + echo 2 + git add a2.txt + commit -m a2⇒2 + TIME=1112911996 + GIT_AUTHOR_DATE=@1112911996 +0000 GIT_COMMITTER_DATE=@1112911996 +0000 git commit -m a2⇒2 [master 4785218] a2⇒2 1 file changed, 1 insertion(+) create mode 100644 a2.txt + modify a3.txt 3 + filename=a3.txt + text=3 + echo 3 + git add a3.txt + commit -m a3⇒3 + TIME=1112911997 + GIT_AUTHOR_DATE=@1112911997 +0000 GIT_COMMITTER_DATE=@1112911997 +0000 git commit -m a3⇒3 [master 34bdde3] a3⇒3 1 file changed, 1 insertion(+) create mode 100644 a3.txt + modify a4.txt 4 + filename=a4.txt + text=4 + echo 4 + git add a4.txt + commit -m a4⇒4 + TIME=1112911998 + GIT_AUTHOR_DATE=@1112911998 +0000 GIT_COMMITTER_DATE=@1112911998 +0000 git commit -m a4⇒4 [master c793a5a] a4⇒4 1 file changed, 1 insertion(+) create mode 100644 a4.txt + modify a5.txt 5 + filename=a5.txt + text=5 + echo 5 + git add a5.txt + commit -m a5⇒5 + TIME=1112911999 + GIT_AUTHOR_DATE=@1112911999 +0000 GIT_COMMITTER_DATE=@1112911999 +0000 git commit -m a5⇒5 [master b42f60c] a5⇒5 1 file changed, 1 insertion(+) create mode 100644 a5.txt + modify a6.txt 6 + filename=a6.txt + text=6 + echo 6 + git add a6.txt + commit -m a6⇒6 + TIME=1112912000 + GIT_AUTHOR_DATE=@1112912000 +0000 GIT_COMMITTER_DATE=@1112912000 +0000 git commit -m a6⇒6 [master 9d6aec5] a6⇒6 1 file changed, 1 insertion(+) create mode 100644 a6.txt + git checkout -b dropped master Switched to a new branch 'dropped' + git-imerge drop HEAD~5..HEAD~3 Note: switching to '34bdde3a6a5b6b9c8bcac5aa36109195e2a3dc7a^0'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 34bdde3 a3⇒3 [detached HEAD fc3e0dc] Revert "a3⇒3" Date: Mon Jun 9 07:44:45 2025 +0000 1 file changed, 1 deletion(-) delete mode 100644 a3.txt [detached HEAD 0afc27f] Revert "a2⇒2" Date: Mon Jun 9 07:44:45 2025 +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='0afc27fb3f47823b40c4d2aa00a1f40fe0bf42a7', goal='drop')[0:4,0:3]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge-drop.html 0 3 | | 0 - **** - dropped *??. 2 - *... | 0afc27fb3f47823b40c4d2aa00a1f40fe0bf42a7 0 3 | | 0 - **** - dropped *??| 2 - *--+ | 0afc27fb3f47823b40c4d2aa00a1f40fe0bf42a7 Key: |,-,+ = rectangles forming current merge frontier * = merge done manually . = merge done automatically # = conflict that is currently blocking progress @ = merge was blocked but has been resolved ? = no merge recorded + git-imerge finish + check_tree dropped 3b92d9e80adb5b542a651863e6853ff5de9e496b + local refname=dropped + local expected_tree=3b92d9e80adb5b542a651863e6853ff5de9e496b + git rev-parse dropped^{tree} + test 3b92d9e80adb5b542a651863e6853ff5de9e496b = 3b92d9e80adb5b542a651863e6853ff5de9e496b + git checkout -b reverted master Switched to a new branch 'reverted' + git-imerge revert HEAD~5..HEAD~3 Note: switching to '34bdde3a6a5b6b9c8bcac5aa36109195e2a3dc7a^0'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 34bdde3 a3⇒3 [detached HEAD fc3e0dc] Revert "a3⇒3" Date: Mon Jun 9 07:44:45 2025 +0000 1 file changed, 1 deletion(-) delete mode 100644 a3.txt [detached HEAD 0afc27f] Revert "a2⇒2" Date: Mon Jun 9 07:44:45 2025 +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='0afc27fb3f47823b40c4d2aa00a1f40fe0bf42a7', goal='revert')[0:4,0:3]. Merge is complete! + git-imerge diagram --commits --frontier --html=imerge-revert.html 0 3 | | 0 - **** - reverted *??. 2 - *... | 0afc27fb3f47823b40c4d2aa00a1f40fe0bf42a7 0 3 | | 0 - **** - reverted *??| 2 - *--+ | 0afc27fb3f47823b40c4d2aa00a1f40fe0bf42a7 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 py311: OK (58.61=setup[2.15]+cmd[4.95,37.87,5.18,1.82,5.80,0.84] seconds) congratulations :) (58.72 seconds) create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=pybuild dh_prep -O--buildsystem=pybuild dh_auto_install --destdir=debian/git-imerge/ -O--buildsystem=pybuild I: pybuild base:311: /usr/bin/python3 setup.py install --root /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge running install /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. !! ******************************************************************************** Please avoid running ``setup.py`` directly. Instead, use pypa/build, pypa/installer or other standards-based tools. See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. ******************************************************************************** !! self.initialize_options() running build running build_py running install_lib creating /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr creating /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr/lib creating /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.11 creating /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.11/dist-packages copying /build/reproducible-path/git-imerge-1.2.0/.pybuild/cpython3_3.11/build/gitimerge.py -> /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.11/dist-packages byte-compiling /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.11/dist-packages/gitimerge.py to gitimerge.cpython-311.pyc running install_data creating /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr/share creating /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr/share/bash-completion creating /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr/share/bash-completion/completions copying completions/git-imerge -> /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr/share/bash-completion/completions running install_egg_info running egg_info writing git_imerge.egg-info/PKG-INFO writing dependency_links to git_imerge.egg-info/dependency_links.txt writing entry points to git_imerge.egg-info/entry_points.txt writing top-level names to git_imerge.egg-info/top_level.txt reading manifest file 'git_imerge.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'COPYING' writing manifest file 'git_imerge.egg-info/SOURCES.txt' Copying git_imerge.egg-info to /build/reproducible-path/git-imerge-1.2.0/debian/git-imerge/usr/lib/python3.11/dist-packages/git_imerge-1.2.0.egg-info Skipping SOURCES.txt running install_scripts Installing git-imerge script to /build/reproducible-path/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-5_all.deb'. dpkg-genbuildinfo --build=binary -O../git-imerge_1.2.0-5_amd64.buildinfo dpkg-genchanges --build=binary -O../git-imerge_1.2.0-5_amd64.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: 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/77485 and its subdirectories I: Current time: Sun Jun 8 19:44:49 -12 2025 I: pbuilder-time-stamp: 1749455089 Tue May 7 01:21:50 UTC 2024 I: 1st build successful. Starting 2nd build on remote node ionos11-amd64.debian.net. Tue May 7 01:21:50 UTC 2024 I: Preparing to do remote build '2' on ionos11-amd64.debian.net. Tue May 7 01:28:05 UTC 2024 I: Deleting $TMPDIR on ionos11-amd64.debian.net. Tue May 7 01:28:07 UTC 2024 I: git-imerge_1.2.0-5_amd64.changes: Format: 1.8 Date: Sat, 19 Aug 2023 14:05:54 +0800 Source: git-imerge Binary: git-imerge Architecture: all Version: 1.2.0-5 Distribution: unstable Urgency: medium Maintainer: Paul Wise Changed-By: Paul Wise Description: git-imerge - incremental merge and rebase for git Closes: 1049491 Changes: git-imerge (1.2.0-5) unstable; urgency=medium . * Clean up after pybuild tox and the upstream tests (Closes: #1049491) * Drop PYBUILD_TEST_TOX since pybuild now correctly detects tox * Suggest not yet existing git-mergify-rebase package too Checksums-Sha1: 2f2cc8676a5038b80bce9186b43b0b2560a3a4a7 48992 git-imerge_1.2.0-5_all.deb 1671d6461fd964ea3f2027b6adb9a5f1c1106851 7006 git-imerge_1.2.0-5_amd64.buildinfo Checksums-Sha256: 407625e1e81aa7713098d34a6c61b424a14e203626a520baa8a7bef114aa2e8a 48992 git-imerge_1.2.0-5_all.deb b432358d7439110a5d6424352c4b077c0509f7617475dfde455a1409c3cf8fb3 7006 git-imerge_1.2.0-5_amd64.buildinfo Files: 610c87529c05f66c288bef460377c2e7 48992 vcs optional git-imerge_1.2.0-5_all.deb 9268ea7fdfe06cf3aa6cac66b6fedb05 7006 vcs optional git-imerge_1.2.0-5_amd64.buildinfo Tue May 7 01:28:08 UTC 2024 I: diffoscope 265 will be used to compare the two builds: Running as unit: rb-diffoscope-amd64_22-6544.service # Profiling output for: /usr/bin/diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.n8XFVnfN/git-imerge_1.2.0-5.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.n8XFVnfN/git-imerge_1.2.0-5.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.n8XFVnfN/git-imerge_1.2.0-5.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.n8XFVnfN/b1/git-imerge_1.2.0-5_amd64.changes /srv/reproducible-results/rbuild-debian/r-b-build.n8XFVnfN/b2/git-imerge_1.2.0-5_amd64.changes ## command (total time: 0.000s) 0.000s 1 call cmp (internal) ## has_same_content_as (total time: 0.000s) 0.000s 1 call abc.DotChangesFile ## main (total time: 0.361s) 0.361s 2 calls outputs 0.000s 1 call cleanup ## recognizes (total time: 0.014s) 0.014s 12 calls diffoscope.comparators.binary.FilesystemFile ## specialize (total time: 0.000s) 0.000s 1 call specialize Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 704ms CPU time consumed: 701ms Tue May 7 01:28:09 UTC 2024 I: diffoscope 265 found no differences in the changes files, and a .buildinfo file also exists. Tue May 7 01:28:09 UTC 2024 I: git-imerge from unstable built successfully and reproducibly on amd64. Tue May 7 01:28:11 UTC 2024 I: Submitting .buildinfo files to external archives: Tue May 7 01:28:11 UTC 2024 I: Submitting 8.0K b1/git-imerge_1.2.0-5_amd64.buildinfo.asc Tue May 7 01:28:12 UTC 2024 I: Submitting 8.0K b2/git-imerge_1.2.0-5_amd64.buildinfo.asc Tue May 7 01:28:12 UTC 2024 I: Done submitting .buildinfo files to http://buildinfo.debian.net/api/submit. Tue May 7 01:28:12 UTC 2024 I: Done submitting .buildinfo files. Tue May 7 01:28:12 UTC 2024 I: Removing signed git-imerge_1.2.0-5_amd64.buildinfo.asc files: removed './b1/git-imerge_1.2.0-5_amd64.buildinfo.asc' removed './b2/git-imerge_1.2.0-5_amd64.buildinfo.asc'