Discussion:
[Linuxwacom-devel] Corrupted tags in git repository (dates missing)
Markus Kuhn
2016-09-16 14:28:12 UTC
Permalink
The git repository

git://git.code.sf.net/p/linuxwacom/xf86-input-wacom

listed at

http://linuxwacom.sourceforge.net/wiki/index.php/Xf86-input-wacom

appears to be slightly corrupted and currently fails "git fsck":

$ git clone git://git.code.sf.net/p/linuxwacom/xf86-input-wacom
Cloning into 'xf86-input-wacom'...
remote: Counting objects: 12758, done.
remote: Compressing objects: 100% (7095/7095), done.
remote: Total 12758 (delta 9813), reused 7122 (delta 5647)
Receiving objects: 100% (12758/12758), 3.15 MiB | 726.00 KiB/s, done.
Resolving deltas: 100% (9813/9813), done.
Checking connectivity... done.
$ cd xf86-input-wacom/
$ git fsck
Checking object directories: 100% (256/256), done.
error in tag 98c06f6bca24f51046e07e4dcee3706064119a46: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag b4eb4f1258584d2c03042cc06e8b0f7083a70c08: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 7fca9adae042a1e012eae3172231d0c46632ade2: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 4f8dbb63c69d1cc0a053f548fbe15a15a2de2fc5: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag d92e615177fb68e238422479774e10527a61df72: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 141c206058a94b6120af52c100ddfd0f9161416e: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 4c2d56975a9691cab9f908db7b1809a42696ed8b: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag b46794b86d4d997c29726d2d2215b433d1de051a: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag a4df8e7805d077660fea07f22d1bf47c0108d478: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 8b8ecad2e32ae6ef17c6ee4e0f7e98c82ba7c16d: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 3237d10ce93e3a4ad62b0724d0ec2503481b23bd: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 500d8da63f60c5a64dfe8b07b09e8208e252d926: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 4ea8a10e24001316d4a099868b022188af93ce88: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag ae1eaa616f923516cfb6603dec21082450317963: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 6ef0f7330db494365f3207bd61d50f6059483d5f: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 7d077a9e31e7b8882471304b87c0ae06ce6b1a7a: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag cb5223e9f9b6810f561f044ee5f7ac2094b06e8a: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 275d37cbace5201806d72a3d4c84402818bbead5: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 3f8a5ebd1e2f7c7846abe030327db93b03a2c8e2: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag e60cf7bceee3547f0ba969b24eb6ffcd9a11420a: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 2e72493aee7c47598b9fe34c79f437861ff96912: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 6f35198f1dad5ffce05029ca6fccec667538ea46: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag ea43f45997f31cee0f6e8ff1dbea46b15314c57d: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 12ff697565cf4480721a80857b9c1aee51b7aa37: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 9ff7794e1326c2bee20c639956ec420dc8bad19a: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 9208ea42ff62fe1796dd72376c4a161067f5b6b4: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag f27838d871f2a5c09f760dd8fce98120f01333cb: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 24b987e2e8ec9f0a5785de813b4fad75d941236b: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag d17efaf58ad85e55b6356d437adfaed80eae5fac: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 86bc59ae9ce8159593c118b9ec4dda3324539ae8: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 9ff6fa0476d76c712a88b86cfb6ece36f501719f: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag af54bc1d4905b199f7c7ac5cd9dfb43d32b2e0cb: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 6812716d7c4187e5c1be69719dbf730d533ac10c: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag e920f4d69160980dceb4259685ca11510e3d7742: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 05264f7cd6db524d6621758cbc3b67e4c16e33a3: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 071fe55a5b55e40960092e502525d74d76d69001: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 97273c310c5fc914a3125e7e086497c62b8f444b: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 4450cd53cb9e2bc6d7f188e46b0e5988903d7d5d: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag a80b85f856cfbd433bce186577c5097b6265f4d1: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag f513da75002b51adea347e0a8b01461c3bdeb819: missingSpaceBeforeDate: invalid author/committer line - missing space before date
Checking objects: 100% (12758/12758), done.
$ git --version
git version 2.7.4

Closer inspection with

$ for o in `git fsck 2>&1 | sed -e 's/.*tag \([0-9a-f]*\):.*/\1/'` ; do git cat-file tag $o | grep tag ; done

shows that these are all tags by

tagger pingc <pingc>
tagger jjoganic <jjoganic>

which have the required Unix timestamp and timezone field missing in the tagger line.

Could you perhaps replace these tags with syntactically correct ones?

Fortunately, no commits are affected by this problem, so no need to rewrite
commit history.

