{"thread":{"id":"6066","subject":"Re: git-add,& \"file vanishing\" -> need git-add again","startedAt":"2006-12-21T20:47:46Z","lastAt":"2006-12-21T20:47:46Z","messageCount":1,"participants":["David Tweed"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"29970","messageId":"20061221204746.21305.qmail@web86903.mail.ukl.yahoo.com","threadId":"6066","inReplyTo":null,"subject":"Re: git-add,& \"file vanishing\" -> need git-add again","fromName":"David Tweed","fromEmail":"tweed314@yahoo.co.uk","sentAt":"2006-12-21T20:47:46Z","receivedAt":"2006-12-21T20:47:46Z","isPatch":false,"sender":{"key":"tweed314@yahoo.co.uk","avatar":null},"body":"Firstly, apologies for getting mail-list twice in original To: line: dunno how that happened.\n\n|On 12/22/06, David Tweed <tweed314@yahoo.co.uk> wrote:\n|> Sidenote: I'm moving the database from the old format to the new one by repeatedly unpacking\n|> the old database for snapshot X, git-add'ing any file names which have _never_ been in any snapshot\n|> before, git-commit -a, git-tag, then remove all the files unpacked by the\n|> old database and move onto snapshot X+1. This takes less than a second per snapshot.\n|\n|Not sure how large your snapshots are -- a second sounds like a long\n|time for git operations. While it is a bit more complex, you _can_\n|operate directly on the index, and the \"snapshot\" never needs to hit\n|the disk as such during your migration.\n\n\nBy trying to be brief I was a rather cryptic. What I was trying to say was:\n\n\n\nRunning the git commands\n\nearlier in the message in a script, I see certain files are not present from the git tree generated by\n\na commit at a time when I know the file I'd previously git-added \"reappears\" in the\n\nworking directory. I'm hypothesising that this is because when the file disappears the machinery\n\nin git discards the `track this file name' information. However, I haven't (and would prefer not to)\n\ndig into the git code to check that's the correct explanation. If this is why the files aren't\n\nbeing tracked I can try to script around the issue by git-adding all the files I want tracked\n\nby the snapshot before the git-commit -a. To help anyone thinking\n\nabout if the explanation is right, the working directory is repeatedly being wiped and refilled from my old\n\nbackup system with a second, so often all files have both creation and modification times\n\nset to the current second regardless of whether the content has changed. This is a really\nweird thing to do and might in some way be responsible for the untracked file (cf racy-git).\n\n\n\nMost of the maybe half-second overhead is coming from my script unpacking the files with gzip\n\nfrom my old database; git seems more than fast enough.\n\n\n|Have a look at how the cvsimport script works for an example.\n\n\nAs it's my personal db which I'll only convert once if I can just make replaying work\n\nI don't need anything more complicated; I've only got 2000-odd snapshots of 2500-odd files.\nHowever, the temporarily disappearing file issue is one I think I'll face with any\ncron-based commiting strategy and so need to solve.\n\ncheers, dave tweed\n\n\n\n\n\n\t\t\n___________________________________________________________ \nYahoo! Photos – NEW, now offering a quality print service from just 7p a photo http://uk.photos.yahoo.com\n"}]}