2013-03-26 1 views
8

내가 내 변화를 누를 때, 자식은 나에게이 오류 전송, 내 자식과 함께 문제가 :Gitolite 푸시 오류

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

내가 무엇을 할 수 있습니까? 또는 어떻게이 문제를 일으킬 수 있습니까? 도움 주셔서 감사합니다.

Meph

+0

최근에 gitolite 3으로 수분을 공급 했습니까? – Tuxdude

+0

아니요, 나는 처음으로 gitolite를 설치했습니다. –

답변

1

그 오류 메시지가 src/lib/Gitolite/Conf/Load.pm에서 온다 :

if (-f "gl-conf") { 
    return if not $split_conf{$repo}; 

    my $cc = "./gl-conf"; 
    _die "parse '$cc' failed: " . ($! or [email protected]) 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}; 
} 

을가 gitolite G2에서 "big-config" 인 것처럼 그래서 그것은 당신의 맨발의 repo에서 로컬 gitolite의 설정을 예상했다.
$GL_BIG_CONFIG = 1;~/.gitolite.rc에 아직 있는지, 현재 gitolite g3에있는 동안 확인하십시오.

+0

안녕하세요, gitolite.rc에 $ GL_BIG_CONFIG이 없으므로 추가했지만 일어날 일은 없습니다. –

+0

@ Meph- 당신은 gitolite v2 또는 v3를 사용하고 있습니까? – VonC

+0

그것은 버전 3입니다. –

2

어떻게 원격 저장소를 만들었습니까?

  1. 변경 Gitolite 사용자에게 소유자, 예를 들면 : 수동으로 저장소의 베어 클론을 생성하고 Gitolite의 저장소 폴더로 이동 한 경우 수동으로 설치해야 몇 가지가 있습니다 chown -R git:users
  2. 폴더 및 파일에 대한 권한을 변경하십시오. chmod -R 755 myproject.git
  3. project.git/ 폴더에 gl-conf이 있는지 확인하십시오. 그렇지 않다면 다른 작업중인 Gitolite 프로젝트에서 복사하십시오. 일반적으로 gitolite-admin을 사용하여 새 프로젝트를 구성하면 자동으로 설정됩니다. 다음은 파일의 모양입니다.
# gl-conf 
%one_repo = (
    'myproject' => { 
    'meph' => [ 
     [ 
     4, 
     'RW+', 
     'refs/.*' 
     ] 
    ] 
    } 
); 
2

파일 gl-conf이없는 것 같다. 당신은 다음 명령을 실행하여 자신의 (JDD 의해 답변을 참조) 이상의 간단한에 그것을 만들 수 있습니다 - gitolite가 알아서합니다

당신은 gitolite하는 베어 저장소를 마이그레이션 할 경우 문제가 발생할 수 있습니다

gitolite setup 
. gl-conf 파일은 gitolite가 특정 저장소에만 "컴파일 된"구성을 저장하는 데 필요합니다. 데이터는 gitolite-admin/conf/gitolite.conf (리포지토리에 액세스 구성을 저장 한 리포지토리)에서 가져옵니다.