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

3 messages from 2008-12-03 to 2009-02-08. Participants: Sebastien Cevey, Jakub Narebski.
Thread: https://gitlist.dev/t/17648

## Sebastien Cevey, 2008-12-03 23:24

Subject: [PATCHv3 1/3 (resend)] gitweb: Modularized git_get_project_description to be more generic
Message-ID: <87zlgxp595.wl%seb@cine7.net>
URL: https://gitlist.dev/e/87zlgxp595.wl%25seb%40cine7.net

```
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, 2009-02-08 11:10

Subject: Re: [PATCHv3 1/3 (resend)] gitweb: Modularized git_get_project_description to be more generic
Message-ID: <200902081210.49328.jnareb@gmail.com>
URL: https://gitlist.dev/e/200902081210.49328.jnareb%40gmail.com
In-Reply-To: <87zlgxp595.wl%seb@cine7.net>

```
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, 2009-02-08 12:34

Subject: Re: [PATCHv3 1/3 (resend)] gitweb: Modularized git_get_project_description to be more generic
Message-ID: <200902081334.42780.jnareb@gmail.com>
URL: https://gitlist.dev/e/200902081334.42780.jnareb%40gmail.com
In-Reply-To: <87tz75p3ej.wl%seb@cine7.net>

```
Dnia niedziela 8. lutego 2009 12:35, Sébastien Cevey napisał:
> 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

```
