Git: Różnice pomiędzy wersjami

 
(Nie pokazano 13 wersji utworzonych przez 4 użytkowników)
Linia 1: Linia 1:
{{stub}}
 
 
''Git'' to otwarty, rozproszony system kontroli wersji.
 
''Git'' to otwarty, rozproszony system kontroli wersji.
 +
 +
{{Server|repozytorim|repo}}
  
 
=== Panel DevilWeb ===
 
=== Panel DevilWeb ===
<!-- Wersja ze screenami -->
+
 
 +
Po zalogowaniu się do [[DevilWEB|panelu administracyjnego]] zarządzanie repozytoriami znajduje się w zakładce ''Repozytoria''. Po kliknięciu pokazuje się lista repozytoriów. Aby dodać repozytorium należy kliknąć ''+ Dodaj nowe repozytorium'' i wybrać typ oraz widoczność.
 +
 
 +
[[Plik:Repozytorium git.png|1135px]]
  
 
=== Devil ===
 
=== Devil ===
Linia 14: Linia 18:
 
* ''nazwa_repo'' - nazwa repozytorium,
 
* ''nazwa_repo'' - nazwa repozytorium,
 
* ''widocznosc'' - widoczność: pub (publiczna) lub priv (prywatna).
 
* ''widocznosc'' - widoczność: pub (publiczna) lub priv (prywatna).
Repozytorium będzie dostępne pod adresem <code><nowiki>https://repo4.mydevil.net</nowiki>/git/''widocznosc''/login/''nazwa_repo''/</code>. Numer subdomeny repo jest identyczny z numerem serwera ''MyDevil''.
+
Repozytorium będzie dostępne pod adresem <code><nowiki>https://repoX.mydevil.net</nowiki>/git/''widocznosc''/login/''nazwa_repo''/</code>.
Usuwanie repozytorium odbywa się za pomocą polecenia <code>debil repo repository del git ''nazwa_repo widocznosc''</code>.
+
Usuwanie repozytorium odbywa się za pomocą polecenia <code>devil repo repository del git ''nazwa_repo widocznosc''</code>.
 
Aby wyświetlić listę repozytoriów należy użyć polecenia <code>devil repo list</code>.
 
Aby wyświetlić listę repozytoriów należy użyć polecenia <code>devil repo list</code>.
  
 
==== Modyfikacja repozytorium ====
 
==== Modyfikacja repozytorium ====
  
Zmiana widoczności repozytorium odbywa się za pomocą polecenia <code>debil repo repository change git ''nazwa_repo widocznosc''</code>.
+
Zmiana widoczności repozytorium odbywa się za pomocą polecenia <code>devil repo repository change git ''nazwa_repo widocznosc''</code>.
  
 
==== Dodawanie i usuwanie użytkowników ====
 
==== Dodawanie i usuwanie użytkowników ====
Linia 33: Linia 37:
  
 
Zmiana hasła użytkownika odbywa się za pomocą polecenia <code>devil repo account passwd git ''nazwa_repo nazwa_uzytkownika''</code>.
 
Zmiana hasła użytkownika odbywa się za pomocą polecenia <code>devil repo account passwd git ''nazwa_repo nazwa_uzytkownika''</code>.
 +
 +
=== Hooks ===
 +
 +
Aby korzystać z funkcjonalności skryptów hooks należy odblokować [[Binexec|możliwość wykonywania plików z poziomu konta hostingowego]], która jest domyślnie zablokowana.
 +
 +
==== Publikacja strony WWW ====
 +
 +
Mechanizm skryptów hooks można wykorzystać do publikacji serwisów WWW.
 +
 +
