projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
pack-redundant: type cleanups.
[git.git]
/
git-push.sh
diff --git
a/git-push.sh
b/git-push.sh
index
a67f47d
..
edc0b83
100755
(executable)
--- a/
git-push.sh
+++ b/
git-push.sh
@@
-1,6
+1,11
@@
#!/bin/sh
. git-sh-setup || die "Not a git archive"
#!/bin/sh
. git-sh-setup || die "Not a git archive"
+usage () {
+ die "Usage: git push [--all] [--force] <repository> [<refspec>]"
+}
+
+
# Parse out parameters and then stop at remote, so that we can
# translate it using .git/branches information
has_all=
# Parse out parameters and then stop at remote, so that we can
# translate it using .git/branches information
has_all=
@@
-18,7
+23,7
@@
do
--exec=*)
has_exec="$1" ;;
-*)
--exec=*)
has_exec="$1" ;;
-*)
-
die "Unknown parameter $1"
;;
+
usage
;;
*)
set x "$@"
shift
*)
set x "$@"
shift
@@
-41,8
+46,10
@@
esac
shift
case "$remote" in
shift
case "$remote" in
-http://* | https://* | git://* | rsync://* )
- die "Cannot push to $remote" ;;
+git://*)
+ die "Cannot use READ-ONLY transport to push to $remote" ;;
+rsync://*)
+ die "Pushing with rsync transport is deprecated" ;;
esac
set x "$remote" "$@"; shift
esac
set x "$remote" "$@"; shift
@@
-50,4
+57,9
@@
test "$has_all" && set x "$has_all" "$@" && shift
test "$has_force" && set x "$has_force" "$@" && shift
test "$has_exec" && set x "$has_exec" "$@" && shift
test "$has_force" && set x "$has_force" "$@" && shift
test "$has_exec" && set x "$has_exec" "$@" && shift
-exec git-send-pack "$@"
+case "$remote" in
+http://* | https://*)
+ exec git-http-push "$@";;
+*)
+ exec git-send-pack "$@";;
+esac