eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingProgramy do kontroli wersji - zalety i wady.Re: Programy do kontroli wersji - zalety i wady.
  • Data: 2012-12-02 18:36:53
    Temat: Re: Programy do kontroli wersji - zalety i wady.
    Od: e...@g...com szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu niedziela, 2 grudnia 2012 18:02:24 UTC+1 użytkownik Sebastian Biały napisał:
    > On 2012-12-02 17:35, e...@g...com wrote:
    > >>> Powiedzmy, ze rozwijasz dwie funkcjonalnosci w danym kodzie, i robisz
    > >>> poprawki.
    > >>> W git robi sie do tego 3 branche, lokalnie.
    > >> W svn robi się do tego 2 branche w repo.
    > > Pod warunkiem, ze masz polaczenie do serwera, git tego nie wymaga.

    > To było założenie podane 2 posty wcześniej.

    Mam laptopa i czasami nie mam neta i nie musze miec - a moge robic
    dokladnie te same operacje, co w svn przy polaczeniu.

    > > Po drugie,
    > > nie pamietam jak to jest w svn jak sie pomylisz (np. wybranchujesz ni
    > > z tego commita). Da sie to cofnac?

    > W svn wszystko da się cofnąć. Ale od razu kasować? Wybranchowanie nie
    > zajmuje *nic* w repo.

    Oprocz tego, ze zostaje widoczny branch (wiesz, to pbyla pomylka i
    tak zostalo).

    > >> svn commit, svn switch na trunk, svn merge i svn switch na drugą
    > >> Prywanie mam dodatkowy katalog z trunkiem do błyskawicznych merge, al
    > >> to niekonieczne, switche trwają sekundy.
    > > Ja wole robic commit, ktory jest jakos kompletny.

    > Ja również utrzymuje commit w stanie przynajmniej kompilująctym się. Ale
    > ... prawdę mówić to pracuje jeszcze inaczej: mam tyle katalogów na dysku
    > ile otwartych branchy. Czas przełączenia się wynosi więc 0, a bywa że
    > mam otwartych kilka środowisk na róznych branchach.

    No ale widzisz, w svn robisz zmiany, potem kompilujesz i wypada puscic testy
    i dopiero commit. W git juz jak sie kompiluje sprawdzam cale zmiany
    i robie commit. Jak sie nie skompiluje lub nie dziala, poprawiam juz
    zrobiony commit ("--amend") - nikt nigdy nie zobaczy schrzanionego commita.
    Z SVN byl to odwieczny problem, przy 100 deweloperach czesto zdarzaly
    sie nie udane buildy, bo ktos sie pomylil.

    Takich drobnych roznic jest masa.

    > >> Po co? Czego się wstydzić? Kodu czy bałaganu w branchach?
    > > Nie bardzo rozumiem. Kod zostaje, jest zmergowany. A o jakim balaganie
    > > mowa to nie wiem.

    > "Kazik, pamiętasz może tego Wojtka co pracował w zeszłym roku? On coś
    > robił na branchu, ale nie dał rady. Weź i zerknij do czego to się
    > nadaje. Tu masz brancha".

    > Czasem kod *NIE* zostaje zmergowany. Czasem pośrednie commity (np.
    > odrzucone rozwiązanie) warto ponownie obejrzeć po miesiącu. Ogólnie nie
    > potrafie zrozumieć potrzeby usuwania branchy z repo, choć z tą
    > przypadłością ciągle się spotykam w róznych grupach. Przy czym czesto
    > wyjasnieniem jest aby nie zajmowały miejsca (svn) :)

    No ale git nie pozwoli ci usunac takiego brancha - na tym polega cale
    bezpieczenstwo, jezeli zmiany z brancha sa tylko na branchu, git wymaga
    opcji, ktora mowi "tak, chce sie bezpowrotnie pozbyc tych zmian".

    Usuwa sie branche, ktore sa juz zmergowane zupelnie w innym celu. W
    przeciwienstwie do svn zostaje pelna historia commitow z brancha - daty,
    autorzy, opisy itd. . Taki usuwany branch staje sie historia tylko jako
    branch, ktory juz nie bedzie rozwijany, bo wszystko zostalo zrobione
    - pelna informacja na temat historii zawsze zostaje.

    Branche sie robi w git czesto nie po to, zeby mialy miec dlugie zycie,
    sa inne mozliwosci i przez to inne praktyki. Nie ma wiekszego sensu
    stosowanie do oceny tego zwyczajow z svn.

    > >> Nie naciskam, ale scenariusz który przedstawiasz jeszcze bardziej
    > >> nastawia mnie "anty" do lokalnych branchy i filozofii pracy gita. Sa
    > >> cholernie niebezpieczne (gdzie on miał te pliki?) i nic nie dają ponad
    > >> to co daje svn repo (robi się tak samo szybko). W scenaruszu gdy
    > >> pracujesz lokalnie z repo i w dodatku w grupie git nie daje *nic*.
    > > Jak to "gdzie on mial te pliki"? W repo, jak zawsze.

    > Ktorym? Lokalnym? O k...

    A dlaczego niby "o k..."? I tak robie backup. Zmieniam katalog nadysk sieciowy
    i robie przed wyjsciem z pracy "git clone" - robi to w minute kopie 1:1
    wszystkiego co mam lokalnie przy milionach linii kodu i mnostwie wygenerowanych
    plikow, dodatkowo w bezpieczny sposob. Wiec zostaje i laptop i kopia sieciowa,
    nawet gdybym mial odejsc z pracy rzucajac wszystko momentalnie w p..u.

    Z takiegj kopii repo mozna korzystac dokladnie tak samo jak z glownego,
    lokalna czy nie lokalna nic tu zmienia.

    --
    Edek

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: