##// END OF EJS Templates
addremove: correctly handle intermediate symlinks...
addremove: correctly handle intermediate symlinks This fixes problems mentioned in issue660 comments (unrelated to original issue) where directory was renamed, and symlink was added instead. In such situation addremove wasn't able to correctly detect that old files no longer here, but tried to add symlink (and failed due collision with old files).

File last commit:

r6338:0750f111 default
r6651:7f0dd352 default
Show More
test-symlinks.out
40 lines | 858 B | text/plain | TextLexer
adding bar
adding foo
adding bomb
adding a.c
adding dir/a.o
adding dir/b.o
M dir/b.o
! a.c
! dir/a.o
? .hgignore
a.c: unsupported file type (type is fifo)
! a.c
# test absolute path through symlink outside repo
A f
# try symlink outside repo to file inside
abort: ../z not under root
# try cloning symlink in a subdir
1. commit a symlink
? a/b/c/demo
adding a/b/c/demo
2. clone it
updating working directory
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
# git symlink diff
diff --git a/a/b/c/demo b/a/b/c/demo
new file mode 120000
--- /dev/null
+++ b/a/b/c/demo
@@ -0,0 +1,1 @@
+/path/to/symlink/source
\ No newline at end of file
# import git symlink diff
applying ../sl.diff
diff --git a/a/b/c/demo b/a/b/c/demo
new file mode 120000
--- /dev/null
+++ b/a/b/c/demo
@@ -0,0 +1,1 @@
+/path/to/symlink/source
\ No newline at end of file