Korzystanie z Git w środowisku Enterprise [zamknięte]

24

Git to doskonały system kontroli wersji. Jeśli wykluczymy fakt, że nie ma doskonałej obsługi GUI, jest naprawdę dobry i szybki. Ale kontrola źródła, taka jak Clearcase, ma duże wsparcie dla klientów korporacyjnych. Firmy inwestują ogromne kwoty w serwery kontroli źródła i licesense.

Ostatnio większość dużych firm, takich jak Google, przejmuje Git w stosunku do innego systemu kontroli wersji. Ale ta firma ma silną grupę open source, która konsekwentnie zapewnia rozwój i wsparcie dla tego narzędzia (mogą nawet mieć własną wersję Git). Jednocześnie duże firmy tak naprawdę nie przejmują się wdrażaniem projektów typu open source i dostosowywaniem ich do nich.

  • Czy Git jest naprawdę niezawodnym narzędziem dla środowiska korporacyjnego, szczególnie na platformie Windows?
  • Wsparcie jest kwestionowane dla Git, ponieważ jest to produkt typu open source.
  • Czy jest jakaś firma, która zapewnia rozwiązania i wsparcie? Jakie są koszty serwera w porównaniu z innymi kontrolami wersji, takimi jak Clear-case?
sarat
źródło
2
Nie wiem, czy Google przyjęło git, rozumiem, że wybrali Mercurial. I będziesz musiał mnie przekonać także o innych dużych firmach - masz jakieś przykłady?
Benjol,
4
Ma doskonałą obsługę GUI. Po prostu wybierz dobry system operacyjny.
2
@Benjol - ten wątek może dać ci pewne spostrzeżenia. quora.com/…
sarat
1
@sarat, wiem, że Twitter jest wart dużo pieniędzy, ale nie zaklasyfikowałbym go jako dużego ani korporacyjnego. // Nie wiedziałem, że code.google.comobsługuje git, to są bardzo nowe wiadomości i nie jestem pewien, czy można nazwać go gitem w porównaniu z innymi kontrolami wersji. [Pierwotnie] ( code.google.com/p/support/wiki/DVCSAnalysis) , wyraźnie zdecydowali się na Mercurial
zamiast
@Benjol Ogólnie nie mogę powiedzieć, ale publiczne repozytorium guava właśnie przeniosło się na git .
maaartinus

Odpowiedzi:

37

GitHub NIE jest kontrolą wersji - „hostuje” system kontroli wersji zwany „Git”. Oprócz gry słów jest to bardzo ważna różnica - dobrze o tym wiedz.

Jeśli chodzi o wykorzystanie w przedsiębiorstwie, mogę powiedzieć, że git jest równie inteligentny (wygodny i lepszy) jak coś w rodzaju SVN. I możesz wybrać odpowiednią strategię kontroli wersji (przepływ pracy) w oparciu o rozmiar i zakres projektu (i twojego zespołu). Systemy nierozproszone nie mogą sobie pozwolić na taką elastyczność.

wprowadź opis zdjęcia tutaj

W systemie Windows sprawdź rozszerzenia Msysgit lub Visual Studio dla Git - git działa bardzo dobrze w systemie Windows. Również użytkownicy systemu Windows patrzą na tę serię szkoleń z TekPub - to wszystko Windows.

AKTUALIZACJA [luty 2013] rozpoczęcie pracy z git w studiu wizualnym

Twoje pytanie nie jest rzadkie i możesz go znaleźć w Google i uzyskać dużo tekstu wyjaśniającego, dlaczego i jak (i ​​czy) używać git w przedsiębiorstwie.

Nadal nie lubisz Gita? Spójrz na inny DVCS o nazwie Mercurial .

