Is the following normal Mercurial behaviour? If so, how do I discard uncommitted changes?
D:\hgrepo\trunk>hg st
M Library\libFunc.h
D:\hgrepo\trunk>hg revert --all
reverting Library\libFunc.h
D:\hgrepo\trunk>hg st
M Library\libFunc.h
D:\hgrepo\trunk>hg update 1003 --clean # Parent branch
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
D:\hgrepo\trunk>hg st
M Library\libFunc.h
D:\hgrepo\trunk>hg revert --all
reverting Library\libFunc.h
D:\hgrepo\trunk>hg st
M Library\libFunc.h
Additionally, a diff appears to show there are no modifications to the files (kdiff3 reports binary equal), but Mercurial still reports them as modified. (Only in reality I have about 50 modified files - I trimmed the example to a single file)
I would have expected the second call to hg st
in your example to list only a new untracked libFunc.h.orig
file. Have you enabled the eol
extension in your setup? There's another thread hereabouts that is dedicated to some problems with this extension.