Опитвам се да настроя вътрешен git сървър, използвайки моя работен плот на OS X (най-вече като тестов случай). Всичко работи, когато са включени SSH ключове, но в момента се опитвам да използвам git-daemon за клониране само за четене. Ако стартирам git-daemon в терминал:
sudo -u git git-daemon --basepath=/Users/git/repos/ --export-all
тогава всичко работи добре, напр.
git clone git://localhost/My_Project.git
Но когато се опитам да настроя това с launchd, той отказва всички заявки. Използвам този plist файл:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>git</string>
<key>UserName</key>
<string>git</string>
<key>OnDemand</key>
<false/>
<key>ProgramArguments</key>
<array>
<string>/path/to/git-daemon</string>
<string>--base-path=/Users/git/repos/</string>
<string>--export-all</string>
</array>
</dict>
</plist>
И получавам следната грешка, ако се опитам да клонирам My_Project:
Cloning into My_Project...
fatal: The remote end hung up unexpectedly
Разочароващото е, че вярвам, че това работеше, така че проблемът може да е по-малко свързан с моя plist файл или използването на launchd, а повече с мрежовите настройки, които може да са променени. Всеки съвет ще бъде много оценен.
Извинения, ако това е по-скоро въпрос на системен администратор, но реших, че разработчиците може да имат известен опит тук.
Актуализация: Конзолата съобщава за следната грешка, ако репото съществува:
git[431]
error: cannot run upload-pack: No such file or directory