* [[Git#Dodawanie_i_usuwanie_repozytorium|Utworzyć repozytorium git.]]
 +
* [[Git#Dodawanie_i_usuwanie_u.C5.BCytkownik.C3.B3w|Utworzyć konto użytkownika repozytorium.]]
 +
* Utworzyć plik hooks/post-receive
 +
<pre>
 +
#!/bin/sh
 +
unset GIT_INDEX_FILE
 +
 +
export DOMAIN=#TU WPISAĆ NAZWĘ DOMENY
 +
export PUBLIC=#TU PODAĆ NAZWĘ KATALOGU ZE STRONĄ, NAZWA ZALEŻY DO TYPU STRONY
 +
export LOGIN=#TU WPISAĆ SWÓJ LOGIN
 +
export VISIBILITY=#pub lub priv
 +
export REPONAME=#TU WPISAĆ NAZWĘ REPOZYTORIUM
 +
 +
export GIT_WORK_TREE="/usr/home/$LOGIN/domains/$DOMAIN/$PUBLIC/"
 +
export GIT_DIR="/usr/home/$LOGIN/repo/git/$VISIBILITY/$REPONAME/"
 +
/usr/local/bin/git checkout -f
 +
</pre>
 +
* Nadać plikowi prawo uruchamiania <code>chmod +x post-receive</code>
 +
* Sklonować lokalnie repozytorium z serwisem www
 +
* Dokonać zmian na plikach.
 +
* Wykonać git commit
 +
* Wypchnąć zmiany do macierzystego repozytorium.
 +
* Wszelkich kolejnych zmian w plikach serwisu WWW bezwzględnie dokonywać tylko i wyłącznie na dokładnie tym sklonowanym lokalnie z serwera mydevil repozytorium - nie bezpośrednio z katalogu domeny - po czym wypychać je na serwer.
 +
 +
=== Zobacz też ===
 +
 +
* [[GitLab]]
 +
* [[Gogs]]
  
 
=== Odnośniki zewnętrzne ===
 
=== Odnośniki zewnętrzne ===
  
[http://git-scm.com/ Git]
+
* [http://git-scm.com/ Git]
  
 
[[Category:Repozytoria]]
 
[[Category:Repozytoria]]

Aktualna wersja na dzień 10:09, 26 sie 2019

Git to otwarty, rozproszony system kontroli wersji.

Panel DevilWeb

Po zalogowaniu się do panelu administracyjnego zarządzanie repozytoriami znajduje się w zakładce Repozytoria. Po kliknięciu pokazuje się lista repozytoriów. Aby dodać repozytorium należy kliknąć + Dodaj nowe repozytorium i wybrać typ oraz widoczność.

Repozytorium git.png

Devil

Konfiguracja repozytorium Git jest również możliwa z shella za pomocą modułu devil repo.

Dodawanie i usuwanie repozytorium

Dodawanie repozytorium odbywa się za pomocą polecenia devil repo repository add git nazwa_repo widocznosc, gdzie argumentami są:

  • nazwa_repo - nazwa repozytorium,
  • widocznosc - widoczność: pub (publiczna) lub priv (prywatna).

Repozytorium będzie dostępne pod adresem https://repoX.mydevil.net/git/widocznosc/login/nazwa_repo/. Usuwanie repozytorium odbywa się za pomocą polecenia devil repo repository del git nazwa_repo widocznosc. Aby wyświetlić listę repozytoriów należy użyć polecenia devil repo list.

Modyfikacja repozytorium

Zmiana widoczności repozytorium odbywa się za pomocą polecenia devil repo repository change git nazwa_repo widocznosc.

Dodawanie i usuwanie użytkowników

Dodawanie kont użytkowników odbywa się za pomocą polecenia devil repo account add git nazwa_repo nazwa_uzytkownika, gdzie argumentami są:

  • nazwa_repo - nazwa repozytorium,
  • nazwa_uzytkownika - login.

Usuwanie konta odbywa się za pomocą polecenia devil repo account del git nazwa_repo nazwa_uzytkownika. Aby wyświetlić listę użytkowników repozytorium należy użyć polecenia devil repo list git nazwa_repo.

Zmiana hasła

Zmiana hasła użytkownika odbywa się za pomocą polecenia devil repo account passwd git nazwa_repo nazwa_uzytkownika.

Hooks

Aby korzystać z funkcjonalności skryptów hooks należy odblokować możliwość wykonywania plików z poziomu konta hostingowego, która jest domyślnie zablokowana.

Publikacja strony WWW

Mechanizm skryptów hooks można wykorzystać do publikacji serwisów WWW.

#!/bin/sh
unset GIT_INDEX_FILE

export DOMAIN=#TU WPISAĆ NAZWĘ DOMENY
export PUBLIC=#TU PODAĆ NAZWĘ KATALOGU ZE STRONĄ, NAZWA ZALEŻY DO TYPU STRONY
export LOGIN=#TU WPISAĆ SWÓJ LOGIN
export VISIBILITY=#pub lub priv
export REPONAME=#TU WPISAĆ NAZWĘ REPOZYTORIUM

export GIT_WORK_TREE="/usr/home/$LOGIN/domains/$DOMAIN/$PUBLIC/"
export GIT_DIR="/usr/home/$LOGIN/repo/git/$VISIBILITY/$REPONAME/"
/usr/local/bin/git checkout -f
  • Nadać plikowi prawo uruchamiania chmod +x post-receive
  • Sklonować lokalnie repozytorium z serwisem www
  • Dokonać zmian na plikach.
  • Wykonać git commit
  • Wypchnąć zmiany do macierzystego repozytorium.
  • Wszelkich kolejnych zmian w plikach serwisu WWW bezwzględnie dokonywać tylko i wyłącznie na dokładnie tym sklonowanym lokalnie z serwera mydevil repozytorium - nie bezpośrednio z katalogu domeny - po czym wypychać je na serwer.

Zobacz też

Odnośniki zewnętrzne