treecoder
źródło
12
Msysgit nie jest prawdziwym obywatelem Windows. Działa świetnie, ale nie jest w 100% natywny.
Yann Ramin
+1 za punkt niektóre ważne aspekty Git. Chociaż @greengit wskazał możliwe opcje korzystania z Gita w systemie Windows, nie jest on tak zintegrowany jak, powiedzmy, SVN.
tehnyit
Używamy Eclipse, który ma dobre wsparcie dla git.
1
Myślę, że gitolite (lub podobny) zasługuje na wzmiankę tutaj. Wiele osób zajmujących się bezpieczeństwem, takich jak lokalni, jest zamkniętych i ma kontrolę nad lokalnym hostingiem repo.
Nic,
2
@YannRamin: Msysgit jest zdecydowanie prawdziwym obywatelem Windows i jest w 100% natywny. Jest wyposażony w powłokę uniksową, która wykorzystuje nieco inne konwencje, ale to jest powłoka, a nie git. Możesz użyć Msysgit z cmd.exe lub dowolnego innego procesu systemu Windows, tak jak każdej innej aplikacji natywnej. (Cygwin jest inny, ale Msys nie jest cygwin)
Jan Hudec
16

+1 Mercurial.

Mercurial jest fajny, łatwy w obsłudze, ma wiele przyjaznych dla użytkownika GUI i wydaje się bardziej profesjonalny. Nigdy nie rozumiałem, dlaczego Git miał taki szum, podczas gdy inne wielkie są w cieniu. Mercurial jest również obsługiwany przez kod Google, bitbucket.org (odpowiednik github), eclipse ... Używam go od dwóch lat i zawsze byłem z niego zadowolony.

Edytuj luty 2014:

W międzyczasie Git przejął taką przewagę, że odradzałbym to w kwestii rtęci. Trzy lata temu Mercurial był IMHO bardziej dopracowany, czystszy, lepszy. Jednak szum był po stronie Gita, a pęd nabrał od tego czasu, co czyni go wyraźnym zwycięzcą. Jest to obecnie de facto standard ze względu na ogromną społeczność.

Dagnele
źródło
Git jest znacznie potężniejszy, jeśli chodzi o sposób manipulowania historią. Wiele osób zdecyduje się na lokalne połączenie oddziałów, a następnie przeniesienie ich do jednej gałęzi głównej przed przejściem do repozytorium głównego / publicznego; w ten sposób długofalowa historia pozostaje bardzo czysta. O ile mogłem powiedzieć, kiedy ostatnio użyłem HG, Mercurial nie obsługuje tego rodzaju edycji historii. Ogólnie, git w Windows jest do bani; najlepsze narzędzia GUI (git-cola, gitk) do użycia można znaleźć tylko w systemie Linux.
Evan Plaice,
1
Nie powiedziałbym, że Gitowi się to udało z powodu szumu: ostatnim razem, gdy sprawdzałem, format backendu Mercurial był oparty na delcie i podatny na uszkodzenia w SVN lub CVS. Tymczasem podstawowy model Gita opiera się głównie na zapisie ze zmianami atomowymi. To po prostu znacznie bardziej technicznie uzasadnione rozwiązanie.
Stuart P. Bentley,
@ StuartP.Bentley: co rozumiesz przez zepsucie?
dagnele
Nagłe zatrzymanie procesu w trakcie kopiowania, przenoszenia, pisania na dysku lub w sieci: w Git utworzy to tylko obiekty, które są natychmiast rozpoznawane jako śmieci (ponieważ zawartość nie pasuje do skrótu), a nawet jeśli stracić coś w połowie drogi, możesz sprawdzić, co dostałeś, i odłożyć rzeczy z powrotem.
Stuart P. Bentley,
Tymczasem formaty oparte na delcie, które przechowują wszystkie informacje o zmianach w jednym pliku, takie jak Mercurial, mogą mieć niewielkie wypadki (na przykład upuszczenie linii opisującej zmianę), które powodują uszkodzenie pliku w taki sposób, że podobnie jak Humpty Dumpty , niemożliwe jest ponowne złożenie razem.
Stuart P. Bentley
8

Wiem, że https://github.com/ zapewnia pewne wsparcie w odniesieniu do prywatnych repozytoriów dla przedsiębiorstw

W szczególności zapewniają usługę o nazwie firewall install http://fi.github.com/ Podają się, że zapewniają wsparcie, ale nie opublikowali żadnych danych online i nigdy z nich nie korzystałem.

Koszty wynoszą 5000 USD za 20 osób rocznie.

