git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC] request-pull with diff body itself
@ 2009-07-27 19:53 Cyrill Gorcunov
  2009-07-27 20:46 ` Junio C Hamano
  0 siblings, 1 reply; 5+ messages in thread
From: Cyrill Gorcunov @ 2009-07-27 19:53 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

Here is rfc in a sake of having ability to produce
diff body in small series of changes in request-pull.
we could use ">>" here and append diff by hands but
adding "-p" option seems more comfortable.

Dunno, just a thought.

Please CC me, I'm not subscribed.

	-- Cyrill
---
[RFC] request-pull -- produce long diff if needed

Allow git request-pull to append diff body into
pull request. It's really useful for small series
of commits.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
---

This is just an RFC -- so if you don't like it feel
free to just drop. I found useful to have an ability
to pass additional "-p" option and have diff body in
request.

 git-request-pull.sh |   18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

Index: git.git/git-request-pull.sh
=====================================================================
--- git.git.orig/git-request-pull.sh
+++ git.git/git-request-pull.sh
@@ -4,7 +4,7 @@
 # This file is licensed under the GPL v2, or a later version
 # at the discretion of Linus Torvalds.
 
-USAGE='<start> <url> [<end>]'
+USAGE='[-p] <start> <url> [<end>]'
 LONG_USAGE='Summarizes the changes between two commits to the standard output,
 and includes the given URL in the generated summary.'
 SUBDIRECTORY_OK='Yes'
@@ -15,6 +15,16 @@ OPTIONS_SPEC=
 GIT_PAGER=
 export GIT_PAGER
 
+usediff="no"
+if [ $# -eq 4 ]; then
+	if [ $1 = "-p" ]; then
+		usediff="yes"
+		shift
+	else
+		usage
+	fi
+fi
+
 base=$1
 url=$2
 head=${3-HEAD}
@@ -55,4 +65,10 @@ echo
 
 git shortlog ^$baserev $headrev
 git diff -M --stat --summary $merge_base $headrev
+
+if [ "$usediff" = "yes" ]; then
+	echo "---"
+	git diff -M -p $merge_base $headrev
+fi
+
 exit $status

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [RFC] request-pull with diff body itself
  2009-07-27 19:53 [RFC] request-pull with diff body itself Cyrill Gorcunov
@ 2009-07-27 20:46 ` Junio C Hamano
  2009-07-27 20:56   ` Cyrill Gorcunov
  0 siblings, 1 reply; 5+ messages in thread
From: Junio C Hamano @ 2009-07-27 20:46 UTC (permalink / raw)
  To: Cyrill Gorcunov; +Cc: git

Cyrill Gorcunov <gorcunov@gmail.com> writes:

> Here is rfc in a sake of having ability to produce
> diff body in small series of changes in request-pull.
> we could use ">>" here and append diff by hands but
> adding "-p" option seems more comfortable.
>
> Dunno, just a thought.

I think this is a useful thing to add, as I think I've seen some
request-pull actually made with the patch text, most likely by hand.

>  git shortlog ^$baserev $headrev
>  git diff -M --stat --summary $merge_base $headrev
> +
> +if [ "$usediff" = "yes" ]; then
> +	echo "---"
> +	git diff -M -p $merge_base $headrev
> +fi

You can just use a single "git diff" invocation here,

	git diff -M --stat --summary $usediff $merge_base $headrev

and set up "$usediff" to be either empty or -p in the option parsing part.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [RFC] request-pull with diff body itself
  2009-07-27 20:46 ` Junio C Hamano
@ 2009-07-27 20:56   ` Cyrill Gorcunov
  2009-07-27 21:27     ` Junio C Hamano
  0 siblings, 1 reply; 5+ messages in thread
From: Cyrill Gorcunov @ 2009-07-27 20:56 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

