2015-05-16 5 views
0

[Я нашел решение и описать его в моем ответе]Git репозиторий свернул только для чтения после gitolite миграции

Я мигрировал мой gitolite сервера некоторое время назад и модернизированным от gitolite 2 до 3 gitolite в то же время. я просто понял, что в то время как все хранилища работают для извлечения данных, при попытке нажать на одну из хранилищ, я следующее сообщение об ошибке:

remote: Use of uninitialized value in do "file" at hooks/update line 36. 
remote: Null filename used at hooks/update line 36. 
remote: error: hook declined to update refs/heads/candidates/my-branch 

Я знаю, что эта ошибка обычно означает, что есть ключ SSH или прав, но мой файл gitolite.conf довольно прост и ключ ssh тот же, что работает с другими репозиториями и работает для извлечения с этого сервера.

Когда я пытаюсь непосредственно SSH сервера с моим ключом SSH, появятся следующее сообщение:

PTY allocation request failed on channel 0 
hello Fred, this is [email protected] running gitolite3 v3.6.2-26-gf9c0008 on git 1.9.1 

R W repo1 
R W repo2 
R W gitolite-admin 
Connection to my-server closed. 

repo1 это один не работает, в то время как repo2 и gitolite-админ оба хорошо работают.

Я не знаю, где я должен смотреть дальше, чтобы отладить это.

update: Я не знаю, может ли это быть связано, но я заметил, что проблемный каталог репозитория на моем сервере имеет другие права, чем другие (766, а остальные - 700). Я изменил его без каких-либо результатов, но, возможно, это может быть намек на что-то еще?

update 2: Кроме того, этот проблемный репозиторий был создан перед другими. Могут ли репозитории, созданные со старыми версиями git, иметь проблему совместимости?

ответ

1

Мне удалось решить мою проблему.

Я заметил, что все рабочие репозитории были их ГОЛОВЫ файл, каталог филиалов и т.д. в repo.git/., в то время как malfunctionning репо были все те, в repo.git/.git/. Так что я сделал следующее:

cd ${GITOLITE_HOME}/repositories/repo.git 
mv .git/* . 
rm -rf .git 
gitolite setup 

и он начал работать.

+0

Если вы решили проблему, отметьте свой собственный ответ в качестве решения. –

+0

@NickVolynkin Я только что сделал сейчас. По какой-то причине есть 24-часовой момент, когда вы не можете отметить свой собственный ответ в качестве решения, поэтому я сделал это только сегодня. –

+0

О, не знал этого. Спасибо за ваши усилия. –