c00w
źródło
-1 wcale nie odpowiada na jego pytanie
MattyD
13
Poprosił o firmy, które zapewniają rozwiązania i wsparcie. Github ma specjalne rozwiązanie hostingowe dla firm dla firm. Nie odpowiada na pierwsze pytanie. To rodzaj odpowiedzi na drugie pytanie. Odpowiada na trzecie pytanie.
c00w
Wow, kiedy zmieniła się cena FI? Ostatnio sprawdziłem, że było to około 200-250 $ / mc, a teraz jest to podwójne oO
wildpeaks
8

Używam zarówno Git, jak i Mercurial na Windowsie, i oba są bardziej niż użyteczne. Myślę, że narzędzia GUI dla Mercurial są lepsze, więc jeśli twój zespół jest przyzwyczajony do narzędzi wizualnych, może być lepiej dopasowane. Zazwyczaj jednak używam linii poleceń - dla mnie to po prostu ma większy sens.

Oba z mojego doświadczenia są kuloodporne. Nie potrzebujesz „wsparcia” jako takiego, chociaż wiem, że wiele przedsiębiorstw lubi je mieć.

Jestem pewien, że istnieją inne, ale warto przyjrzeć się Kiln , który jest hostowanym rozwiązaniem rtęciowym.

Uwaga - niezależnie od tego, w którą stronę się wybierasz, DVCS są zupełnie inne niż tradycyjne VCS. IMHO, są lepsi pod każdym względem, ale przyzwyczajenie się może trochę potrwać.

Ben Hughes
źródło
2
przyzwyczajenie się może zająć trochę czasu. // pamiętam, jak bardzo nienawidziłem Gita podczas tych długich dwóch dni adaptacji z SVN.
c69,
6

git jest obcy dla programistów Windows. To nie jest prawdziwy obywatel pierwszej klasy. Działa dobrze, ale przede wszystkim jest narzędziem Linux. Na przykład model serwera git wymaga w zasadzie bezpieczeństwa logowania SSH.

Wsparcie to pytanie, a są firmy, które mogą to zapewnić, zwykle wraz z hostowanym rozwiązaniem.

Wiadomo, że Git nie wymaga dużych serwerów - ponieważ repozytoria skalują większą pojemność io szybkość jest zawsze ważna, ale ponieważ większość operacji odbywa się tylko na komputerze, wymagania dotyczące serwera są o rząd wielkości mniejsze niż coś takiego jak Clearcase.

Za swoją wartość nasza niecałe przedsiębiorstwo mniej niż 100 jest ogromnym użytkownikiem git, w systemie Windows, z projektami Java i C.

Yann Ramin
źródło
1
Mimo, że było dużo majstrowania i kopania dokumentacji, GIT bardzo dobrze działał z uwierzytelnianiem HTTP Basic przez SSL wspieranym przez serwer LDAP.
DoubleMalt
1
Uważaj na białe znaki / zakończenia linii, jeśli planujesz coś przenieść na Linuksa. Może stać się brzydki, jeśli od samego początku nie będziesz czujny.
Evan Plaice,
Git jest teraz wbudowany w VS 2013 i nowsze wersje. MS uczyniło go obywatelem pierwszej klasy.
Clay Smith
5

Git bardzo różni się od Clearcase, więc prawdopodobnie Twoim wyzwaniem będzie płynna migracja programistów (i innych użytkowników) do innego sposobu pracy z kodem źródłowym i plikami. W zależności od doświadczenia użytkowników i głębokiej integracji Clearcase w przedsiębiorstwie może to wymagać wielu szkoleń i oduczenia.

Na początku sugeruję, abyś wypróbował git w projekcie pilotażowym i zobaczył, jak to działa dla twojego zespołu. Zdobądź bezpieczne repozytorium na github i wszystko gotowe do pilotażu.

Martin Wickman
źródło
5
  • Czy Git jest naprawdę niezawodnym narzędziem dla środowiska korporacyjnego, szczególnie dla platformy Windows?

Wkrótce będziemy z tym zdecydowanie. Firma Atlassian poczyniła ostatnio duże kroki w tym kierunku dzięki wydaniu Stash 1.3 .

  • Wsparcie to pytanie dla Git, ponieważ jest to kontrola wersji open source.

