Çalıştırdıktan sonra buldum locate git-shell-commands
cat /usr/share/doc/git-1.7.4.4/contrib/git-shell-commands/README
Git-shell ile çağrılabilen örnek programlar. 'Git-shell-commands' adında bir dizini, kabuğu git-shell olan bir kullanıcının giriş dizinine yerleştirin. Daha sonra bu kullanıcı olarak giriş yapan herkes 'git-shell-commands' dizininde çalıştırılabilir dosyaları çalıştırabilir.
Verilen komutlar:
yardım: Kullanılabilir komutların adını yazdırır. Etkileşimli olarak çalıştırıldığında, git-shell başlangıçta otomatik olarak 'yardım'ı çalıştıracaktır.
list: Kullanıcının giriş dizini altındaki adı ".git" ile biten herhangi bir çıplak depoyu görüntüler. Git-shell'den klonlanabilmesine rağmen, başka hiçbir git deposu görünmez. 'liste' mevcut depoları bulmak için yapılması gereken çağrı sayısını en aza indirmek için tasarlanmıştır; kurulumunuzda kullanıcı tarafından keşfedilebilmesi gereken ek depolar varsa, 'listeyi' uygun şekilde değiştirmek isteyebilirsiniz.
Bu yüzden aşağıdaki komutları root olarak çalıştırdım:
cp /usr/share/doc/git-1.7.4.4/contrib/git-shell-commands /home/git -R
chown git:developers /home/git/git-shell-commands/ -R
chmod +x /home/git/git-shell-commands/help
chmod +x /home/git/git-shell-commands/list
exit
Daha sonra aşağıdakileri git
kullanıcı olarak çalıştırabildim :
[me@svn ~]$ su git
Password:
Run 'help' for help, or 'exit' to leave. Available commands:
list
git> help
Run 'help' for help, or 'exit' to leave. Available commands:
list
git> list
git> exit
Şimdi ne iyi yardım ve listenin ne olduğunu anlayamadım, ancak giriş yapıldı. :)
git-shell
yalnızca itme / çekme işlevi için kullanılacak sınırlı bir kabuktur (yanigit push
,git fetch
vegit pull
). Etkileşimli olması gerekmediğinden etkileşimli bir kabukta giriş yapmamanız gerekir.git-shell-commands
Kullanıcının evine bir dizin ekleyerek ve içindeki bazı ikilileri birbirine bağlayarak biraz etkileşimli yapabilirsiniz . Fakat çok sınırlıdır (cd
örneğin, ikili bir dosya yoktur ), bu nedenle daha iyi bir alternatif olarak kullanıcıroot
veyasudo
kullanıcı girişi yapıp kullanıcının altındasudo -u git -s
tam birbash
kabuk elde etmektirgit
.