diff options
| -rw-r--r-- | functions/syncscript.fish | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/functions/syncscript.fish b/functions/syncscript.fish index e1511cf..7b838f8 100644 --- a/functions/syncscript.fish +++ b/functions/syncscript.fish @@ -12,14 +12,21 @@ for script in (find $targetdir -type f -path "*$fishscriptdirs*/*" -name "*.fish set -l basescript (string replace "$targetdir" "$basedir" "$script") + # Skip scripts not present in target tree if not test -e $basescript continue end + # Skip scripts tracked by git if git -C (path dirname $script) ls-files --error-unmatch $script &>/dev/null continue end + # Skip identical scripts + if cmp -s $basescript $script + continue + end + if ask "Copy $basescript to $targetdir?" cp -f --preserve="timestamps,mode" $basescript $script end |
