threads / discuss / 17648

[PATCHv3 1/3 (resend)] gitweb: Modularized git_get_project_description to be more generic

Subject: [PATCHv3 1/3 (resend)] gitweb: Modularized git_get_project_description to be more generic

## tl;dr

3 messages between Dec 3, 2008 and Feb 8, 2009.

replies: 2people: 2as markdown or json

Sebastien Cevey· Dec 3, 2008, 23:24 UTC · lore

Introduce a git_get_file_or_project_config utility function to retrieve a repository variable either from a plain text file in the $GIT_DIR or else from 'gitweb.$variable' in the repository config (e.g. 'description').

Signed-off-by: Sebastien Cevey <seb@cine7.net>
---

Sending this patch again. It has been rebased onto 621f1b so it should apply cleanly on the current git master branch.

 gitweb/gitweb.perl |   24 ++++++++++++++++--------
 1 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index f27dbb6..e2550d5 100755
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
@@ -2024,18 +2024,26 @@ sub git_get_path_by_hash {
 ## ......................................................................
 ## git utility functions, directly accessing git repository
 
-sub git_get_project_description {
-	my $path = shift;
+# get the value of a config variable either from a file with the same
+# name in the repository, or the gitweb.$name value in the repository
+# config file.
+sub git_get_file_or_project_config {
+	my ($name, $path) = @_;
 
 	$git_dir = "$projectroot/$path";
-	open my $fd, "$git_dir/description"
-		or return git_get_project_config('description');
-	my $descr = <$fd>;
+	open my $fd, "$git_dir/$name"
+		or return git_get_project_config($name);
+	my $conf = <$fd>;
 	close $fd;
-	if (defined $descr) {
-		chomp $descr;
+	if (defined $conf) {
+		chomp $conf;
 	}
-	return $descr;
+	return $conf;
+}
+
+sub git_get_project_description {
+	my $path = shift;
+	return git_get_file_or_project_config('description', $path);
 }
 
 sub git_get_project_ctags {
-- 
1.5.6.5
Jakub Narebski· Feb 8, 2009, 11:10 UTC · re: Sebastien Cevey · lore

Re: [PATCHv3 1/3 (resend)] gitweb: Modularized git_get_project_description to be more generic

Sebastien Cevey wrote:
[...]
> Sending this patch again. It has been rebased onto 621f1b so it should
> apply cleanly on the current git master branch.
Thanks a lot.

Due to changes to gitweb, while first patch in (earlier version of) series applies cleanly, second patch didn't, and git could not find base to fall back to 3-way merge (because second patch is based on state after first patch, and situation after first patch changed). It is much easier to rebase series if youhave them as commits, and not as series of emails.

-- 
Jakub Narebski
Poland
Jakub Narebski· Feb 8, 2009, 12:34 UTC · lore

Re: [PATCHv3 1/3 (resend)] gitweb: Modularized git_get_project_description to be more generic

Dnia niedziela 8. lutego 2009 12:35, Sébastien Cevey napisał:
Show 12 quoted lines
> At Sun, 8 Feb 2009 12:10:48 +0100, Jakub Narebski wrote:
> 
> > Due to changes to gitweb, while first patch in (earlier version of) 
> > series applies cleanly, second patch didn't, and git could not find
> > base to fall back to 3-way merge (because second patch is based on
> > state after first patch, and situation after first patch changed).
> > It is much easier to rebase series if youhave them as commits, and
> > not as series of emails.
> 
> Sure, I'll make sure of being rebased onto git master HEAD (or should
> I rebase onto another development branch?) next time.  But is this
> resend properly merging and working for you?
They got imported correctly, at least.
Thanks again!
-- 
Jakub Narebski
Poland

← back to recent threads