mirror of
https://github.com/git/git
synced 2024-10-29 17:08:46 +00:00
pull: Fix parsing of -X<option>
As -X parameter can contain arbitrary $IFS characters, we need to properly quote it from the shell while forming the command line. Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
ee2c79552a
commit
14e5d40ca4
1 changed files with 14 additions and 7 deletions
21
git-pull.sh
21
git-pull.sh
|
@ -68,10 +68,10 @@ do
|
|||
1,-X)
|
||||
usage ;;
|
||||
*,-X)
|
||||
xx="-X $2"
|
||||
xx="-X $(git rev-parse --sq-quote "$2")"
|
||||
shift ;;
|
||||
*,*)
|
||||
xx="$1" ;;
|
||||
xx=$(git rev-parse --sq-quote "$1") ;;
|
||||
esac
|
||||
merge_args="$merge_args$xx "
|
||||
;;
|
||||
|
@ -228,8 +228,15 @@ then
|
|||
fi
|
||||
|
||||
merge_name=$(git fmt-merge-msg $log_arg <"$GIT_DIR/FETCH_HEAD") || exit
|
||||
test true = "$rebase" &&
|
||||
exec git-rebase $diffstat $strategy_args $merge_args --onto $merge_head \
|
||||
${oldremoteref:-$merge_head}
|
||||
exec git-merge $diffstat $no_commit $squash $no_ff $ff_only $log_arg $strategy_args $merge_args \
|
||||
"$merge_name" HEAD $merge_head $verbosity
|
||||
case "$rebase" in
|
||||
true)
|
||||
eval="git-rebase $diffstat $strategy_args $merge_args"
|
||||
eval="$eval --onto $merge_head ${oldremoteref:-$merge_head}"
|
||||
;;
|
||||
*)
|
||||
eval="git-merge $diffstat $no_commit $squash $no_ff $ff_only"
|
||||
eval="$eval $log_arg $strategy_args $merge_args"
|
||||
eval="$eval \"$merge_name\" HEAD $merge_head $verbosity"
|
||||
;;
|
||||
esac
|
||||
eval "exec $eval"
|
||||
|
|
Loading…
Reference in a new issue