Alan Chandler wrote: > On Sunday 03 December 2006 18:24, Linus Torvalds wrote: > ... >> >> git ls-tree HEAD -- that-file | git update-index --index-info >> git commit that-file > > I don't quite understand this - maybe it should be > > git ls-tree HEAD -- that-file | git update-index --index-info > git commit > git commit -a > > either I want to ONLY commit that file at the working tree state (and index > before these commands), or I want to commit ALL except this file (so I can > later come and commit just that file) > > so having reset the index to the state of HEAD for "that-file" then the commit > should make a commit with all the other changes in the index (but NOT > that-file) and then the git commit -a picks up "that-file" $ git ls-tree HEAD -- that-file | git update-index --index-info $ git commit that-file $ git commit resets index state of 'that-file' to the HEAD version, so the safety valve is bypassed and "git commit that-file" commit _working directory_ version only (because --only is default for "git commit <path>"). Then you commit the rest of files. While $ git ls-tree HEAD -- that-file | git update-index --index-info $ git commit $ git commit -a first commits rest of files, then all files to their working directory version. P.S. Could you wrap lines a little earlier (76 columns perhaps)? Thanks in advance -- Jakub Narebski Warsaw, Poland ShadeHawk on #git - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html