diff options
author | Ori Bernstein <ori@eigenstate.org> | 2021-06-21 02:12:58 +0000 |
---|---|---|
committer | Ori Bernstein <ori@eigenstate.org> | 2021-06-21 02:12:58 +0000 |
commit | 21075859e4f3ed93ef2a8ae072cc23d575b4549c (patch) | |
tree | 842835dfcc5ac1f466653a154842edcfe50e7f12 | |
parent | 0339e9ac44b4aed285391727ce3d6e3e1afd173e (diff) | |
download | plan9front-21075859e4f3ed93ef2a8ae072cc23d575b4549c.tar.xz |
git/revert: handle absolute paths gracefully (thanks deuteron)
when reverting files, absolute paths would get concatenated with
$gitrel; use `cleanname -d` to fix this.
-rw-r--r-- | sys/src/cmd/git/revert | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/src/cmd/git/revert b/sys/src/cmd/git/revert index a96fcac1d..a516e3a9d 100644 --- a/sys/src/cmd/git/revert +++ b/sys/src/cmd/git/revert @@ -11,9 +11,10 @@ commit=$gitfs/HEAD if(~ $#query 1) commit=`{git/query -p $query} -for(f in `$nl{cd $commit/tree/ && walk -f ./$gitrel/$*}){ +files=`$nl{cleanname -d $gitrel $*} +for(f in `$nl{cd $commit/tree/ && walk -f $files}){ mkdir -p `{basename -d $f} - cp -- $commit/tree/$f $f + cp -x -- $commit/tree/$f $f git/add $f } exit '' |