##// END OF EJS Templates
convert: add a mode where mercurial_sink skips empty revisions....
convert: add a mode where mercurial_sink skips empty revisions. The getchanges function of some converter_source classes can return some false positives. I.e. they sometimes claim that a file "foo" was changed in some revision, even though its contents are still the same. convert_svn is particularly bad, but I think this can also happen with convert_cvs and, at least in theory, with mercurial_source. For regular conversions this is not really a problem - as long as getfile returns the right contents, we'll get a converted revision with the right contents. But when we use --filemap, this could lead to superfluous revisions being converted. Instead of fixing every converter_source, I decided to change mercurial_sink to work around this problem. When --filemap is used, we're interested only in revisions that touch some specific files. If a revision doesn't change any of these files, then we're not interested in it (at least for revisions with a single parent; merges are special). For mercurial_sink, we abuse this property and rollback a commit if the manifest text hasn't changed. This avoids duplicating the logic from localrepo.filecommit to detect unchanged files.

File last commit:

r5116:35d47b06 default
r5378:8a2915f5 default
Show More
test-symlinks.out
39 lines | 831 B | text/plain | TextLexer
/ tests / test-symlinks.out
Matt Mackall
symlinks: use is_link wherever is_exec is used
r4002 adding bar
Matthew Elder
symlink unit test
r1408 adding foo
adding bomb
Benoit Boissinot
fix handling of files of unsupported type in the walk code...
r1487 adding a.c
adding dir/a.o
adding dir/b.o
Matt Mackall
symlinks: use is_link wherever is_exec is used
r4002 M dir/b.o
Thomas Arendsen Hein
Adjusted all but one test output for the new behaviour of localrepo.changes()
r1620 ! a.c
! dir/a.o
Benoit Boissinot
fix handling of files of unsupported type in the walk code...
r1487 ? .hgignore
Benoit Boissinot
don't print anything about file of unsupported type unless...
r1527 a.c: unsupported file type (type is fifo)
Thomas Arendsen Hein
Adjusted all but one test output for the new behaviour of localrepo.changes()
r1620 ! a.c
Jim Meyering
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
r2115 # test absolute path through symlink outside repo
A f
# try symlink outside repo to file inside
abort: ../z not under root
Giorgos Keramidas
Create the parent directory when checking out symlinks.
r4137 # try cloning symlink in a subdir
1. commit a symlink
? a/b/c/demo
adding a/b/c/demo
2. clone it
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
Brendan Cully
patch: add git symlink support
r5116 # 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