On Fri, 21 Aug 2009, Avery Pennarun wrote: > (Warning: untested code follows) > > export GIT_INDEX_FILE=/tmp/my-temp-index > git read-tree PREVIOUS_COMMIT_OR_TREE_ID > hash=$(git hash-object NEW_FILE) > git update-index --cacheinfo "0644 $hash path/of/file/in/tree" > commitid=$(echo COMMIT MESSAGE | git commit-tree $(git write-tree)) > git update-ref refs/heads/BRANCHNAME $commitid PREVIOUS_COMMIT_OR_TREE_ID Looks roughly correct, but you need to add a a "-p $PREVIOUS_COMMIT" to that git commit-tree thing. Otherwise the new commit will be a root commit. Which _might_ be what you want, of course, but I kind of expect it wasn't. And no, I didn't test that either, so there may be other things that need fixing too. Looking at that thing, I have ugly flashbacks to my git scripts in 2005 ;) Linus -- 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