Kullandığınız zaman git pull
(buna eşdeğerdir git fetch; git merge
), git sahibi değiştirmeden dosyaları güncelleştirir (git bu bilgileri depolamaz). Ancak oluşturulacak yeni dosyalar varsa, geçerli kullanıcı sahip olarak ayarlanır.
Bunu çözmek için farklı çözümler var. Daha kolay, muhtemelen birleştirme / çekme işleminden sonra otomatik olarak post-update
çağrılacak bir kanca ( .git/hooks
dizininizde) eklemektir ( örnek için bu SO çözümüne bakın ).chown john:john . -R
Alternatif çözümler:
git pull
Kök yerine john kullanıcısı olarak çalıştırın (bu, .git dizini için john'a yazma izni gerektirir).
- Konuşmayı yapmak için john'u kullanıcı olarak kullanacak bir kanca oluşturun, ya güncellemeden sonra chown yapın (böylece çıplak repo kancasının
git pull
içinde yapmak zorunda kalacaksınız post-receive
).
john
geçerli dizinin sahibi?