Gitolite push error

I have problem with my git, when I push my changes, git sends me this error:

git FATAL: split conf set, gl-conf not present for "name of repository"

What Can I do? Or how can I caused this problem?
Thanks for your help.

  • Moving from SVN to GitHub
  • How do I import a new release of a project into my git repository?
  • SSH Public key denied on “git clone” command
  • Git and IntelliJ lines separator issue
  • How can I access the history of a file which was deleted then restored in git?
  • Does Git have positive effect to Continuous Delivery (Integration) in the SCM view?
  • Meph

  • Have GitHub Pages render gh-pages branch rather than Jekyll content on master branch
  • Gerrit error while pushing commit with egit
  • Fixing published branch with wrong parent branch
  • What does git add --intent-to-add or -N do and when should it be used?
  • Git with curlftpfs
  • git version control files on repositories without pushing/pulling
  • 3 Solutions collect form web for “Gitolite push error”

    How did you create the remote repository? If you manually create a bare clone of your repository and moved it to the repository folder of Gitolite there are a couple of things which need to be setup manually:

    1. Change the owner to the Gitolite user, e.g. chown -R git:users
    2. Change the permissions for folders and files, e.g. chmod -R 755 myproject.git
    3. Check if there is gl-conf in the project.git/ folder. If not copy one from another working Gitolite project. Normally it gets setup automatically when you use gitolite-admin to configure a new project. Here is what the file looks like.
    # gl-conf
    %one_repo = (
      'myproject' => {
        'meph' => [

    It seems that the file gl-conf is missing. You can create it on your own (see answer by JDD) or more simple just run the following command – gitolite will take care of the rest:

    gitolite setup

    The problem can be caused if you migrate a bare repository to gitolite. A gl-conf file is needed by gitolite to store the “compiled” configuration only for the specific repository. The data is taken from gitolite-admin/conf/gitolite.conf (the repository, where you put the access configuration to the repositories in).

    That error message comes from src/lib/Gitolite/Conf/

     if ( -f "gl-conf" ) {
        return if not $split_conf{$repo};
        my $cc = "./gl-conf";
        _die "parse '$cc' failed: " . ( $! or $@ ) unless do $cc;
        $last_repo = $repo;
        $repos{$repo} = $one_repo{$repo};
        $configs{$repo} = $one_config{$repo} if $one_config{$repo};
    } else {
        _die "split conf set, gl-conf not present for '$repo'" if $split_conf{$repo};

    So it it expected a local gitolite config in your bare repo, as if it were a “big-config” from gitolite g2.
    Check if you still have a $GL_BIG_CONFIG = 1; in the ~/.gitolite.rc, while being now in gitolite g3.

    Git Baby is a git and github fan, let's start git clone.