From: Marcel Holtmann <marcel@holtmann.org>
To: Petr Baudis <pasky@ucw.cz>
Cc: GIT Mailing List <git@vger.kernel.org>
Subject: [PATCH Cogito] Add -u option to cg-log to show only commits from a specific user
Date: Mon, 09 May 2005 02:49:33 +0200 [thread overview]
Message-ID: <1115599773.8949.90.camel@pegasus> (raw)
[-- Attachment #1: Type: text/plain, Size: 305 bytes --]
Hi Petr,
the attached patch introduces the -u option for cg-log. Now you can give
a username or a part of a username and only commits with a matching
author or committer will be displayed.
This patch also changes the option parsing, because otherwise we are
stuck to a specific order.
Regards
Marcel
[-- Attachment #2: patch --]
[-- Type: text/plain, Size: 2105 bytes --]
cg-log: needs update
Index: cg-log
===================================================================
--- 00b94eea5b99d5dd1d1bbe9c9ca3502d11aec581/cg-log (mode:100755)
+++ uncommitted/cg-log (mode:100755)
@@ -15,6 +15,9 @@
#
# Takes an -f option to list which files was changed.
#
+# Takes -u"username" to list only commits where author or
+# committer contains username.
+#
# Takes an -r followed with id resolving to a commit to start from
# (HEAD by default), or id1:id2 representing an (id1;id2] range
# of commits to show.
@@ -27,29 +30,39 @@
# at least somewhere it does. Bash is broken.
trap exit SIGPIPE
-if [ "$1" = "-c" ]; then
- shift
- # See terminfo(5), "Color Handling"
- colheader="$(tput setaf 2)" # Green
- colauthor="$(tput setaf 6)" # Cyan
- colcommitter="$(tput setaf 5)" # Magenta
- colfiles="$(tput setaf 4)" # Blue
- colsignoff="$(tput setaf 3)" # Yellow
- coldefault="$(tput op)" # Restore default
-else
- colheader=
- colauthor=
- colcommitter=
- colfiles=
- colsignoff=
- coldefault=
-fi
-
+colheader=
+colauthor=
+colcommitter=
+colfiles=
+colsignoff=
+coldefault=
list_files=
-if [ "$1" = "-f" ]; then
- shift
- list_files=1
-fi
+user=
+while [ "$1" ]; do
+ case "$1" in
+ -c)
+ # See terminfo(5), "Color Handling"
+ colheader="$(tput setaf 2)" # Green
+ colauthor="$(tput setaf 6)" # Cyan
+ colcommitter="$(tput setaf 5)" # Magenta
+ colfiles="$(tput setaf 4)" # Blue
+ colsignoff="$(tput setaf 3)" # Yellow
+ coldefault="$(tput op)" # Restore default
+ shift
+ ;;
+ -f)
+ list_files=1
+ shift
+ ;;
+ -u*)
+ user="${1#-u}"
+ shift
+ ;;
+ *)
+ break
+ ;;
+ esac
+done
list_commit_files()
{
@@ -109,6 +122,9 @@
parent=$(git-cat-file commit $commit | sed -n '2s/parent //p;2Q')
[ "$parent" ] && [ "$(git-diff-tree -r $commit $parent "$@")" ] || continue
fi
+ if [ "$user" ]; then
+ git-cat-file commit $commit | grep -e '^author ' -e '^committer ' | grep -qi "$user" || continue
+ fi
echo $colheader""commit ${commit%:*} $coldefault;
git-cat-file commit $commit | \
while read key rest; do
next reply other threads:[~2005-05-09 0:42 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-05-09 0:49 Marcel Holtmann [this message]
2005-05-12 20:23 ` [PATCH Cogito] Add -u option to cg-log to show only commits from a specific user Petr Baudis
-- strict thread matches above, loose matches on Subject: below --
2005-05-12 21:58 Marcel Holtmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1115599773.8949.90.camel@pegasus \
--to=marcel@holtmann.org \
--cc=git@vger.kernel.org \
--cc=pasky@ucw.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.