Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
[PATCH] Use git-octopus when pulling more than one heads.
author
Junio C Hamano
<junkio@cox.net>
Tue, 23 Aug 2005 04:57:59 +0000
(21:57 -0700)
committer
Junio C Hamano
<junkio@cox.net>
Wed, 24 Aug 2005 23:50:52 +0000
(16:50 -0700)
With this, you can finally say "git pull jgarzik sil24 pdc2027x".
Signed-off-by: Junio C Hamano <junkio@cox.net>
git-pull-script
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
ae2da40
)
diff --git
a/git-pull-script
b/git-pull-script
index 8608fcdebc1be7917de38740b3264edf5e0998ec..7016fbf943406d8e647e7a02f283fa10ab134905 100755
(executable)
--- a/
git-pull-script
+++ b/
git-pull-script
@@
-1,5
+1,9
@@
#!/bin/sh
#
#!/bin/sh
#
+# Copyright (c) 2005 Junio C Hamano
+#
+# Fetch one or more remote refs and merge it/them into the current HEAD.
+
. git-sh-setup-script || die "Not a git archive"
git-fetch-script "$@" || exit 1
merge_head=$(sed -e 's/ .*//' "$GIT_DIR"/FETCH_HEAD | tr '\012' ' ')
. git-sh-setup-script || die "Not a git archive"
git-fetch-script "$@" || exit 1
merge_head=$(sed -e 's/ .*//' "$GIT_DIR"/FETCH_HEAD | tr '\012' ' ')
@@
-7,10
+11,16
@@
merge_name=$(sed -e 's/^[0-9a-f]* //' "$GIT_DIR"/FETCH_HEAD |
tr '\012' ' ')
case "$merge_head" in
tr '\012' ' ')
case "$merge_head" in
-'' | *' '?*) die "Cannot resolve multiple heads at the same time (yet)." ;;
+'')
+ echo >&2 "No changes."
+ exit 0
+ ;;
+*' '?*)
+ echo >&2 "Pulling more than one heads; making an Octopus."
+ exec git-octopus-script
+ ;;
esac
esac
-
git-resolve-script \
"$(cat "$GIT_DIR"/HEAD)" \
$merge_head "Merge $merge_name"
git-resolve-script \
"$(cat "$GIT_DIR"/HEAD)" \
$merge_head "Merge $merge_name"