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

Re: [PATCH] gitweb: show no difference message

From
Jakub Narebski <jnareb@gmail.com>
Date
Mar 26, 2007, 17:11 UTC
Message-ID
<200703261911.54013.jnareb@gmail.com>
In-Reply-To
<11748548622888-git-send-email-mkoegler@auto.tuwien.ac.at>
On Sun, Mar 25, 2007, Martin Koegler wrote:
> Currently, gitweb shows only header and footer, if no differences are
> found. This patch adds a "No differences are found" message for the html
> output.

This is a good idea, as it reduces confusion for first-time gitweb user, who might not know what it means to have an empty diff page.

Currently we have only one place (I think) where gitweb can generate link to "blobdiff", namely "diff to parent" link in "history" view for plain file, when e.g. some change was (explicitely or accidentally) reverted.

Show 29 quoted lines
> diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
> index 5214050..fbadab4 100755
> --- a/gitweb/gitweb.perl
> +++ b/gitweb/gitweb.perl
> @@ -2376,6 +2376,7 @@ sub git_patchset_body {
>  
>  	my $patch_idx = 0;
>  	my $patch_line;
> +	my $empty = 0;
>  	my $diffinfo;
>  	my (%from, %to);
>  
> @@ -2396,6 +2397,7 @@ sub git_patchset_body {
>  		# git diff header
>  		#assert($patch_line =~ m/^diff /) if DEBUG;
>  		#assert($patch_line !~ m!$/$!) if DEBUG; # is chomp-ed
> +		$empty++;
>  		push @diff_header, $patch_line;
>  
>  		# extended diff header
> @@ -2559,6 +2561,8 @@ sub git_patchset_body {
>  		print "</div>\n"; # class="patch"
>  	}
>  
> +	print "<div class=\"diff header\">No differences found</div>\n" if (!$empty);
> +
>  	print "</div>\n"; # class="patchset"
>  }
>  
A few nits.

First, programming style. You named the variable $empty, when it evaluates to true when the patch is _not_ empty, i.e. when some differences are found.

Second, HTML. I'm not so sure if this info belongs to _patchset_, but if git-diff or git-diff-tree returns empty patch output, then we do not generate 'patch' div. So I'm a bit for this solution.

Third, CSS (style). I'm reluctant about using "diff header" for styling "no differences found" div; it is used to style

	diff --git a/filename b/filename

header. I think that it would be better to add a separate CSS class, e.g. "diff notfound", or "diff nochanges", or "diff nodifferences" class for this message.

-- 
Jakub Narebski
Poland
Previous: Jakub NarebskiNext: Jakub Narebski
Message 24 of 28 in “gitweb: show no difference message”
  1. gitweb: show no difference messageMartin Koegler, Mar 25, 2007
  2. gitweb: Support comparing blobs with different namesMartin Koegler, Mar 25, 2007
  3. gitweb: link base commit (hpb) to blobdiff outputMartin Koegler, Mar 25, 2007
  4. gitweb: support filename prefix in git_patchset_bodyMartin Koegler, Mar 25, 2007
  5. gitweb: support filename prefix in git_difftree_bodyMartin Koegler, Mar 25, 2007
  6. gitweb: Add treediffMartin Koegler, Mar 25, 2007
  7. Jakub NarebskiMar 26, 2007
  8. Martin KoeglerMar 26, 2007
  9. Jakub NarebskiMar 27, 2007
  10. Jakub NarebskiMar 26, 2007
  11. Martin KoeglerMar 26, 2007
  12. Jakub NarebskiMar 27, 2007
  13. gitweb: Support comparing blobs (files) with different namesJakub Narebski, Mar 26, 2007
  14. Martin KoeglerMar 26, 2007
  15. Jakub NarebskiMar 27, 2007
  16. Martin KoeglerMar 27, 2007
  17. Jakub NarebskiMar 27, 2007
  18. Martin KoeglerMar 28, 2007
  19. Jakub NarebskiMar 30, 2007
  20. Jakub NarebskiMar 30, 2007
  21. Martin KoeglerMar 31, 2007
  22. Jakub NarebskiMar 31, 2007
  23. gitweb: Fix bug in "blobdiff" view for split (e.g. file to symlink) patchesJakub Narebski, Mar 31, 2007
  24. Jakub NarebskiMar 26, 2007
  25. Jakub NarebskiMar 26, 2007
  26. Jakub NarebskiApr 3, 2007
  27. Jakub NarebskiApr 4, 2007
  28. Junio C HamanoApr 5, 2007

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.