On 7/28/09, Junio C Hamano <gitster@pobox.com> wrote:
> Cyrill Gorcunov <gorcunov@gmail.com> writes:
>
>> Here is rfc in a sake of having ability to produce
>> diff body in small series of changes in request-pull.
>> we could use ">>" here and append diff by hands but
>> adding "-p" option seems more comfortable.
>>
>> Dunno, just a thought.
>
> I think this is a useful thing to add, as I think I've seen some
> request-pull actually made with the patch text, most likely by hand.
>
>>  git shortlog ^$baserev $headrev
>>  git diff -M --stat --summary $merge_base $headrev
>> +
>> +if [ "$usediff" = "yes" ]; then
>> +	echo "---"
>> +	git diff -M -p $merge_base $headrev
>> +fi
>
> You can just use a single "git diff" invocation here,
>
> 	git diff -M --stat --summary $usediff $merge_base $headrev
>
> and set up "$usediff" to be either empty or -p in the option parsing part.
>
yeah, indeed, thanks for the hint Junio!
Will post an updated patch in a day or so ( as only get back my laptop
back). Or maybe someone could make it faster then me ;)

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [RFC] request-pull with diff body itself
  2009-07-27 20:56   ` Cyrill Gorcunov
@ 2009-07-27 21:27     ` Junio C Hamano
  2009-07-28  6:00       ` Cyrill Gorcunov
  0 siblings, 1 reply; 5+ messages in thread
From: Junio C Hamano @ 2009-07-27 21:27 UTC (permalink / raw)
  To: Cyrill Gorcunov; +Cc: git

Cyrill Gorcunov <gorcunov@gmail.com> writes:

> Will post an updated patch in a day or so ( as only get back my laptop
> back). Or maybe someone could make it faster then me ;)

Like this, perhaps.

 git-request-pull.sh |   24 ++++++++++++++++++++++--
 1 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/git-request-pull.sh b/git-request-pull.sh
index 5917773..5c1121c 100755
--- a/git-request-pull.sh
+++ b/git-request-pull.sh
@@ -8,13 +8,33 @@ USAGE='<start> <url> [<end>]'
 LONG_USAGE='Summarizes the changes between two commits to the standard output,
 and includes the given URL in the generated summary.'
 SUBDIRECTORY_OK='Yes'
-OPTIONS_SPEC=
+OPTIONS_SPEC='git request-pull [options] start url [end]
+--
+p    show patch text as well
+'
+
 . git-sh-setup
 . git-parse-remote
 
 GIT_PAGER=
 export GIT_PAGER
 
+patch=
+while	case "$#" in 0) break ;; esac
+do
+	case "$1" in
+	-p)
+		patch=-p ;;
+	--)
+		shift; break ;;
+	-*)
+		usage ;;
+	*)
+		break ;;
+	esac
+	shift
+done
+
 base=$1
 url=$2
 head=${3-HEAD}
@@ -54,5 +74,5 @@ echo "  $url $branch"
 echo
 
 git shortlog ^$baserev $headrev
-git diff -M --stat --summary $merge_base $headrev
+git diff -M --stat --summary $patch $merge_base..$headrev
 exit $status

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [RFC] request-pull with diff body itself
  2009-07-27 21:27     ` Junio C Hamano
@ 2009-07-28  6:00       ` Cyrill Gorcunov
  0 siblings, 0 replies; 5+ messages in thread
From: Cyrill Gorcunov @ 2009-07-28  6:00 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

[Junio C Hamano - Mon, Jul 27, 2009 at 02:27:47PM -0700]
| Cyrill Gorcunov <gorcunov@gmail.com> writes:
| 
| > Will post an updated patch in a day or so ( as only get back my laptop
| > back). Or maybe someone could make it faster then me ;)
| 
| Like this, perhaps.
|
...

Yes, Junio, thanks! Please merge it into git repo
(if noone objects).

	-- Cyrill

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-07-28  6:00 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-07-27 19:53 [RFC] request-pull with diff body itself Cyrill Gorcunov
2009-07-27 20:46 ` Junio C Hamano
2009-07-27 20:56   ` Cyrill Gorcunov
2009-07-27 21:27     ` Junio C Hamano
2009-07-28  6:00       ` Cyrill Gorcunov

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).