Bump
This commit is contained in:
parent
8c3de565a3
commit
f167579796
@ -6,10 +6,10 @@ man1_MANS = go-commit.1
|
||||
|
||||
|
||||
go-commit:
|
||||
$(CP) sunrise-commit go-commit
|
||||
$(CP) repo-commit go-commit
|
||||
|
||||
go-commit.1:
|
||||
$(CP) sunrise-commit.1 go-commit.1
|
||||
$(CP) repo-commit.1 go-commit.1
|
||||
|
||||
go-series2epatch:
|
||||
$(CP) series2epatch go-series2epatch
|
||||
|
@ -1,5 +1,5 @@
|
||||
AC_PREREQ([2.59])
|
||||
AC_INIT([go-utils], [0.3])
|
||||
AC_INIT([go-utils], [0.3.1])
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
|
||||
AM_INIT_AUTOMAKE([1.6 foreign dist-bzip2 no-dependencies])
|
||||
@ -27,6 +27,6 @@ AC_CONFIG_FILES([distclean-0.3.py], [chmod +x distclean-0.3.py])
|
||||
AC_CONFIG_FILES([lfspatch], [chmod +x lfspatch])
|
||||
AC_CONFIG_FILES([redigest], [chmod +x redigest])
|
||||
AC_CONFIG_FILES([series2epatch], [chmod +x series2epatch])
|
||||
AC_CONFIG_FILES([sunrise-commit.1], [chmod +x sunrise-commit.1])
|
||||
AC_CONFIG_FILES([sunrise-commit], [chmod +x sunrise-commit])
|
||||
AC_CONFIG_FILES([repo-commit.1], [chmod +x repo-commit.1])
|
||||
AC_CONFIG_FILES([repo-commit], [chmod +x repo-commit])
|
||||
AC_OUTPUT
|
||||
|
@ -1,19 +1,19 @@
|
||||
.TH GO-COMMIT 1 "13 Jul 2010" "@PACKAGE_STRING@" "User Commands"
|
||||
.TH SUNRISE-COMMIT 1 "13 Jul 2010" "@PACKAGE_STRING@" "User Commands"
|
||||
|
||||
.SH NAME
|
||||
|
||||
go-commit \- a Gentoo repository commit helper.
|
||||
repo-commit \- a Gentoo repository commit helper.
|
||||
|
||||
.SH SYNOPSIS
|
||||
|
||||
.B go-commit
|
||||
.B repo-commit
|
||||
[options]
|
||||
[--]
|
||||
.I <commit-message>
|
||||
|
||||
.SH DESCRIPTION
|
||||
|
||||
.B go-commit
|
||||
.B repo-commit
|
||||
is a helper script for Gentoo repository commiters. Apart from
|
||||
performing the actual commit, it performs the following tasks:
|
||||
|
||||
@ -64,6 +64,12 @@ Force proceeding with the commit even if QA violations occur. With
|
||||
this option, errors from `\fIrepoman full\fP' will be ignored and
|
||||
\fB--force\fP is passed to `\fIrepoman commit\fP'.
|
||||
|
||||
.IP "\fB-H\fP, \fB--nochangelog\fP"
|
||||
|
||||
Disable appending ChangeLog entries and reverting them. In other words,
|
||||
this option makes sure \fBrepo-commit\fP won't touch the ChangeLog at
|
||||
all.
|
||||
|
||||
.IP "\fB-m\fP, \fB--noformat\fP"
|
||||
|
||||
Do not prepend the commit message with package names.
|
||||
@ -94,8 +100,8 @@ Print the version string and exit.
|
||||
|
||||
.IP ECHANGELOG_USER
|
||||
|
||||
the committer name and e-mail as it would appear in ChangeLog.
|
||||
The go-suggested format is:
|
||||
The committer name and e-mail as it would appear in ChangeLog.
|
||||
The sunrise-suggested format is:
|
||||
|
||||
.IR "Real Name" " (" nickname ") <" e-mail >
|
||||
|
||||
@ -105,7 +111,7 @@ The go-suggested format is:
|
||||
|
||||
.IP "Adding and Updating Packages"
|
||||
|
||||
The primary use of \fBgo-commit\fP is to add packages to a Gentoo
|
||||
The primary use of \fBrepo-commit\fP is to add packages to a Gentoo
|
||||
repository or update existing packages. In order to use it this way,
|
||||
you are expected to run it from within the package's directory,
|
||||
providing an appropriate changelog message. (The package's directory
|
||||
@ -113,9 +119,9 @@ is the directory holding its ebuilds).
|
||||
|
||||
If your package requires an additional file to be committed outside
|
||||
the package directory (e.g. an eclass, a license), then you need to
|
||||
commit that file manually \fBbefore\fP using \fBgo-commit\fP.
|
||||
commit that file manually \fBbefore\fP using \fBrepo-commit\fP.
|
||||
|
||||
\fBgo-commit\fP will update the ChangeLog entry and call
|
||||
\fBrepo-commit\fP will update the ChangeLog entry and call
|
||||
.BR repoman (1)
|
||||
to do the actual commit for you. If the package's ChangeLog should
|
||||
\fBnot\fP be updated for a particular commit, use \fB--trivial\fP.
|
||||
@ -124,17 +130,17 @@ If you are adding a new package and using subversion or a similar VCS,
|
||||
you may get a warning that your VCS's update command failed. For
|
||||
example, subversion's update command fails when run from a newly added,
|
||||
but not yet committed, directory. To avoid this warning, you may use
|
||||
\fB--noupdate\fP. This option prevents \fBgo-commit\fP from calling the
|
||||
\fB--noupdate\fP. This option prevents \fBrepo-commit\fP from calling the
|
||||
VCS's update command (which only happens if you are not using DVCS).
|
||||
|
||||
.IP "Removing Packages"
|
||||
|
||||
\fBgo-commit\fP can be used to remove a set of packages too. In order to
|
||||
\fBrepo-commit\fP can be used to remove a set of packages too. In order to
|
||||
do so, first mark all the expected packages as removed using your VCS.
|
||||
Next, perform the necessary \fBpackage.mask\fP changes and remove
|
||||
licenses no longer in use.
|
||||
|
||||
Afterwards, call \fBgo-commit\fP from within your repository's root
|
||||
Afterwards, call \fBrepo-commit\fP from within your repository's root
|
||||
directory, passing the removal reason as an argument. The script will
|
||||
prepend your commit message with the complete removed package list.
|
||||
|
||||
@ -144,7 +150,7 @@ atomic package removal commit, where \fBpackage.mask\fP entries and
|
||||
files used only by the removed packages are removed. However, this can
|
||||
cause trouble if the working copy is dirty.
|
||||
|
||||
\fBgo-commit\fP will check whether any removed package is still
|
||||
\fBrepo-commit\fP will check whether any removed package is still
|
||||
referenced by any of the other packages by default. If it finds an
|
||||
internal package reference, it will give an error message. This is in
|
||||
order to ensure that no package will be left with unsatisfied
|
||||
@ -165,7 +171,7 @@ $ svn mkdir app-foo/bar
|
||||
$ cd app-foo/bar
|
||||
[...]
|
||||
$ svn add bar-1.ebuild
|
||||
$ go-commit 'New ebuild for bug #nnnnnn.'
|
||||
$ repo-commit 'New ebuild for bug #nnnnnn.'
|
||||
.fi
|
||||
|
||||
.I "2. Performing a version bump:"
|
||||
@ -174,23 +180,23 @@ $ go-commit 'New ebuild for bug #nnnnnn.'
|
||||
$ cd app-foo/bar
|
||||
$ svn mv bar-1.ebuild bar-2.ebuild
|
||||
[...]
|
||||
$ go-commit 'Version bump.'
|
||||
$ repo-commit 'Version bump.'
|
||||
.fi
|
||||
|
||||
.I "3. Fixing a broken Manifest:"
|
||||
|
||||
.nf
|
||||
$ cd app-foo/bar
|
||||
$ go-commit -t 'Fixing a broken Manifest.'
|
||||
$ repo-commit -t 'Fixing a broken Manifest.'
|
||||
.fi
|
||||
|
||||
(\fBgo-commit\fP always updates the Manifest)
|
||||
(\fBrepo-commit\fP always updates the Manifest)
|
||||
|
||||
.I "4. Removing a package which was added to gx86:"
|
||||
|
||||
.nf
|
||||
$ svn rm app-foo/bar
|
||||
$ go-commit -f 'in gx86.'
|
||||
$ repo-commit -f 'in gx86.'
|
||||
.fi
|
||||
|
||||
.SH "REPORTING BUGS"
|
||||
@ -201,9 +207,9 @@ Please report bugs via Gentoo Bugzilla:
|
||||
|
||||
.SH AUTHORS
|
||||
|
||||
Michal Gorny <gentoo@mgorny.alt.pl>
|
||||
Michal Gorny <mgorny@gentoo.org>
|
||||
|
||||
Nathan Phillip Brink <ohnobinki@ohnopublishing.net>
|
||||
Nathan Phillip Brink <binki@gentoo.org>
|
||||
|
||||
.SH "SEE ALSO"
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
# go-commit -- a Gentoo repository commit helper
|
||||
# (c) 2010 Michał Górny <gentoo@mgorny.alt.pl>
|
||||
# Released under the terms of the 3-clause BSD license.
|
||||
# sunrise-commit -- a Gentoo repository commit helper
|
||||
# (c) 2011 Michał Górny & Nathan Phillip Brink
|
||||
# Released under the terms of the 2-clause BSD license.
|
||||
|
||||
# -- output helpers --
|
||||
|
||||
@ -44,7 +44,7 @@ local_supported() {
|
||||
}
|
||||
|
||||
# If it is not, declare dummy local() function unsetting the variables.
|
||||
local_supported || eval 'local() {
|
||||
( local_supported ) || eval 'local() {
|
||||
unset "${@}"
|
||||
}'
|
||||
|
||||
@ -52,14 +52,12 @@ local_supported || eval 'local() {
|
||||
|
||||
# See if we're in a repo, and what VCS are we using.
|
||||
find_repo() {
|
||||
: ${SC_WANT_CHANGELOG=}
|
||||
|
||||
if svn info >/dev/null 2>&1; then
|
||||
SC_VCS=svn
|
||||
SC_WANT_CHANGELOG=1
|
||||
: ${SC_WANT_CHANGELOG=1}
|
||||
elif cvs status -l >/dev/null 2>&1; then
|
||||
SC_VCS=cvs
|
||||
SC_WANT_CHANGELOG=1
|
||||
: ${SC_WANT_CHANGELOG=1}
|
||||
elif hg tip >/dev/null 2>&1; then
|
||||
SC_VCS=hg
|
||||
else
|
||||
@ -69,7 +67,7 @@ find_repo() {
|
||||
|
||||
if [ ${ret} -ne 127 ] && [ ${ret} -ne 128 ]; then
|
||||
if echo "${remotes}" | grep git-svn >/dev/null 2>&1; then
|
||||
SC_WANT_CHANGELOG=1
|
||||
: ${SC_WANT_CHANGELOG=1}
|
||||
fi
|
||||
SC_VCS=git
|
||||
else
|
||||
@ -279,16 +277,17 @@ vcs_update() {
|
||||
print_help() {
|
||||
cat <<_EOH_
|
||||
Synopsis:
|
||||
go-commit [options] [--] <commit message>
|
||||
sunrise-commit [options] [--] <commit message>
|
||||
|
||||
Options:
|
||||
-?, -h, --help print this message,
|
||||
-V, --version print version string,
|
||||
|
||||
-c, --changelog backwards compat (ignored),
|
||||
-c, --changelog force creating a ChangeLog entry,
|
||||
-C, --nocolor disable colorful output,
|
||||
-d, --noupdate disable updating the repository,
|
||||
-f, --force force repoman to proceed with the commit,
|
||||
-H, --nochangelog do not append to ChangeLog nor revert it,
|
||||
-m, --noformat do not prepend the commit message with package names,
|
||||
-q, --quiet backwards compat (ignored),
|
||||
-t, --trivial trivial changes (do not add a ChangeLog entry),
|
||||
@ -320,7 +319,7 @@ confirm() {
|
||||
# Guess what!
|
||||
main() {
|
||||
local commitmsg force monochrome noprepend noupdate trivial
|
||||
unset SC_VERBOSE
|
||||
unset SC_VERBOSE SC_WANT_CHANGELOG
|
||||
|
||||
# Command-line parsing.
|
||||
while [ ${#} -gt 0 ]; do
|
||||
@ -335,7 +334,7 @@ main() {
|
||||
;;
|
||||
|
||||
-c|--changelog)
|
||||
SC_WANT_CHANGELOG=1
|
||||
SC_WANT_CHANGELOG=force
|
||||
;;
|
||||
-C|--nocolor)
|
||||
monochrome=1
|
||||
@ -346,6 +345,9 @@ main() {
|
||||
-f|--force)
|
||||
force=1
|
||||
;;
|
||||
-H|--nochangelog)
|
||||
SC_WANT_CHANGELOG=
|
||||
;;
|
||||
-m|--noformat)
|
||||
noprepend=
|
||||
;;
|
||||
@ -409,22 +411,40 @@ main() {
|
||||
vcs_update
|
||||
fi
|
||||
|
||||
local bns bn word bug_next
|
||||
for word in ${commitmsg}; do
|
||||
case ${word} in
|
||||
[Bb][Uu][Gg])
|
||||
bug_next=1
|
||||
;;
|
||||
\#*)
|
||||
bn="${word}"
|
||||
;;
|
||||
*)
|
||||
[ -z "${bug_next}" ] && continue
|
||||
bn="${word}"
|
||||
bug_next=
|
||||
;;
|
||||
esac
|
||||
if [ -n "${bn}" ]; then
|
||||
bns="${bns:+${bns} }$(expr "${bn}" : '[^[:digit:]]*\([[:digit:]]\{1,\}\)')"
|
||||
bn=
|
||||
fi
|
||||
done
|
||||
|
||||
# With DVCS repos, we do not do ChangeLogs by default...
|
||||
# ...at least unless they're already there.
|
||||
if [ -n "${SC_WANT_CHANGELOG}" ] || [ -f ChangeLog ]; then
|
||||
[ -f ChangeLog ] && : ${SC_WANT_CHANGELOG=1}
|
||||
if [ -n "${SC_WANT_CHANGELOG}" ]; then
|
||||
sayv 'Cleaning up the ChangeLog...'
|
||||
vcs_reset ChangeLog
|
||||
|
||||
local bns
|
||||
# Let's take a lucky guess bugnumbers consist of 4+ digits.
|
||||
bns=$(echo "${commitmsg}" | grep -o -E '[0-9]{4,}')
|
||||
|
||||
# Creating a new ChangeLog? Let's take a look at the commit message.
|
||||
if [ ! -f ChangeLog ]; then
|
||||
[ -n "${trivial}" ] && die "Trivial change for an initial commit? You're joking, right?"
|
||||
|
||||
# Geos_One-specific checks.
|
||||
if [ "$(cat ../../profiles/repo_name 2>/dev/null)" = "go" ]; then
|
||||
# Sunrise-specific checks.
|
||||
if [ "$(cat ../../profiles/repo_name 2>/dev/null)" = "sunrise" ]; then
|
||||
[ -z "${bns}" ] && die 'Please supply the bug number in the initial commit message!'
|
||||
if [ ! -f metadata.xml ]; then
|
||||
req cp ../../skel.metadata.xml metadata.xml
|
||||
@ -436,23 +456,25 @@ main() {
|
||||
fi
|
||||
|
||||
if [ -z "${trivial}" ]; then
|
||||
local ecopts
|
||||
[ ${SC_WANT_CHANGELOG} = force ] && ecopts=--no-strict
|
||||
sayv '...and appending to it.'
|
||||
echangelog --vcs ${SC_VCS} "${commitmsg}" \
|
||||
echangelog --vcs ${SC_VCS} ${ecopts} "${commitmsg}" \
|
||||
|| die 'Please correct the problems shown by echangelog.'
|
||||
echo
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "${bns}" ]; then
|
||||
local bn cbn
|
||||
for bn in ${bns}; do
|
||||
cbn=#${WHITE}${bn}${NORMAL}
|
||||
wget -q http://bugs.gentoo.org/show_bug.cgi?id=${bn} -O - | sed -n \
|
||||
-e "s, *<title>Gentoo Bug \([0-9]*\) - \(.*\)</title>,Bug ${cbn}: ${BGREEN}\2${RESET},p" \
|
||||
-e "s, *<title>Gentoo \(Invalid Bug ID\)</title>,Bug ${cbn}: ${YELLOW}!! \1${RESET},p"
|
||||
-e "s, *<title>\(Gentoo \)\?Bug \([0-9]*\) \(-\|–\) \(.*\)</title>,Bug ${cbn}: ${BGREEN}\4${RESET},p" \
|
||||
-e "s, *<title>\(Gentoo \)\?\(Invalid Bug ID\)</title>,Bug ${cbn}: ${YELLOW}!! \2${RESET},p"
|
||||
done
|
||||
echo
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ${SC_VCS} != cvs ] || [ -n "${noupdate}" ]; then
|
||||
vcs_status
|
Loading…
Reference in New Issue
Block a user