A repair script for exactly this problem (which I haven't tested yet) is suggested
at

https://sunweavers.net/blog/node/36

To avoid such accidents happening in future, I strongly recommend that you put
into your ~/.gitconfig file the lines

[transfer]
fsckObjects = true

This instructs git to syntax-check any incoming objects and commits before
allowing them into the repo.

This recommended practice will only become practical, however, once you
have fixed the existing broken tags.

Fixing this issue will also make it possible to clone your repo
on Git hosters (like Github or GitLab) that routinely fsck everything
they get.

Best regards,

Markus
--
Markus Kuhn, Computer Laboratory, University of Cambridge
http://www.cl.cam.ac.uk/~mgk25/ || CB3 0FD, Great Britain

------------------------------------------------------------------------------
Peter Hutterer
2016-09-21 11:00:42 UTC
Permalink
hi Markus,
Post by Markus Kuhn
The git repository
git://git.code.sf.net/p/linuxwacom/xf86-input-wacom
listed at
http://linuxwacom.sourceforge.net/wiki/index.php/Xf86-input-wacom
$ git clone git://git.code.sf.net/p/linuxwacom/xf86-input-wacom
Cloning into 'xf86-input-wacom'...
remote: Counting objects: 12758, done.
remote: Compressing objects: 100% (7095/7095), done.
remote: Total 12758 (delta 9813), reused 7122 (delta 5647)
Receiving objects: 100% (12758/12758), 3.15 MiB | 726.00 KiB/s, done.
Resolving deltas: 100% (9813/9813), done.
Checking connectivity... done.
$ cd xf86-input-wacom/
$ git fsck
Checking object directories: 100% (256/256), done.
error in tag 98c06f6bca24f51046e07e4dcee3706064119a46: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag b4eb4f1258584d2c03042cc06e8b0f7083a70c08: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 7fca9adae042a1e012eae3172231d0c46632ade2: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 4f8dbb63c69d1cc0a053f548fbe15a15a2de2fc5: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag d92e615177fb68e238422479774e10527a61df72: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 141c206058a94b6120af52c100ddfd0f9161416e: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 4c2d56975a9691cab9f908db7b1809a42696ed8b: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag b46794b86d4d997c29726d2d2215b433d1de051a: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag a4df8e7805d077660fea07f22d1bf47c0108d478: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 8b8ecad2e32ae6ef17c6ee4e0f7e98c82ba7c16d: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 3237d10ce93e3a4ad62b0724d0ec2503481b23bd: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 500d8da63f60c5a64dfe8b07b09e8208e252d926: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 4ea8a10e24001316d4a099868b022188af93ce88: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag ae1eaa616f923516cfb6603dec21082450317963: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 6ef0f7330db494365f3207bd61d50f6059483d5f: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 7d077a9e31e7b8882471304b87c0ae06ce6b1a7a: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag cb5223e9f9b6810f561f044ee5f7ac2094b06e8a: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 275d37cbace5201806d72a3d4c84402818bbead5: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 3f8a5ebd1e2f7c7846abe030327db93b03a2c8e2: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag e60cf7bceee3547f0ba969b24eb6ffcd9a11420a: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 2e72493aee7c47598b9fe34c79f437861ff96912: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 6f35198f1dad5ffce05029ca6fccec667538ea46: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag ea43f45997f31cee0f6e8ff1dbea46b15314c57d: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 12ff697565cf4480721a80857b9c1aee51b7aa37: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 9ff7794e1326c2bee20c639956ec420dc8bad19a: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 9208ea42ff62fe1796dd72376c4a161067f5b6b4: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag f27838d871f2a5c09f760dd8fce98120f01333cb: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 24b987e2e8ec9f0a5785de813b4fad75d941236b: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag d17efaf58ad85e55b6356d437adfaed80eae5fac: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 86bc59ae9ce8159593c118b9ec4dda3324539ae8: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 9ff6fa0476d76c712a88b86cfb6ece36f501719f: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag af54bc1d4905b199f7c7ac5cd9dfb43d32b2e0cb: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 6812716d7c4187e5c1be69719dbf730d533ac10c: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag e920f4d69160980dceb4259685ca11510e3d7742: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 05264f7cd6db524d6621758cbc3b67e4c16e33a3: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 071fe55a5b55e40960092e502525d74d76d69001: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 97273c310c5fc914a3125e7e086497c62b8f444b: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag 4450cd53cb9e2bc6d7f188e46b0e5988903d7d5d: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag a80b85f856cfbd433bce186577c5097b6265f4d1: missingSpaceBeforeDate: invalid author/committer line - missing space before date
error in tag f513da75002b51adea347e0a8b01461c3bdeb819: missingSpaceBeforeDate: invalid author/committer line - missing space before date
Checking objects: 100% (12758/12758), done.
$ git --version
git version 2.7.4
Closer inspection with
$ for o in `git fsck 2>&1 | sed -e 's/.*tag \([0-9a-f]*\):.*/\1/'` ; do git cat-file tag $o | grep tag ; done
shows that these are all tags by
tagger pingc <pingc>
tagger jjoganic <jjoganic>
which have the required Unix timestamp and timezone field missing in the tagger line.
these tags pre-date git and were caused by whatever I used to import the old
cvs repo into git. the newest tag is from 2007, fixing these up now is
effort for very little benefit.
Post by Markus Kuhn
Could you perhaps replace these tags with syntactically correct ones?
Fortunately, no commits are affected by this problem, so no need to rewrite
commit history.
A repair script for exactly this problem (which I haven't tested yet) is suggested
at
https://sunweavers.net/blog/node/36
To avoid such accidents happening in future, I strongly recommend that you put
into your ~/.gitconfig file the lines
[transfer]
fsckObjects = true
This instructs git to syntax-check any incoming objects and commits before
allowing them into the repo.
This recommended practice will only become practical, however, once you
have fixed the existing broken tags.
Fixing this issue will also make it possible to clone your repo
on Git hosters (like Github or GitLab) that routinely fsck everything
they get.
we have a mirror on github, so it's not impossible to do so right now...

Cheers,
Peter


------------------------------------------------------------------------------
Loading...