rsync
rsync copied to clipboard
Add independent update mode for symbolic links
This PR enhances rsync with an independent update mode for symbolic links. Its main purpose is to skip symlinks that are newer on the receiver. The mode is enabled independently of the update mode via the --update-links
switch. To extend the behaviour of this option to empty directories, an additional --allow-link-update-dir
switch may be enabled. In this mode, a less recent empty directory on the destination may be replaced with a more recent symbolic link from the source.
The PR includes a sanity test to verify the impact of the proposed modes on a set of files (relative, dangling, absolute, unsafe, devlink dirlink, empty directory, non-empty directory, fifo) under different circumstances.
The test included in the PR needs further work to run on FreeBSD apparently.
I'll note that tweaking .github/workflows/build.yml
to include coreutils
on the brew install
line should hopefully be enough to fix the test error on macOS.
I'll note that tweaking
.github/workflows/build.yml
to includecoreutils
on thebrew install
line should hopefully be enough to fix the test error on macOS.
Noted and added it in commit c3437c1
. The workflow change now awaits approval.