[issue750] Revisions with case-only renames cannot be checkout on case-aware systems

Patrick Mézard mercurial-bugs at selenic.com
Sun Sep 23 14:21:12 CDT 2007


New submission from Patrick Mézard <pmezard at gmail.com>:

Posted by Andrei Vermel, with suggested patch attached:

C:\temp\aaa>hg version
Mercurial Distributed SCM (version 81575b7b505e)

Copyright (C) 2005-2007 Matt Mackall <mpm at selenic.com> and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

C:\temp\aaa>hg init
C:\temp\aaa>echo aaa >aaa.txt
C:\temp\aaa>hg add
adding aaa.txt
C:\temp\aaa>hg ci -m 1
C:\temp\aaa>hg ren aaa.txt qqq
C:\temp\aaa>hg ren qqq AAA.TXT
C:\temp\aaa>hg ci -m 2
C:\temp\aaa>hg update -C 0
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
C:\temp\aaa>hg --traceback update -C 1
Traceback (most recent call last):
  File "C:\Python24\Lib\site-packages\mercurial\dispatch.py", line 45, in _runcatch
    return _dispatch(ui, args)
  File "C:\Python24\Lib\site-packages\mercurial\dispatch.py", line 348, in _dispatch
    ret = _runcommand(ui, options, cmd, d)
  File "C:\Python24\Lib\site-packages\mercurial\dispatch.py", line 401, in
_runcommand
    return checkargs()
  File "C:\Python24\Lib\site-packages\mercurial\dispatch.py", line 357, in checkargs
    return cmdfunc()
  File "C:\Python24\Lib\site-packages\mercurial\dispatch.py", line 340, in <lambda>
    d = lambda: func(ui, repo, *args, **cmdoptions)
  File "C:\Python24\Lib\site-packages\mercurial\commands.py", line 2713, in update
    return hg.clean(repo, rev)
  File "C:\Python24\Lib\site-packages\mercurial\hg.py", line 273, in clean
    stats = _merge.update(repo, node, False, True, None)
  File "C:\Python24\Lib\site-packages\mercurial\merge.py", line 628, in update
    recordupdates(repo, action, branchmerge)
  File "C:\Python24\Lib\site-packages\mercurial\merge.py", line 526, in
recordupdates
    repo.dirstate.normal(f)
  File "C:\Python24\Lib\site-packages\mercurial\dirstate.py", line 221, in normal
    s = os.lstat(self._join(f))
OSError: [Errno 2] No such file or directory: 'C:\\temp\\aaa\\AAA.TXT'
abort: No such file or directory: C:\temp\aaa\AAA.TXT

----------
files: update.patch
messages: 4034
nosy: pmezard
priority: bug
status: unread
title: Revisions with case-only renames cannot be checkout on case-aware systems

____________________________________________________
Mercurial issue tracker <mercurial-bugs at selenic.com>
<http://www.selenic.com/mercurial/bts/issue750>
____________________________________________________
-------------- next part --------------
A non-text attachment was scrubbed...
Name: update.patch
Type: text/x-patch
Size: 787 bytes
Desc: not available
Url : http://selenic.com/pipermail/mercurial-devel/attachments/20070923/bb51c436/attachment.bin 


More information about the Mercurial-devel mailing list