Blokowanie zmian w wybranych folderach

0

Dzień dobry,
Mam gałąź Master która zawiera foldery:A,B,C.
Teraz tworzę nową gałąź o nazwie Projekt, która zawiera to co Master.
Jak zrobić coś takiego że pracuje sobie w gałęzi Projekt i chcę mieć możliwość dokonywania zmian (commitowania) wyłącznie w folderze B?
Chcę zabezpieczyć się przed przypadkowymi zmianami w folderach A i C.
Pozdrawiam,
Łukasz

4

Można by użyć git hooks:
https://stackoverflow.com/questions/58521962/git-hook-to-block-changes-on-certain-folders
(chociaż jak tak patrzę, ten skrypt z SO trzeba by jakoś przerobić, żeby patrzył po nazwie ruszanych folderów i sprawdzał aktualną gałąź)

Chcę zabezpieczyć się przed przypadkowymi zmianami w folderach A i C.

BTW zmiany, które commitujesz do Gita i tak powinieneś przejrzeć przed commitem (albo i po commicie, ale zanim to zmerdżujesz dalej). Bo co to znaczy "przypadkowe zmiany w folderach A i C?" takie zmiany zwykle powinny być wykryte i po to się używa Gita, żeby łatwo było wykryć. I warto commitować małe zmiany, bo niestety jak się commituje zbyt duże commity ruszające zbyt dużo plików, to łatwo coś przeoczyć.

1

Można też dorzucić pliki .gitignore do obu folderów - tylko wtedy zmiana będzie limitować inne osoby korzystające z tego repo.

4

Teoretycznie można by kombinować w git submodules i jakoś rozsądnie podzielić projekt, ale jak użytkownicy robią "przypadkowe commit-y" to raczej nie pomoże a tylko jeszcze bardziej zaszkodzi :D Wspominam bo a nuż widelec OP tego potrzebuje, a jeszcze nie wie o istnieniu tej opcji

Wiec tutaj zaczął bym od krótkiego kursu obsługi GIT-a

1
virusek391 napisał(a):

Dzień dobry,
Mam gałąź Master która zawiera foldery:A,B,C.
Teraz tworzę nową gałąź o nazwie Projekt, która zawiera to co Master.
Jak zrobić coś takiego że pracuje sobie w gałęzi Projekt i chcę mieć możliwość dokonywania zmian (commitowania) wyłącznie w folderze B?
Chcę zabezpieczyć się przed przypadkowymi zmianami w folderach A i C.

Najlepszy sposób żeby zabezpieczyć się przed przypadkowymi zmianami w git, jest nauczyć się gita lepiej.

Innym wyjściem, byłoby po prostu zrobienie z nich osobnych repozytoriów.

4

Dorzucę jeszcze kilka pojęć. Code review, pull/merge requesty. Konfiguracja narzędzia do gita, tak aby przed zmergowaniem był wymagany przynajmniej jeden approve

1 użytkowników online, w tym zalogowanych: 0, gości: 1