3

(open)rsync gains include/exclude support

 2 years ago
source link: https://undeadly.org/cgi?action=article%3Bsid%3D20210830081715
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

OpenBSD Journal

Home Archives About

Submit Story Create Account Login

(open)rsync gains include/exclude support

Contributed by rueda on 2021-08-30 from the --enclusive, --ixclaudio dept.

Claudio Jeker (claudio@) has committed support for simple include and exclude cases in (open)rsync:

CVSROOT:	/cvs
Module name:	src
Changes by:	[email protected]	2021/08/29 07:43:46

Modified files:
	usr.bin/rsync  : Makefile extern.h flist.c main.c receiver.c 
	                 sender.c 
Added files:
	usr.bin/rsync  : charclass.h rmatch.c rules.c 

Log message:
Implement --exclude/exclude-file and --include/include-file.
Currently only simple include and excludes work, the advanced filters
introduced later in rsync are not implemented. It is unclear if the per
directory filters are something we want to implement. This requires
more modern protocols which openrsync is not able to handle right now.

This adds a special matching function to allow the ** matching which behaves
mostly like rsyncs version with the exception of how bad [] patterns are
expanded. For bad patterns openrsync follows more how fnmatch behaves and
not the somewhat strange rsync behaviour.

Not perfect but committing now so people can test and provide feedback

Great stuff! This should further reduce the need for installing the net/rsync port.


Comments
  1. By grey (grey) on 2021-08-31 05:17

    Nice!

    Albeit, the last time I was testing openrsync, I discovered I could use openrsync to reproducibly crash rsync on FreeBSD13-CURRENT on a Raspberry Pi 3 and decided rather than try to debug rsync, I would wait for openrsync to mature a bit, I'm grateful to see that it continues to progress!


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK