diff options
author | Ori Bernstein <ori@eigenstate.org> | 2021-06-05 13:40:28 +0000 |
---|---|---|
committer | Ori Bernstein <ori@eigenstate.org> | 2021-06-05 13:40:28 +0000 |
commit | fd9679d97b0bb7b8849f84f50c708d5f733708e1 (patch) | |
tree | 6507c7a5dc2dc99edb8807d66a521b8ba6f74752 | |
parent | 4f3437a3ccde4fadf84f6de254a141cece9ca0af (diff) | |
download | plan9front-fd9679d97b0bb7b8849f84f50c708d5f733708e1.tar.xz |
git: handle absolute paths better
we were catting $gitrel onto absolute paths. stop it.
-rwxr-xr-x | sys/src/cmd/git/add | 11 | ||||
-rwxr-xr-x | sys/src/cmd/git/commit | 2 | ||||
-rwxr-xr-x | sys/src/cmd/git/diff | 2 |
3 files changed, 8 insertions, 7 deletions
diff --git a/sys/src/cmd/git/add b/sys/src/cmd/git/add index 9b79d766b..a51e154ee 100755 --- a/sys/src/cmd/git/add +++ b/sys/src/cmd/git/add @@ -16,17 +16,18 @@ if(~ $remove 1){ if(~ $#* 0) exec aux/usage +paths=`$nl{cleanname -d $gitrel $*} if(~ $add tracked) - files=`$nl{walk -f $gitrel/$*} + files=`$nl{walk -f $paths} if not - files=`$nl{cd .git/index9/tracked/ && walk -f $gitrel/$*} + files=`$nl{cd .git/index9/tracked/ && walk -f $paths} for(f in $files){ - if(! ~ `{cleanname $f} .git/*){ + if(! ~ `$nl{cleanname $f} .git/*){ addpath=.git/index9/$add/$f delpath=.git/index9/$del/$f - mkdir -p `{basename -d $addpath} - mkdir -p `{basename -d $delpath} + mkdir -p `$nl{basename -d $addpath} + mkdir -p `$nl{basename -d $delpath} # We don't want a matching qid, so that # git/walk doesn't think this came from # a checkout. diff --git a/sys/src/cmd/git/commit b/sys/src/cmd/git/commit index bcbe3b1c4..5b23f7706 100755 --- a/sys/src/cmd/git/commit +++ b/sys/src/cmd/git/commit @@ -135,7 +135,7 @@ if not if(~ $#revise 1){ files=() if(! ~ $#* 0) - files=`$nl{git/walk -c `$nl{cleanname $gitrel/$*}} + files=`$nl{git/walk -c `$nl{cleanname -d $gitrel $*}} if(~ $status '' || ~ $#files 0 && ! test -f .git/index9/merge-parents && ~ $#revise 0) die 'nothing to commit' $status @{ diff --git a/sys/src/cmd/git/diff b/sys/src/cmd/git/diff index be74676d9..075ea3ee9 100755 --- a/sys/src/cmd/git/diff +++ b/sys/src/cmd/git/diff @@ -12,7 +12,7 @@ if(~ $#commit 0) files=() if(! ~ $#* 0) - files=`{cleanname $gitrel/$*} + files=`{cleanname -d $gitrel $*} branch=`{git/query -p $commit} if(~ $summarize 1){ |