{"thread":{"id":"37622","subject":"BUG?: git-filter-branch removes mergetags","startedAt":"2014-09-23T19:13:17Z","lastAt":"2014-09-23T20:26:34Z","messageCount":2,"participants":["Uwe Kleine-König","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"249804","messageId":"20140923191317.GA3755@pengutronix.de","threadId":"37622","inReplyTo":null,"subject":"BUG?: git-filter-branch removes mergetags","fromName":"Uwe Kleine-König","fromEmail":"u.kleine-koenig@pengutronix.de","sentAt":"2014-09-23T19:13:17Z","receivedAt":"2014-09-23T19:13:17Z","isPatch":false,"sender":{"key":"u.kleine-koenig@pengutronix.de","avatar":"https://gravatar.com/avatar/354b5e3ceb2806a2f1e1e382ac29ddbdad18288654da62b61eb13583a857eee7?d=mp&s=160"},"body":"Hello,\n\nI just noticed that git-filter-branch doesn't preserve mergetag\nannotations in situations where it could. Here is an example (with\nlinux.git):\n\n\t$ git checkout -b test 6cd2f85413eef8fe7bcd7c25bf55e7b055fa257c\n\t$ git cat-file commit HEAD | grep mergetag\n\tmergetag object 954263938706bf62d36e81b6b49f313390f2ed35\n\t$ git filter-branch -f --msg-filter 'sed s/foo/bar/' HEAD^!\n\tRewrite 6cd2f85413eef8fe7bcd7c25bf55e7b055fa257c (1/1)\n\tRef 'refs/heads/test' was rewritten\n\t$ diff -u <(git cat-file commit refs/original/refs/heads/test) <(git cat-file commit HEAD)\n\t--- /dev/fd/63\t2014-09-23 21:07:49.987065017 +0200\n\t+++ /dev/fd/62\t2014-09-23 21:07:49.991064988 +0200\n\t@@ -3,32 +3,6 @@\n\t parent 954263938706bf62d36e81b6b49f313390f2ed35\n\t author Linus Torvalds <torvalds@linux-foundation.org> 1411488823 -0700\n\t committer Linus Torvalds <torvalds@linux-foundation.org> 1411488823 -0700\n\t-mergetag object 954263938706bf62d36e81b6b49f313390f2ed35\n\t- type commit\n\t- tag for-linus\n\t- tagger Paolo Bonzini <pbonzini@redhat.com> 1411478481 +0200\n\t- \n\t- Another fix for 3.17 arrived at just the wrong time, after I had sent\n\t- yesterday's pull request.  Normally I would have waited for\n\t- some other patches to pile up, but since 3.17 might be short\n\t- here it is.\n\t- -----BEGIN PGP SIGNATURE-----\n\t- Version: GnuPG v2.0.22 (GNU/Linux)\n\t- \n\t- iQIcBAABAgAGBQJUIXPRAAoJEBvWZb6bTYbyySEP/AkPjfNGYqwBbM8GUJ4tt4gR\n\t- C+xbiO+xPr2qCwfi36DQtL0UPwJHWSq7SXaDMvSqMo22FjnFcVaGuQcGAPno/8ZA\n\t- tLBe1km9HIPlEIV3vpoe8PPpj9cuZ86+YOCuPIqK5fC7l6Ops0dhCOjf88tmPVQ4\n\t- yhodpJ1Lt/sPBUWb6pNfk0iWD+qSbfUWtwzv89oudEvLcLiAcPSBdbvnxVS3bmGm\n\t- qbL8pvCOozK5GJbl0+cYWCoEPBP5ekqGvwvGdEBTx+4qv2S2htzUX30UA2VYy5IR\n\t- jMXVrJbvSW9FXQdBgr0Q4ql6evOVjL+5LpwgRUC6tuC6r1rMP+nXyHKS35HC1i8W\n\t- FYr62B/LZTm4vyDHsmsiEl43VLAcF7kmXufQT62vJg+ifeA1MAMIJra7ZDx8WbsD\n\t- HDqM+CeaZrF3p4okRrktbecQdeFFyg4wOasHRTO7SETkbP7i1cS0Mp8rRbX3CnJq\n\t- 0UM8STe+hViXR7uYZEbjlbGKkszDS49fstJIaNm9JPJm+S/V5/MZFelNWgPp/+kF\n\t- xpQUxtoSaFnqgBXpRZ7t2Y2zGeZkMWn/P84S23/7K1TfRPCsUpgFbiY26rGW9l4v\n\t- r8gz7v+V1gCzWYVRuEzolFrea6A1ik2sspzeDuZOrf+QYwMyyUdEQ/NfCm032wba\n\t- CYL0V2M/dJNmZnZRPP9/\n\t- =ZkSE\n\t- -----END PGP SIGNATURE-----\n\t \n\t Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\t \nI expected the signature to not disappear such that in the example above\nno change is introduced.\n\nBest regards\nUwe\n\n-- \nPengutronix e.K.                           | Uwe Kleine-König            |\nIndustrial Linux Solutions                 | http://www.pengutronix.de/  |\n"},{"id":"249809","messageId":"xmqqk34uhymd.fsf@gitster.dls.corp.google.com","threadId":"37622","inReplyTo":"20140923191317.GA3755@pengutronix.de","subject":"Re: BUG?: git-filter-branch removes mergetags","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2014-09-23T20:26:34Z","receivedAt":"2014-09-23T20:26:34Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Uwe Kleine-König  <u.kleine-koenig@pengutronix.de> writes:\n\n> \t--- /dev/fd/63\t2014-09-23 21:07:49.987065017 +0200\n> \t+++ /dev/fd/62\t2014-09-23 21:07:49.991064988 +0200\n> \t@@ -3,32 +3,6 @@\n> \t parent 954263938706bf62d36e81b6b49f313390f2ed35\n> \t author Linus Torvalds <torvalds@linux-foundation.org> 1411488823 -0700\n> \t committer Linus Torvalds <torvalds@linux-foundation.org> 1411488823 -0700\n> \t-mergetag object 954263938706bf62d36e81b6b49f313390f2ed35\n> \t- type commit\n> ...\n>\n> I expected the signature to not disappear such that in the example above\n> no change is introduced.\n\nYeah, I agree that the above shows that in the rewritten merge\ncommit, the side parent 95426393... has not changed from the\noriginal and the mergetag can be taken as a still valid one.\n"}]}