Chcę skonfigurować repozytorium GIT dla strony internetowej. Wielu użytkowników będzie miało klon repozytorium na swoim komputerze lokalnym i pod koniec każdego dnia wypychają swoją pracę na serwer. Mogę skonfigurować nagie repozytorium, ale chcę działające repozytorium dir / non-bare.
Chodzi o to, że katalog roboczy repozytorium będzie folderem głównym witryny. Pod koniec każdego dnia wszystkie zmiany będą widoczne bezpośrednio. Ale nie mogę znaleźć sposobu, aby to zrobić.
Zainicjowanie repozytorium serwera za pomocą git init
powoduje następujący błąd, gdy klient próbuje wypchnąć niektóre pliki:
git push origin master
orangetux@xxx.xxx.xxx.xxx's password:
Counting objects: 3, done.
Writing objects: 100% (3/3), 227 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: error: refusing to update checked out branch: refs/heads/master
remote: error: By default, updating the current branch in a non-bare repository
remote: error: is denied, because it will make the index and work tree inconsistent
remote: error: with what you pushed, and will require 'git reset --hard' to match
remote: error: the work tree to HEAD.
remote: error:
remote: error: You can set 'receive.denyCurrentBranch' configuration variable to
remote: error: 'ignore' or 'warn' in the remote repository to allow pushing into
remote: error: its current branch; however, this is not recommended unless you
remote: error: arranged to update its work tree to match what you pushed in some
remote: error: other way.
remote: error:
remote: error: To squelch this message and still keep the default behaviour, set
remote: error: 'receive.denyCurrentBranch' configuration variable to 'refuse'.
To ssh://orangetux@xxx.xxx.xxx.xxx/home/orangetux/www/
! [remote rejected] master -> master (branch is currently checked out)
error: failed to push some refs to 'ssh://orangetux@xxx.xxx.xxx.xxx/home/orangetux/www/'
Zastanawiam się więc, czy to właściwy sposób na skonfigurowanie repozytorium GIT dla strony internetowej? Jeśli tak, jak mam to zrobić? Jeśli nie, to jaki jest lepszy sposób na skonfigurowanie repozytorium GIT do opracowania strony internetowej?
Widziałem, że nie możesz naciskać na repozytorium typu non-bare , ale jak to rozwiązuje mój problem? Utworzyć puste repozytorium na serwerze i mieć klon tego repozytorium na tym samym serwerze w folderze htdocs? To wydaje mi się trochę niezdarne. Aby zobaczyć wynik zatwierdzenia, muszę za każdym razem klonować repozytorium.