Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

gitweb and gitolite cannot add new repo

Tags:

git

gitolite

I installed gitolite first, and added some user and some repos, everything was fine. I then added gitweb, and could see repos through apache instance (just gitweb, no gitdaemon). The problem now comes in that I cannot add new repositories any more. Every time I pushed a change of gitolite-admin conf file, there were always 2 lines shown up in the log

remote: FATAL: git config 'gitweb.description' not allowed
remote: check GIT_CONFIG_KEYS in the rc file

Despite these 2 annoying lines, the conf file is indeed changed every time. I tried to stop apache instance, but still no luck :-(

I googled and cannot find any similar match to discuss this issue. Anyone can help? Thanks a lot!

like image 263
Sheng Avatar asked Oct 20 '25 10:10

Sheng


1 Answers

The Gitolite g2-g3 migration page mentions:

Now go to your old clone, and push it:

$ cd old.ga
$ gitolite push -f
    ...usual git progress output deleted...
remote: FATAL: git config foo.bar not allowed
remote: check GIT_CONFIG_KEYS in the rc file
To /home/git/repositories/gitolite-admin.git
 + 7eb8163...1474770 master -> master (forced update)

Aaha! I forgot to set GIT_CONFIG_KEYS (new name for GL_GITCONFIG_KEYS) in the new rc file so fix that:

$ vim ~/.gitolite.rc
(edit and set it to `.*` for now)

Make sure your .gitolite.rc does contain:

GIT_CONFIG_KEYS             =>  '.*',

(It was also mentioned in this GitLab issue, even though it wasn't the direct root cause of the issue)


I got another issue which is my projects.list file does not get updated automatically when I added a new repository to gitolite-admin conf.
For gitweb, I had to manually edited that file. Did you know what could possibly cause that?

The "interfacing with external tools" page mentions:

The list of gitweb-readable repos is written to a file whose name is given by the rc file variable GITWEB_PROJECTS_LIST.
The default value of this variable, if it is not specified or empty, is $HOME/projects.list.

Make sure you have in your .gitolite.rc:

GITWEB_PROJECTS_LIST        => '/path/to/projects.list',
like image 159
VonC Avatar answered Oct 22 '25 23:10

VonC



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!