Bug Report: hg {copy, rename, mv} with ".." to an empty directory fails with obscure error

Matt Mackall mpm at selenic.com
Tue Oct 2 14:10:35 CDT 2007


On Tue, Oct 02, 2007 at 08:47:11AM -0700, Mike Neuman wrote:
> You're right, I just didn't transcribe that part, but I did do the add. 
> Here are the exact commands I just ran again:
> 
> % mkdir test-rep
> % cd test-rep
> % hg init .
> % mkdir dir1 dir2
> % touch dir1/file1
> % hg add dir1/file1
> % hg commit -m "test"
> % cd dir1
> % hg mv file1 ../dir2
> abort: /home/mcn/test-rep/dir2/file1 not under root
> % cd ..
> % hg log -v
> changeset:   0:020838924ec8
> tag:         tip
> user:        Mike Neuman <mcn at EnGarde.com>
> date:        Tue Oct 02 08:39:13 2007 -0700
> files:       dir1/file1
> description:
> test
> 
> % hg mv dir1/file1 dir2
> (Success)
> 
> ----
> 
> Here's one other interesting tidbit. The above was run on a FreeBSD 6.2 
> machine. If I run the exact same sequence on a Linux machine, it works 
> fine. Both are the same version of Mercurial (0.9.4).

That's a very interesting tidbit. Are there any symlinks or the like
in your path? Linux getcwd is a fast syscall due to the dcache, but
other UNIXen tend to have to walk the directory tree in libc.

-- 
Mathematics is the supreme nostalgia of our time.


More information about the Mercurial mailing list