# Parameters
REMOTE="$1"
+REPOSITORY="$2"
VOLUME="/media/$REMOTE"
DOMAIN="`facter domain`"
HOST="`facter hostname`"
$sudo chown $WHOAMI. $CACHE/*
sync_media_incoming_perms
+# Check if a specific repository was passed via the command line
+if [ -z "$REPOSITORY" ] && [ -d "$CACHE/$REPOSITORY" ] && ! echo "$REPOSITORY" | grep -q '--'; then
+ REPOSITORIES="$REPOSITORY"
+else
+ REPOSITORIES="`ls $CACHE`"
+fi
+
# Iterate over existing repositories in the local cache
-for folder in `ls $CACHE`; do
+for folder in $REPOSITORIES; do
# Sync each repository in the local cache
if [ -d "$CACHE/$folder/.git/annex" ]; then
if [ "`git -C $CACHE/$folder config sync-media.skip`" == "true" ]; then
# Process removable or remote media
if [ ! -z "$DRIVE" ] && [ -d "$VOLUME/$MEDIA" ]; then
+ # Check if a specific repository was passed via the command line
+ if [ -z "$REPOSITORY" ] && [ -d "$VOLUME/$MEDIA/$REPOSITORY" ] && ! echo "$REPOSITORY" | grep -q '--'; then
+ REPOSITORIES="$REPOSITORY"
+ else
+ REPOSITORIES="`ls $VOLUME/$MEDIA`"
+ fi
+
# Iterate over existing repositories in the removable media
- for folder in `ls $VOLUME/$MEDIA`; do
+ for folder in $REPOSITORIES; do
# Sync each local repository in the removable media
if [ -d "$VOLUME/$MEDIA/$folder/.git/annex" ]; then