Istnieje silna sieć wsparcia doświadczonych użytkowników Git, oferująca porady dla bezpłatnych i różnych grup LinkedIn (Git Version Control System). Szybkie wyszukiwanie w Google może zwykle pomóc w przypadku większości wymagań. Dla większych firm istnieją również komercyjne opcje wsparcia Git dostępne obecnie na rynku.

  • Czy są jakieś firmy, które oferują rozwiązania i wsparcie? Jak serwer kosztuje w porównaniu z innymi kontrolkami wersji, takimi jak Clear-case?

Obecnie istnieje wiele firm oferujących niezawodne i dedykowane wsparcie dla Git. Clearvision i #goGit, aby wymienić jedną z nich.

Joe
źródło
Łącze Skrytki zostało zerwane półtora roku później. Znalazłem to tutaj: atlassian.com/software/stash
1

W moim przedsiębiorczym miejscu pracy pracowałem nad wsparciem w przeniesieniu zespołu do Mercurial (narzędzie podobne do git) w ClearCase.

Wybraliśmy hg na imprezę, ponieważ zaprojektowano go wokół niezmienności, co jest ważne dla naszych celów biznesowych. Ponadto, ponieważ jest napisany w języku Python, działa bardzo dobrze w systemie Windows. Git miał reputację słabego systemu Windows, a moje doświadczenie to odzwierciedla. (Wydaje mi się, że narzędzia są teraz lepsze, nie używam już Windowsa do sprawdzenia. :-)).

Doświadczenie było ogólnie pozytywne, z większością naszych wad związanych z podobszarami i związanymi z nimi dziwnymi pośrednimi. Inną rzeczą jest to, że w hg nie ma magazynu metadanych; w celu zarządzania tym należy opracować inne rozwiązania.

Gdybym polecił programistom rozwiązanie „gotowe do pracy” dla programistów Windows, poleciłbym zbadanie Kiln i GitHub Firewall .

Wiem, że to nie odpowiada bezpośrednio na twoje pytanie. Ale powiem tak: jeśli jesteś przyzwyczajony do ClearCase, spodziewam się, że git będzie o rząd wielkości łatwiejszy do wyszkolenia, wdrożenia i administrowania.

Paul Nathan
źródło
1

Git i Mercurial mogą być używane w środowiskach korporacyjnych. W pewnym stopniu. Niektóre organizacje mają dodatkowe wymagania, które obecnie nie są spełniane przez git, takie jak ściślejsza kontrola dostępu, tak że np. Tylko konkretni użytkownicy mają (odczyt) dostęp do określonych plików w repozytorium lub podobne interfejsy audytu, których dostęp można śledzić. Niektóre komercyjne systemy korporacyjne mają głębszą integrację z zarządzaniem systemami informatycznymi, np. Korporacyjne rozwiązania do tworzenia kopii zapasowych.

Git nie jest również dobry do zapewnienia, że ​​historia jest przechowywana - domyślnie pozwala na wymuszone wypychanie, zastępując pełną historię projektu.

Duże organizacje czasami napotykają problemy ze skalowaniem. Oto przypadek Facebooka: http://comments.gmane.org/gmane.comp.version-control.git/189776 , podczas gdy niektóre z tych problemów można naprawić (tj. Facebook naprawił niektóre problemy, które mieli w mercurial: https: / /code.facebook.com/posts/218678814984400/scaling-mercurial-at-facebook/ ) komercyjne systemy kontroli wersji mają różne zachowania skalowania, które mogą (lub w innych środowiskach) nie działać lepiej.

... a potem jest ta odpowiedzialność. Większe organizacje mogą preferować dzwonienie do zewnętrznego dostawcy, gdy występują problemy, zamiast wykorzystywać swój czas do debugowania problemów i polegać na wsparciu społeczności. Zwłaszcza jeśli dotyczy to uszkodzonych repozytoriów zawierających poufne informacje.

W żadnym wypadku nie są to problemy uniemożliwiające korzystanie z niego w „środowiskach korporacyjnych”, ale jak zawsze inne oprogramowanie ma różne zalety i wady, które należy oceniać indywidualnie.

Johnnes
źródło