Hi, 1. I have multiple files modified, but would like to undo the changes in one of the changed files. "git reset --hard" do not accept single files. So I used to use "git diff <file> | patch -p X", but X cannot be know until I checked the patch and know the path relationship. Is there other way to do it? 2. Sometimes I delete old unused branches with "git branch -D <branch>", but I just realized theren't a reflog log for such operation. If the branch is the only reference to the logs, deleting the branch makes the commits become dangling commits. How could I recover those commit? I run into situation 1 from time to time. Luckily I have never ran into situation 2, but would like to know the recovery ways. Thanks in advance. Best Regards, Mac Lin -- 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