Czy muszę ponownie nacisnąć hak pre-commit?
To może obsłużyć wiele rzeczy, ale zapobieganie modyfikacjom plików jest główną siłą napędową. Można kontrolować zachowanie popełnić poprzez plik sterowania:
[ FILE The repository is now locked and you are no longer allowed to change files]
Match = .*
access = read-only
users = @ALL
[ File Except for me. I can do whatever I want]
match = .*
access = read-write
users = si
Plik kontrola mogą żyć wewnątrz repozytorium, więc nie potrzebują dostępu do serwera. Po prostu sprawdź plik kontrolny, edytuj go i zatwierdz. (I, oczywiście, skrypt przed zatwierdzeniem kontroluje dostęp do tego, kto może modyfikować plik kontrolny!)
Prawdopodobnie chcesz użyć gałęzi do wydania. Używamy Jenkinsa i robimy wszystko za pomocą numeru kompilacji Jenkinsa. Programiści powiedzą "Chcę utworzyć rozgałęzienie nr 50, a to się rozgałęzi" lub "Oznaczmy tagiem buduj # 51", a to zostanie otagowane.
Rozgałęziamy się, gdy prawdopodobnie chcesz zablokować swoje repozytorium. Jednak niech programiści nadal na pniu, a następnie określić, kto może pracować na oddziale:
[group cm]
users = si
[group Release]
users = bob, alice
[group developers]
users = robert fred cindy @Release
[file You do not have access to make changes to this repository]
match = .*
access = read-only
users = @all
[file Let all developers work on the trunk]
file = /trunk/**
access = read-write
users = @developers
[file only release group can work on the 4.5 branch]
file = /branches/4.5/**
access = read-write
users = @release
[file You cannot edit a tag. You can only create a tag]
file = /tags/*/
access = add-only
Users = all
[file CM group can do anything]
file = .*
access = read-write
users = @CM
Uprawnienia są odczytywane w dół, a ostatni pozwolenie, które stosuje się do was jest jeden dostać. Programiści mogą uzyskać dostęp do łącza. Użytkownicy wersji mogą pracować w gałęzi 4.5, ale nie w innych gałęziach. Specjalny dostęp add-only
umożliwia utworzenie tagu, ale nie modyfikowanie tagu. /tags/*/
oznacza, że możesz tworzyć tagi bezpośrednio pod folderem znaczników i musi to być katalog skopiowany z innej lokalizacji.
Nie można utworzyć nowego oddziału dla kompilacji wydania. I czy wszystkie budynki itp. Znajdują się w tym nowym oddziale, nad którym nikt inny nie pracuje? – Martin