gitnext: added.

This commit is contained in:
Ole Tange 2017-03-31 15:09:17 +02:00
parent 6be767cbec
commit 5b0c6995b3
4 changed files with 128 additions and 27 deletions

View file

@ -1,6 +1,6 @@
CMD = blink bsearch G histogram upsidedown tracefile timestamp rand rclean rrm goodpasswd gitnext pdfman puniq ramusage ramusage CMD = blink bsearch G gitundo histogram upsidedown tracefile timestamp rand rclean rrm goodpasswd gitnext pdfman puniq ramusage ramusage
all: blink/blink.1 bsearch/bsearch.1 G/G.1 goodpasswd/goodpasswd.1 histogram/histogram.1 puniq/puniq.1 rand/rand.1 rrm/rrm.1 timestamp/timestamp.1 tracefile/tracefile.1 upsidedown/upsidedown.1 wssh/wssh.1 all: blink/blink.1 bsearch/bsearch.1 G/G.1 gitnext/gitnext.1 gitundo/gitundo.1 goodpasswd/goodpasswd.1 histogram/histogram.1 neno/neno.1 pdfman/pdfman.1 puniq/puniq.1 rand/rand.1 rrm/rrm.1 timestamp/timestamp.1 tracefile/tracefile.1 upsidedown/upsidedown.1 wssh/wssh.1
%.1: % %.1: %
pod2man $< > $@ pod2man $< > $@

4
README
View file

@ -14,10 +14,14 @@ G - short hand for multi level grep.
gitnext - Checkout next revision. Opposite of 'checkout HEAD^'. gitnext - Checkout next revision. Opposite of 'checkout HEAD^'.
gitundo - Undo last commit.
neno - No error no output. Only print STDERR and STDOUT if the command fails. neno - No error no output. Only print STDERR and STDOUT if the command fails.
puniq - Print unique lines the first time they are seen. puniq - Print unique lines the first time they are seen.
pdfman - Convert man page to pdf and display it using evince.
rand - Generate (pseudo-)random data rand - Generate (pseudo-)random data
rclean - Remove files with MD5 sums recorded by rrm (see below). rclean - Remove files with MD5 sums recorded by rrm (see below).

View file

@ -1,6 +1,64 @@
#!/bin/bash #!/bin/bash
# Checkout next revision : <<=cut
# Opposite of 'checkout HEAD^' =pod
=head1 NAME
gitnext - Checkout next git revision
=head1 SYNOPSIS
gitnext
=head1 DESCRIPTION
B<gitnext> does the opposite of B<git checkout HEAD^>. So instead of
stepping backwards in time, it steps forwards.
=head1 EXAMPLE
Go to next revision
gitnext
=head1 AUTHOR
Copyright (C) 2017 Ole Tange,
http://ole.tange.dk and Free Software Foundation, Inc.
=head1 LICENSE
Copyright (C) 2012 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
at your option any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
=head1 DEPENDENCIES
B<gitnext> uses B<git>.
=head1 SEE ALSO
B<git>
=cut
git checkout $(git log --reverse --ancestry-path HEAD..master|head -n 1|field 2) git checkout $(git log --reverse --ancestry-path HEAD..master|head -n 1|field 2)

View file

@ -1,28 +1,67 @@
#!/bin/bash #!/bin/bash
# NAME : <<=cut
# neno - no error no output =pod
#
# SYNOPSIS =head1 NAME
# neno command1 [\; command2 ...]
# neno - no error no output
# DESCRIPTION
# neno will print the output from both standard output and
# standard error if the composed command returns an error. If the =head1 SYNOPSIS
# composed command returns true, the output will be ignored.
# B<neno> I<command1> [\; I<command2> ...]
# This is useful for cron jobs where you only want output if it
# failed.
# =head1 DESCRIPTION
# AUTHOR
# Ole Tange <tange@gnu.org> B<neno> will print the output from both standard output and standard
# error if the composed command returns an error. If the composed
# COPYRIGHT command returns true, the output will be ignored. This is useful for
# Copyright © 2012 Free Software Foundation, Inc. License cron jobs where you only want output if it failed.
# GPLv3+: GNU GPL version 3 or later
# <http://gnu.org/licenses/gpl.html>. This is free software: you
# are free to change and redistribute it. There is NO WARRANTY, =head1 EXAMPLE
# to the extent permitted by law.
Give output for missing file:
neno ls /missing-file
No output if file exists:
neno ls /bin/sh
=head1 AUTHOR
Copyright (C) 2017 Ole Tange,
http://ole.tange.dk and Free Software Foundation, Inc.
=head1 LICENSE
Copyright (C) 2012 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
at your option any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
=head1 SEE ALSO
B<man>
=cut
print() { print() {
cat $TMP/stdout >&3 cat $TMP/stdout >&3