Am 27.04.2013 01:26, schrieb Junio C Hamano: > Felipe Contreras <felipe.contreras@xxxxxxxxx> writes: > >> No, it wouldn't, but I don't think there's any way to do \<\> or \b in globs. > > This should do in the meantime, but it further needs: > > - J6t's sign off for the follow-up part to remove remaining > bash-isms to complete this patch (the last part of the patch is > from <5178C583.6000703@xxxxxxxxxxxxx> and we can take half the > log message from there); The patch below doesn't remove the bash dependency, yet, but it addresses the problematic mismatch you noticed without the need for $LF. Can you please queue it to move the topic forward? Removing the remaining bashisms and the following two can come later: > - Rename it to git-remote-testgit.sh and tell Makefile to replace > the shebang line with SHELL_PATH like other scripts; > > - Remove the "we need to have bash because we will run remote-testgit" > logic from t5801 Here's my Signed-off-by: Johannes Sixt <j6t@xxxxxxxx> for this part in case someone wants to pick it up: > diff --git a/git-remote-testgit b/git-remote-testgit > index b395c8d..ffac950 100755 > --- a/git-remote-testgit > +++ b/git-remote-testgit > @@ -1,4 +1,4 @@ > -#!/usr/bin/env bash > +#!/bin/sh > # Copyright (c) 2012 Felipe Contreras > > alias=$1 > @@ -23,7 +23,6 @@ then > testgitmarks="$dir/testgit.marks" > test -e "$gitmarks" || >"$gitmarks" > test -e "$testgitmarks" || >"$testgitmarks" > - testgitmarks_args=( "--"{import,export}"-marks=$testgitmarks" ) > fi > > while read line > @@ -62,22 +61,31 @@ do > echo "feature export-marks=$gitmarks" > fi > echo "feature done" > - git fast-export "${testgitmarks_args[@]}" $refs | > + git fast-export \ > + ${testgitmarks:+"--import-marks=$testgitmarks"} \ > + ${testgitmarks:+"--export-marks=$testgitmarks"} \ > + $refs | > sed -e "s#refs/heads/#${prefix}/heads/#g" > echo "done" > ;; > export) > before=$(git for-each-ref --format='%(refname) %(objectname)') > > - git fast-import "${testgitmarks_args[@]}" --quiet > + git fast-import \ > + ${testgitmarks:+"--import-marks=$testgitmarks"} \ > + ${testgitmarks:+"--export-marks=$testgitmarks"} \ > + --quiet > --- 8< --- Subject: [PATCH] git-remote-testgit: avoid process substitution The implementation of bash on Windows does not offer process substitution. Signed-off-by: Johannes Sixt <j6t@xxxxxxxx> --- git-remote-testgit | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/git-remote-testgit b/git-remote-testgit index 23c9d40..979b13e 100755 --- a/git-remote-testgit +++ b/git-remote-testgit @@ -87,17 +87,18 @@ do exit 1 fi - before=$(git for-each-ref --format='%(refname) %(objectname)') + before=$(git for-each-ref --format=' %(refname) %(objectname) ') git fast-import "${testgitmarks_args[@]}" --quiet - after=$(git for-each-ref --format='%(refname) %(objectname)') - # figure out which refs were updated - join -e 0 -o '0 1.2 2.2' -a 2 <(echo "$before") <(echo "$after") | - while read ref a b + git for-each-ref --format='%(refname) %(objectname)' | + while read ref a do - test $a == $b && continue + case "$before" in + *" $ref $a "*) + continue ;; # unchanged + esac echo "ok $ref" done -- 1.8.2.388.g36592d7 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html