rsync -avoogg host:/from/ /to/
---- orig/compat.c 2004-07-21 23:59:35
+--- orig/compat.c 2005-02-01 10:39:22
+++ compat.c 2004-09-09 01:59:08
@@ -28,8 +28,11 @@
int remote_protocol = 0;
+ preserve_gid = 2;
+ }
}
---- orig/options.c 2004-09-20 05:10:48
+--- orig/options.c 2005-02-01 10:39:22
+++ options.c 2004-09-09 01:59:08
-@@ -358,8 +358,8 @@ static struct poptOption long_options[]
+@@ -384,8 +384,8 @@ static struct poptOption long_options[]
{"no-whole-file", 0, POPT_ARG_VAL, &whole_file, 0, 0, 0 },
{"copy-unsafe-links", 0, POPT_ARG_NONE, ©_unsafe_links, 0, 0, 0 },
{"perms", 'p', POPT_ARG_NONE, &preserve_perms, 0, 0, 0 },
+ {"group", 'g', POPT_ARG_NONE, 0, 'g', 0, 0 },
{"devices", 'D', POPT_ARG_NONE, &preserve_devices, 0, 0, 0 },
{"times", 't', POPT_ARG_NONE, &preserve_times, 0, 0, 0 },
- {"checksum", 'c', POPT_ARG_NONE, &always_checksum, 0, 0, 0 },
-@@ -568,6 +568,14 @@ int parse_arguments(int *argc, const cha
+ {"omit-dir-times", 'O', POPT_ARG_NONE, &omit_dir_times, 0, 0, 0 },
+@@ -690,6 +690,14 @@ int parse_arguments(int *argc, const cha
usage(FINFO);
exit_cleanup(0);
case 'v':
verbose++;
break;
-@@ -707,8 +715,8 @@ int parse_arguments(int *argc, const cha
+@@ -901,8 +909,8 @@ int parse_arguments(int *argc, const cha
#endif
preserve_perms = 1;
preserve_times = 1;
preserve_devices = 1;
}
-@@ -938,10 +946,16 @@ void server_options(char **args,int *arg
+@@ -1144,10 +1152,16 @@ void server_options(char **args,int *arg
if (preserve_hard_links)
argstr[x++] = 'H';
if (preserve_devices)
argstr[x++] = 'D';
if (preserve_times)
---- orig/rsync.c 2004-09-07 21:45:30
-+++ rsync.c 2004-09-09 01:59:08
-@@ -25,7 +25,6 @@
- extern int verbose;
+--- orig/rsync.c 2005-02-01 10:39:22
++++ rsync.c 2005-02-01 10:46:04
+@@ -26,7 +26,6 @@ extern int verbose;
extern int dry_run;
extern int preserve_times;
+ extern int omit_dir_times;
-extern int am_root;
+ extern int am_server;
extern int am_sender;
extern int am_generator;
- extern int preserve_uid;
-@@ -158,7 +157,7 @@ int set_perms(char *fname,struct file_st
+@@ -181,7 +180,7 @@ int set_perms(char *fname,struct file_st
updated = 1;
}
+ change_uid = preserve_uid > 1 && st->st_uid != file->uid;
change_gid = preserve_gid && file->gid != GID_NONE
&& st->st_gid != file->gid;
- if (change_uid || change_gid) {
---- orig/uidlist.c 2004-04-29 19:37:25
+ #if !HAVE_LCHOWN && !CHOWN_MODIFIES_SYMLINK
+--- orig/uidlist.c 2005-01-28 19:08:20
+++ uidlist.c 2004-09-09 01:59:08
@@ -35,7 +35,6 @@ extern int verbose;
extern int preserve_uid;