Narzędzia

Tip dnia – jak dać się zabić w gicie.

Git wspaniały jest i basta. Umożliwia kontrolę nad wszystkim ([…] one to rule them all […]). Oczywiście tylko z konsoli. To co potrafi git z poziomu Visual Studio to podczas bisectowania czy rebaseowania to powiedzieć, aby czynność dokończyć w konsoli. Trochę lepiej, a może nawet znacznie lepiej jest z Tortoise git. Tam możliwości są o wiele większe. Nadal jednak konsola to jest to czego chcesz używać do pracy z git. A najlepiej jeśli jesteś na Windowsie używać czegoś takiego.

No ale git jest potężny, a ….

1305727191_by_mepps_600

Więc dziś o 2 komendach które mogą ob**ać Ci życie.

Na początek coś co wydaje się być bardzo przydatne. Załóżmy, że chcieliśmy dużo, ale porototypowaliśmy, nasi koledzy też prototypowali, wszystko lądowało na serwerze, dużo konfliktów… Wiadomo jak się to kończy:

Wspaniała sprawa, odtąd serwer ma to samo co my. Super! Jaki jest haczyk? Są 2:

  1. Ciężko to cofnąć;
  2. Ponieważ nie podano gałęzi do której jest push, podmienią się wszystkie zmieniane!!!

I dokładnie na ten punkt drugi zwróciłbym szczególną uwagę 🙂 Kolega dziś się przekonał, że warto czytać 2 razy co się wpisało zanim klepnie się Enter.

W konsekwencji powyższych prototypowań, zabaw, działań powstało wiele gałęzi. Później te gałęzie zostały usunięte, ale ponieważ robiłem:

mam to wszystko ściągnięte lokalnie. Jak podglądam listę gałęzi:

to w zdalnych mam długą listę. Chciałbym się jej pozbyć, w końcu nie ma już tych gałęzi w użyciu. Nic prostszego:

Po wykonaniu tej komendy wszystkie gałęzie których nie ma na serwerze znikną i u nas. Super! Ale po co jest:

Polecam sprawdzić, świetna sprawa tuż przed weekendem! Normalnie rewelka, nie będziecie się w weekend nudzić 🙂 Zwłaszcza jeśli Wasz git to tak naprawdę TFS, do którego nie macie dostępu, bo dostęp mają, ze względu ogólnie pojętego “dobra i bezpieczeństwa” 2 osoby w tym szef i jakiś nieznany Ci koleś z zewnętrznej firmy 🙂

 

Potęga gita pojawia się wtedy, gdy okazuje się, że kolega, który ostatni wrzucił zmiany przed zrobieniem tego błędu po prostu robi:

i nagle wszystko wraca do normy. Siła zdecentralizowanego Source Control!

 

Uwaga dla ludzi lubiących VS – M$ uznał, że dla Was nie jest to bezpieczne (pewnie słusznie), tak jak 1000 innych rzeczy, które potrafi git. Więc nie martwcie się, jak nagle rozwalone jest drzewo, jak znikają commity. To na pewno nie Wy! Po prostu zawołajcie Dev Opsa.

1 thought on “Tip dnia – jak dać się zabić w gicie.

  1. Pingback: dotnetomaniak.pl

Leave a Reply

Your email address will not be published. Required fields are marked *