File: git-gerrit-push

package info (click to toggle)
insighttoolkit 3.20.1%2Bgit20120521-3
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 80,652 kB
  • sloc: cpp: 458,133; ansic: 196,223; fortran: 28,000; python: 3,839; tcl: 1,811; sh: 1,184; java: 583; makefile: 430; csh: 220; perl: 193; xml: 20
file content (55 lines) | stat: -rwxr-xr-x 1,681 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/usr/bin/env bash
#==========================================================================
#
#   Copyright Insight Software Consortium
#
#   Licensed under the Apache License, Version 2.0 (the "License");
#   you may not use this file except in compliance with the License.
#   You may obtain a copy of the License at
#
#          http://www.apache.org/licenses/LICENSE-2.0.txt
#
#   Unless required by applicable law or agreed to in writing, software
#   distributed under the License is distributed on an "AS IS" BASIS,
#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#   See the License for the specific language governing permissions and
#   limitations under the License.
#
#==========================================================================*/

USAGE="[<remote>] [--]"
OPTIONS_SPEC=
SUBDIRECTORY_OK=Yes
. "$(git --exec-path)/git-sh-setup"

#-----------------------------------------------------------------------------

remote=''

# Parse command line options.
while test $# != 0; do
  case "$1" in
    --) shift; break ;;
    -*) usage ;;
    *) test -z "$remote" || usage ; remote="$1" ;;
  esac
  shift
done
test $# = 0 || usage

# Default remote.
test -n "$remote" || remote="gerrit"

# Identify and validate the topic branch name.
topic="$(git symbolic-ref HEAD | sed -e 's|^refs/heads/||')"
if test "$topic" = "master"; then
  die 'Please name your topic:
  git checkout -b descriptive-name'
fi

# Fetch now to help the following push recognize the upstream branch heads.
# This helps computation of a minimal pack to push.
git fetch "$remote" || exit 1

# Push the topic by name.
git push "$remote" HEAD:refs/for/master/$topic