{"thread":{"id":"3712","subject":"Question about git-ls-files","startedAt":"2006-03-24T22:49:47Z","lastAt":"2006-03-24T22:49:47Z","messageCount":1,"participants":["Radoslaw Szkodzinski"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"17894","messageId":"200603242349.54578.astralstorm@o2.pl","threadId":"3712","inReplyTo":null,"subject":"Question about git-ls-files","fromName":"Radoslaw Szkodzinski","fromEmail":"astralstorm@o2.pl","sentAt":"2006-03-24T22:49:47Z","receivedAt":"2006-03-24T22:49:47Z","isPatch":false,"sender":{"key":"astralstorm@o2.pl","avatar":null},"body":"git-ls-files is a very useful command to list various types of files.\n\nHowever, it has some weird behaviour.\n\nLet's say someone removed the file and not updated the index yet.\nI want to get status for all files in the directory, so I launch git-ls-files \n-t -m -d -o, and I get:\n\nR removed-file\nC removed-file\n? something-else\n\n(it looks even better if I call it w/o -t)\n\nIf the file is removed, then marking it as changed is redundant.\nA removed file cannot be unchanged.\n\nThis behaviour makes for slow parsing, because to get the changed files which \nstill exist one has to at least skip items (or uniquify the list). This \nshouldn't be needed.\n\nRemoved files should of course still be listed as changed if there's no -d \nparameter.\n\n-- \nGPG Key id:  0xD1F10BA2\nFingerprint: 96E2 304A B9C4 949A 10A0  9105 9543 0453 D1F1 0BA2\n\nAstralStorm\n"}]}