From a79944d76cf4098e42d13e5743a3dccb61ebaca6 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Tue, 21 Jun 2005 09:59:26 -0700 Subject: [PATCH] "git checkout": add "-u" flag to update HEAD conditionally And fix braino on testing "-f". --- git-checkout-script | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/git-checkout-script b/git-checkout-script index e8e777f1f..dc1cffde0 100755 --- a/git-checkout-script +++ b/git-checkout-script @@ -6,11 +6,14 @@ new=${new:-$old} args=($(git-rev-parse --no-revs "$@")) i=0 -force=0 +force= +update= while [ $i -lt ${#args} ]; do case "${args[$i]}" in "-f") force=1;; + "-u") + update=1;; "") ;; *) @@ -20,11 +23,11 @@ while [ $i -lt ${#args} ]; do i=$(($i+1)) done -if $force +if [ "$force" ] then git-read-tree --reset $new && - git-checkout-cache -q -f -u -a && - echo $new > "$GIT_DIR/HEAD" + git-checkout-cache -q -f -u -a else - git-read-tree -m -u $old $new && echo $new > "$GIT_DIR/HEAD" -fi + git-read-tree -m -u $old $new +fi && [ "$update" ] && echo $new > "$GIT_DIR/HEAD" + -- 2.30.2