git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Paul Tan <pyokagan@gmail.com>
To: Johannes Schindelin <johannes.schindelin@gmx.de>
Cc: git@vger.kernel.org, Stefan Beller <sbeller@google.com>,
	Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>,
	Ramkumar Ramachandra <artagnon@gmail.com>
Subject: [PATCH v3] pull: handle --log=<n>
Date: Thu, 21 May 2015 18:36:17 +0800	[thread overview]
Message-ID: <20150521103617.GA6159@yoshi.chippynet.com> (raw)
In-Reply-To: <5661061272076a1883cfde1087be4a42@www.dscho.org>

On Mon, May 18, 2015 at 10:53 PM, Johannes Schindelin <johannes.schindelin@gmx.de> wrote:
> On 2015-05-18 15:39, Paul Tan wrote:
>> diff --git a/t/t5524-pull-msg.sh b/t/t5524-pull-msg.sh
>> index 8cccecc..eebb8c9 100755
>> --- a/t/t5524-pull-msg.sh
>> +++ b/t/t5524-pull-msg.sh
>> @@ -17,6 +17,9 @@ test_expect_success setup '
>>               git commit -m "add bfile"
>>       ) &&
>>       test_tick && test_tick &&
>> +     echo "second" >afile &&
>> +     git add afile &&
>> +     git commit -m "second commit" &&
>>       echo "original $dollar" >afile &&
>>       git add afile &&
>
> I completely forgot to send a mail last time where I wanted to mention the test_commit function. I *think* that above invocation is equivalent to
>
>     test_commit "second commit" afile second
>
> with the additional benefit that `test_tick` is called automatically. Maybe you want to use that more concise function call?

Hmm, it says that 'second commit' is not a valid tag name ;-) Okay, I can work around it by making the commit message "second".

On another note though, I think I need to add a "test_tick" for the commit just below as well:

        echo "original $dollar" >afile &&
        git add afile &&c
        git commit -m "do not clobber $dollar signs"

So, here's the re-rolled patch.

--- >8 ---
Since efb779f (merge, pull: add '--(no-)log' command line option,
2008-04-06) git-pull supported the (--no-)log switch and would pass it
to git-merge.

96e9420 (merge: Make '--log' an integer option for number of shortlog
entries, 2010-09-08) implemented support for the --log=<n> switch, which
would explicitly set the number of shortlog entries. However, git-pull
does not recognize this option, and will instead pass it to git-fetch,
leading to "unknown option" errors.

Fix this by matching --log=* in addition to --log and --no-log.

Implement a test for this use case.

Signed-off-by: Paul Tan <pyokagan@gmail.com>
---
 git-pull.sh         |  4 ++--
 t/t5524-pull-msg.sh | 18 +++++++++++++++++-
 2 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/git-pull.sh b/git-pull.sh
index 9ed01fd..5ff4545 100755
--- a/git-pull.sh
+++ b/git-pull.sh
@@ -81,8 +81,8 @@ do
 		diffstat=--no-stat ;;
 	--stat|--summary)
 		diffstat=--stat ;;
-	--log|--no-log)
-		log_arg=$1 ;;
+	--log|--log=*|--no-log)
+		log_arg="$1" ;;
 	--no-c|--no-co|--no-com|--no-comm|--no-commi|--no-commit)
 		no_commit=--no-commit ;;
 	--c|--co|--com|--comm|--commi|--commit)
diff --git a/t/t5524-pull-msg.sh b/t/t5524-pull-msg.sh
index 8cccecc..9bc7821 100755
--- a/t/t5524-pull-msg.sh
+++ b/t/t5524-pull-msg.sh
@@ -16,7 +16,9 @@ test_expect_success setup '
 		test_tick &&
 		git commit -m "add bfile"
 	) &&
-	test_tick && test_tick &&
+	test_tick &&
+	test_commit second afile &&
+	test_tick &&
 	echo "original $dollar" >afile &&
 	git add afile &&
 	git commit -m "do not clobber $dollar signs"
@@ -32,4 +34,18 @@ test_expect_success pull '
 )
 '
 
+test_expect_success '--log=1 limits shortlog length' '
+(
+	cd cloned &&
+	git reset --hard HEAD^ &&
+	test "$(cat afile)" = original &&
+	test "$(cat bfile)" = added &&
+	git pull --log=1 &&
+	git log -3 &&
+	git cat-file commit HEAD >result &&
+	grep Dollar result &&
+	! grep second result
+)
+'
+
 test_done
-- 
2.1.4

  parent reply	other threads:[~2015-05-21 10:36 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-18 13:39 [PATCH v2] pull: handle --log=<n> Paul Tan
2015-05-18 14:53 ` Johannes Schindelin
2015-05-18 18:18   ` Junio C Hamano
2015-05-19 13:35     ` Johannes Schindelin
2015-05-19 13:57       ` Junio C Hamano
2015-05-19 21:24         ` Dennis Kaarsemaker
2015-05-19 21:33           ` Stefan Beller
2015-05-19 21:43             ` Dennis Kaarsemaker
2015-05-19 21:37           ` Junio C Hamano
2015-05-19 21:49             ` Dennis Kaarsemaker
2015-05-19 22:10               ` Junio C Hamano
2015-05-19 22:30                 ` Dennis Kaarsemaker
2015-05-19 23:14                   ` Junio C Hamano
2015-05-20  2:19                     ` Junio C Hamano
2015-05-20  8:11                       ` Dennis Kaarsemaker
2015-05-20  5:10             ` Junio C Hamano
2015-05-20  8:13               ` Dennis Kaarsemaker
2015-05-21 10:36   ` Paul Tan [this message]
2015-05-21 21:24     ` [PATCH v3] " Junio C Hamano
2015-05-22 13:29       ` Paul Tan
2015-05-18 15:15 ` [PATCH v2] " Paul Tan
2015-05-18 15:26   ` Johannes Schindelin

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=20150521103617.GA6159@yoshi.chippynet.com \
    --to=pyokagan@gmail.com \
    --cc=Matthieu.Moy@grenoble-inp.fr \
    --cc=artagnon@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=johannes.schindelin@gmx.de \
    --cc=sbeller@google.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).