summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJed Brown <jed@59A2.org>2014-03-07 13:15:50 -0700
committerJed Brown <jed@59A2.org>2014-03-07 13:15:50 -0700
commit8afedf3be29eeb1e38fd08dd9226b8741aaff4fe (patch)
tree64d159ec94927d56e8fa66d1b16da0ceff115179
parent771b59355167a40c216de2460147cd182a5dcd78 (diff)
parentb56b802c634366d10dce2e3c352ba635774763e7 (diff)
downloadgit-fat-8afedf3be29eeb1e38fd08dd9226b8741aaff4fe.tar.gz
Merge branch 'master' of https://github.com/wikimedia/git-fat
Support idiosyncratic workflows such as a custom server-side using symlinks to an existing layout, where rsync pull needs --copy-links. * 'master' of https://github.com/wikimedia/git-fat: Supporting multiple space separated rsync options Adding support for extra rsync options via rsync.options
-rwxr-xr-xgit-fat7
1 files changed, 5 insertions, 2 deletions
diff --git a/git-fat b/git-fat
index e62f99b..092ec26 100755
--- a/git-fat
+++ b/git-fat
@@ -138,11 +138,12 @@ class GitFat(object):
remote = gitconfig_get('rsync.remote', file=cfgpath)
ssh_port = gitconfig_get('rsync.sshport', file=cfgpath)
ssh_user = gitconfig_get('rsync.sshuser', file=cfgpath)
+ options = gitconfig_get('rsync.options', file=cfgpath)
if remote is None:
raise RuntimeError('No rsync.remote in %s' % cfgpath)
- return remote, ssh_port, ssh_user
+ return remote, ssh_port, ssh_user, options
def get_rsync_command(self,push):
- (remote, ssh_port, ssh_user) = self.get_rsync()
+ (remote, ssh_port, ssh_user, options) = self.get_rsync()
if push:
self.verbose('Pushing to %s' % (remote))
else:
@@ -156,6 +157,8 @@ class GitFat(object):
rshopts += ' -p ' + ssh_port
if rshopts:
cmd.append('--rsh=ssh' + rshopts)
+ if options:
+ cmd += options.split(' ')
if push:
cmd += [self.objdir + '/', remote + '/']
else: