diff options
author | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-03-14 21:26:47 -0400 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-03-14 21:26:47 -0400 |
commit | 94cacc84d322429e70485dea49bb858f48aa26c8 (patch) | |
tree | 2d6a493697e8e1b6db655a3bccc0869251db8e97 /modules/blobs/commit.d.sh | |
parent | 634f61cc8b4e096853c61686ccd535fbd45e9158 (diff) |
stuff
Diffstat (limited to 'modules/blobs/commit.d.sh')
-rw-r--r-- | modules/blobs/commit.d.sh | 40 |
1 files changed, 24 insertions, 16 deletions
diff --git a/modules/blobs/commit.d.sh b/modules/blobs/commit.d.sh index 7fcdd7e..08e9698 100644 --- a/modules/blobs/commit.d.sh +++ b/modules/blobs/commit.d.sh @@ -1,7 +1,8 @@ #!/usr/bin/env bash -# rvs blobs/commit.d - add a directory to the repository -# Copyright (C) 2009-2010, 2015-2016 Luke Shumaker -# +name=blobs/commit.d +desc='Add a directory to the repository' +copyright=('2009-2010, 2015-2016 Luke Shumaker') +license='AGPLv3+' # This file is part of rvs. # # This program is free software: you can redistribute it and/or modify @@ -17,18 +18,25 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -. "${0%/*}/_stdio.sh" +usage=('DIRECTORY') +. "${0%/*}/_shlib.sh" + +main() { + [[ $# -eq 1 ]] || errusage + dir="$1" -usage='DIRECTORY' -[[ $# -eq 1 ]] || errusage -dir="$1" + tmpfile="$(mktemp -t "${0##*/}.XXXXXXXXXX")" + trap 'rm -f -- "$tmpfile"' EXIT + ( + cd "$dir" + shopt -s dotglob nullglob + for file in *; do + id="$("$RVS" commit "$file")" + stat -c $'%a\t%u (%U)\t%g (%G)\t' -- "$file" + printf $'%s\t%s\n' "$id" "$file" + done > "$tmpfile" + ) + "$RVS" commit.f "$tmpfile" 'd' +} -shopt -s dotglob -cd "$dir" -tmpfile="$(mktemp -t "${0##*/}.XXXXXXXXXX")" -for file in *; do - id="$("$RVS" commit "$file")" - stat -c $'%a\t%u (%U)\t%g (%G)\t' -- "$file" - printf $'%s\t%s\n' "$id" "$file" -done > "$tmpfile" -"$RVS" commit.f "$tmpfile" d +main "$@" |