* [PATCH] request-pull: short sha handling, manual update
@ 2015-06-02 14:14 Petr Stodulka
2015-06-18 17:20 ` Petr Stodulka
0 siblings, 1 reply; 2+ messages in thread
From: Petr Stodulka @ 2015-06-02 14:14 UTC (permalink / raw)
To: git
request-pull prints incorrectly warn messages about not found commits
and man pages don't say
anything about todays changed behaviour. People are confused and try
look for errors at wrong places.
At least these should be fixed/modified.
Warn massage says that commit can't be found ar remote, however there it
is in and is missing on local repository
in 'many' cases. So I don't know if better solution is check, where
commit is truly missing or transform warning message.
Something like:
warn: No match for commit <commit> found at <url> or local repository.
warn: Are you sure you have synchronized branch with remote repository?
......
man page could be changed like this:
-------------------------------------------------------
diff --git a/Documentation/git-request-pull.txt
b/Documentation/git-request-pull.txt
index 283577b..6d34fc7 100644
--- a/Documentation/git-request-pull.txt
+++ b/Documentation/git-request-pull.txt
@@ -73,6 +73,17 @@ then you can ask that to be pulled with
git request-pull v1.0 https://git.ko.xz/project master:for-linus
+NOTES
+-----
+
+Since git version 2.0.0 is behaviour of git request-pull little different.
+It is recommended use of third argument for each request-pull, otherwise
+you can get error message like:
+
+ warn: No match for commit <commit> found at <url>
+ warn: Are you sure you pushed 'HEAD' there?
+
+
GIT
---
Part of the linkgit:git[1] suite
-------------------------------------------------------
Second patch provides right processing of third parameter when short
version of sha hash is used (e.g. 897a111). Now is
supported only full hash, what is different behaviour against first
parameter or what can be found in other functions. Extra
solves one of cases of wrong warn message.
-------------------------------------------------------
diff --git a/git-request-pull.sh b/git-request-pull.sh
index d5500fd..2dc735e 100755
--- a/git-request-pull.sh
+++ b/git-request-pull.sh
@@ -92,9 +92,11 @@ find_matching_ref='
chomp;
my ($sha1, $ref, $deref) = /^(\S+)\s+([^^]+)(\S*)$/;
my ($pattern);
+ my ($pattern2);
next unless ($sha1 eq $headrev);
$pattern="/$head\$";
+ $pattern2="^$head";
if ($ref eq $head) {
$found = $ref;
}
@@ -104,6 +106,9 @@ find_matching_ref='
if ($sha1 eq $head) {
$found = $sha1;
}
+ elsif ($sha1 =~ /$pattern2/ and (length $head) gt 7) {
+ $found = $sha1
+ }
}
if ($found) {
print "$found\n";
-------------------------------------------------------
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] request-pull: short sha handling, manual update
2015-06-02 14:14 [PATCH] request-pull: short sha handling, manual update Petr Stodulka
@ 2015-06-18 17:20 ` Petr Stodulka
0 siblings, 0 replies; 2+ messages in thread
From: Petr Stodulka @ 2015-06-18 17:20 UTC (permalink / raw)
To: git
Hi folks,
can you someone look at it? Or were these troubles mentioned somewhere
earlier and I miss that?
On 2.6.2015 16:14, Petr Stodulka wrote:
> request-pull prints incorrectly warn messages about not found commits
> and man pages don't say
> anything about todays changed behaviour. People are confused and try
> look for errors at wrong places.
> At least these should be fixed/modified.
>
> Warn massage says that commit can't be found ar remote, however there
> it is in and is missing on local repository
> in 'many' cases. So I don't know if better solution is check, where
> commit is truly missing or transform warning message.
> Something like:
>
> warn: No match for commit <commit> found at <url> or local repository.
> warn: Are you sure you have synchronized branch with remote
> repository?
>
> ......
> man page could be changed like this:
>
> -------------------------------------------------------
> diff --git a/Documentation/git-request-pull.txt
> b/Documentation/git-request-pull.txt
> index 283577b..6d34fc7 100644
> --- a/Documentation/git-request-pull.txt
> +++ b/Documentation/git-request-pull.txt
> @@ -73,6 +73,17 @@ then you can ask that to be pulled with
> git request-pull v1.0 https://git.ko.xz/project master:for-linus
>
>
> +NOTES
> +-----
> +
> +Since git version 2.0.0 is behaviour of git request-pull little
> different.
> +It is recommended use of third argument for each request-pull, otherwise
> +you can get error message like:
> +
> + warn: No match for commit <commit> found at <url>
> + warn: Are you sure you pushed 'HEAD' there?
> +
> +
> GIT
> ---
> Part of the linkgit:git[1] suite
>
> -------------------------------------------------------
>
> Second patch provides right processing of third parameter when short
> version of sha hash is used (e.g. 897a111). Now is
> supported only full hash, what is different behaviour against first
> parameter or what can be found in other functions. Extra
> solves one of cases of wrong warn message.
>
> -------------------------------------------------------
> diff --git a/git-request-pull.sh b/git-request-pull.sh
> index d5500fd..2dc735e 100755
> --- a/git-request-pull.sh
> +++ b/git-request-pull.sh
> @@ -92,9 +92,11 @@ find_matching_ref='
> chomp;
> my ($sha1, $ref, $deref) = /^(\S+)\s+([^^]+)(\S*)$/;
> my ($pattern);
> + my ($pattern2);
> next unless ($sha1 eq $headrev);
>
> $pattern="/$head\$";
> + $pattern2="^$head";
> if ($ref eq $head) {
> $found = $ref;
> }
> @@ -104,6 +106,9 @@ find_matching_ref='
> if ($sha1 eq $head) {
> $found = $sha1;
> }
> + elsif ($sha1 =~ /$pattern2/ and (length $head) gt 7) {
> + $found = $sha1
> + }
> }
> if ($found) {
> print "$found\n";
> -------------------------------------------------------
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-06-18 17:20 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-02 14:14 [PATCH] request-pull: short sha handling, manual update Petr Stodulka
2015-06-18 17:20 ` Petr Stodulka
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).