git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v3 3/4] git-submodule: New subcommand 'summary' (3) - limit summary size

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 6, 2008, 00:24 UTC
Message-ID
<7v7iggitsd.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<1204481710-29791-3-git-send-email-pkufranky@gmail.com>
Ping Yin <pkufranky@gmail.com> writes:
> This patch teaches git-submodule an option '--summary-limit|-n <number>'
> to limit number of commits in total for the summary. Number 0 will disable
> summary and minus number means unlimted (the default).
I really doubt showing the bottom one specially makes sense.
Why not just read from
	git log '--pretty=%m %h %s' --left-right --topo-order A...B
and show N top commits from each?

I've already said that I do not think applying the same limit to new/deleted/modified cases makes sense, so commenting on this part might be a moot point, though.

-- >8 --
#!/bin/sh

limit=10 A=cc/run-command B=jc/test

lf='
'
git log --pretty=format:%m\ %h\ %s --left-right $A...$B |
(
	left=0 right=0 l= r= llast= rlast=
	ilimit=$(( $limit - 1 ))
	while read leftright commit name
	do
		it="$leftright$commit $name"
		case "$leftright" in
		'<')
			if test $left -eq $ilimit
			then
				llast=$it
			elif test $left -le $ilimit
			then
				l="$l$it$lf"
			fi
			left=$(( $left + 1 ))
			;;
		'>')
			if test $right -eq $ilimit
			then
				rlast=$it
			elif test $right -le $ilimit
			then
				r="$r$it$lf"
			fi
			right=$(( $right + 1 ))
			;;
		esac
	done
	printf %s "$l"
	if test $left -eq $limit
	then
		echo "$llast"
	elif test $left -gt $limit
	then
		echo "< ("$(( $left - $limit ))" more...)"
	fi
	printf %s "$r"
	if test $right -eq $limit
	then
		echo "$rlast"
	elif test $right -gt $limit
	then
		echo "> ("$(( $right - $limit ))" more...)"
	fi
)
Previous: Ping YinNext: Ping Yin
Message 10 of 13 in “git-submodule: New subcommand 'summary' (1) - code framework”
  1. 1/4 git-submodule: New subcommand 'summary' (1) - code frameworkPing Yin, Mar 2, 2008
  2. 2/4 git-submodule: New subcommand 'summary' (2) - show commit summaryPing Yin, Mar 2, 2008
  3. Junio C HamanoMar 5, 2008
  4. Ping YinMar 6, 2008
  5. Junio C HamanoMar 6, 2008
  6. Ping YinMar 6, 2008
  7. Junio C HamanoMar 6, 2008
  8. Ping YinMar 6, 2008
  9. 3/4 git-submodule: New subcommand 'summary' (3) - limit summary sizePing Yin, Mar 2, 2008
  10. Junio C HamanoMar 6, 2008
  11. Ping YinMar 6, 2008
  12. Ping YinMar 7, 2008
  13. 4/4 git-submodule: New subcommand 'summary' (4) - Update the documentPing Yin, Mar 2, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.