Czy systemy kontroli wersji FOSS działają dla przedsiębiorstw? [Zamknięte]

11

Powiedzmy, że duża korporacja planuje zastąpić istniejący system kontroli wersji. Powiedzmy, że bierze pod uwagę tylko systemy największych dostawców, które kosztują setki tysięcy dolarów, ponieważ mają „wsparcie”.

Czy kontrola wersji w środowisku korporacyjnym musi być kosztowna? Czy Twoja średnia / duża korporacja stosuje system FOSS VCS, taki jak SVN / Git / Mercurial? Jakie było to doświadczenie?

Muszę myśleć, że nie musi to być drogie, ponieważ istnieje tak wiele bezpłatnych opcji i prawdopodobnie są firmy, które zapewniają płatne wsparcie dla FOSS VCS, jeśli jest to główny problem.

Nie zamierzam tego pytania porównywać VCS ani decydować, który jest najlepszy, raczej po prostu rozumiem doświadczenia z VCS w korporacyjnym środowisku IT.

jimueller
źródło

Odpowiedzi:

29

Tak.

  
Z mojego (co prawda ograniczonego) doświadczenia wynika, że ​​rozwiązania inne niż FOSS są bardziej „przedsiębiorcze”. To jest,

  • Integrują się ze wszystkim pod słońcem.
  • Mają więcej wbudowanych mechanizmów kontrolnych dla złożonej logiki biznesowej (uprawnienia, kontrola dostępu, zatwierdzanie itp.).
  • Pochodzą one z umowami o wsparcie i odpowiednio reagującymi liniami wsparcia technicznego.
  • Są dobrze reklamowane osobom nietechnicznym podejmującym decyzje VCS na wysokim szczeblu w dużych firmach.

Te atrybuty sprawiają, że są atrakcyjne dla dużych firm, szczególnie dla osób, które nie muszą ich używać. Alternatywy FOSS, w przeciwieństwie do powyższych:

  • Posiadaj mnóstwo narzędzi innych firm, aby zintegrować je ze wszystkim pod słońcem (dzięki temu, że są bardziej popularne niż zastrzeżone rozwiązania alternatywne) i łatwiej jest opracowywać narzędzia innych firm, będące systemem operacyjnym.
  • Zobacz poprzednie - łatwiejsze do uzyskania narzędzia zewnętrzne wokół czystego, prostego, podstawowego narzędzia.
  • Dzięki większej popularności mają szersze wsparcie społeczności.
  • Nie potrzebują wspomnianych reklam.

Poza tym moje doświadczenie z darmowymi VCS (mercurial / svn / etc) sprawia, że ​​są one szybsze, bardziej niezawodne i łatwiejsze w użyciu.

Fishtoaster
źródło
5
+1 - Jestem znacznie bardziej zadowolony z SVN niż kiedykolwiek z SourceSafe.
Jon Hopkins,
5
@Jon +1 - Jestem znacznie bardziej zadowolony z Mercurial niż kiedykolwiek z SVN.
Tim Post
1
@Tim - obecnie nieformalnie ocenia Mercurial przed ewentualną migracją.
Jon Hopkins,
8

Zgadzam się z @Fishtoaster, że kontrola wersji FOSS ma wszystkie funkcje (lub może być zintegrowana z innym oprogramowaniem FOSS, które zapewnia te funkcje), którego potrzebuje nawet największe przedsiębiorstwo.

Niestety z mojego doświadczenia wynika, że wiele decyzji w przedsiębiorstwach nie jest podejmowanych przez osoby posiadające wiedzę techniczną, aby podjąć taką decyzję. Oznacza to, że osoby upoważnione do robienia zakupów w przedsiębiorstwie są bezpośrednio kierowane przez dział sprzedaży innych przedsiębiorstw do zakupu ich oprogramowania. FOSS nie dostać nawet spojrzeć w, ponieważ nie ma nikogo sprzedaży do nich.

W jednym miejscu, w którym pracowałem, zastosowaliśmy jedno z tych „korporacyjnych” rozwiązań kontroli wersji. To było powolne (dosłownie zajęło to ponad godzinę, aby wykonać „wypróbowanie” najnowszej wersji kodu!) I uległo błędzie i wszyscy na to narzekali. Wielu programistów faktycznie przeprowadziłoby kasę (biorąc, jak powiedziałem, ponad godzinę ), a następnie utworzyło lokalne repozytorium SVN lub Mercurial oprócz tego kasy, wykonało kodowanie w tym repozytorium i sprawdzało je tylko w głównym repozytorium, gdy wymagany.

Mieliśmy szczęście, że mogliśmy zainstalować dowolne potrzebne oprogramowanie. Ale fakt, że ludzie obalili „proces” w ten sposób, mówi mi, że było coś poważnie nie tak z tym procesem ...

Dean Harding
źródło
1
Właśnie to zrobiłem, skonfigurowałem własną lokalną SVN, ponieważ dostarczony VCS jest tak straszny.
jimueller
4

Główna różnica między oprogramowaniem FOSS a oprogramowaniem komercyjnym polega na tym, że ten pierwszy oparty jest na dumie, a drugi na dochodach.

Zadaj sobie pytanie: jak zadowoleni są ludzie, którzy napisali oprogramowanie XYZ?

Jeśli to FOSS, prawdopodobnie byliby bardzo szczęśliwi, bo w przeciwnym razie po co mieliby tak marnować na to swój czas?

Jeśli jest to oprogramowanie komercyjne, tak naprawdę nie można powiedzieć. Są szanse, że ludzie otrzymali zapłatę za napisanie czegoś, czego tak naprawdę nie lubią.

Oprogramowanie FOSS zyskuje więcej miłości. To niekoniecznie oznacza, że ​​jest lepszy, ale jeśli jest to udany projekt FOSS, możesz być całkiem pewien, że jest lepszy niż cokolwiek, co możesz kupić („Pieniądze nie mogą kupić szczęścia”, pamiętasz?).

Jak możesz stwierdzić, że się udało? Sprawdź stronę internetową. Jeśli witryna jest aktualna i wygląda ładnie, wystarczy jej marnowanie czasu na stronie (programiści FOSS są twarde; nie chcą marnować czasu na nic, co nie powoduje zadraśnięcia).

To pozostawia najważniejszy punkt: wsparcie. Firmy nie kupują oprogramowania, aby legalnie z niego korzystać, ale w celu uzyskania wsparcia na wypadek, gdyby coś poszło nie tak (myślenie: jeśli 100 osób nie będzie w stanie pracować, a ja dostanę naprawę w ciągu jednego dnia, jest to warte 100 000 USD). Na szczęście możesz kupić wsparcie dla oprogramowania FOSS (poszukaj wskazówek na stronie internetowej lub zapytaj na liście mailingowej).

Tak więc, jeśli przeprowadzisz ocenę, a FOSS spełni twoje potrzeby, nie ma powodu, aby preferować oprogramowanie komercyjne.

Aaron Digulla
źródło
2

Osobiście widziałem, jak SVN z powodzeniem działa w dużym przedsiębiorstwie, i słyszałem o innych historiach sukcesu. Myślę, że jedną z kluczowych rzeczy, która przeraża przedsiębiorstwa w zakresie otwartego oprogramowania, jest brak wsparcia. Czują się, jakby byli na linie bez siatki bezpieczeństwa. Ale często można znaleźć firmy, które zapewnią umowy o wsparcie dla oprogramowania typu open source. W przypadku SVN istnieje CollabNet i inne.

RationalGeek
źródło
1
Ale SVN naprawdę nie radzi sobie dobrze z rozgałęzianiem, w zasadzie jest do bani. Jak więc można użyć SVN w projekcie, w którym, powiedzmy, jest więcej niż 10 osób pracujących na tej samej bazie.
Bjarke Freund-Hansen
@bjarkef: Od czasu do czasu rozgałęziam się i scalam z subversion. Myślę, że to legenda, że ​​SVN jest do bani. Jasne, Git i Mercurial oparte są na zupełnie innym systemie, opartym na oddziałach. Ale nie mniej niż w przypadku Subversion. Więc łączenie nie jest problemem, tylko niektórzy ludzie wolą styl repo i oddziałów zorganizowanych za pomocą DVCS.
Mnementh,
3
Tak. Naprawdę, z mojego punktu widzenia, SVN radzi sobie fenomenalnie dobrze . Prawdopodobnie dlatego, że nasza kontrola źródła była wcześniej Wizualnym Bezpiecznym Źródłem, co było fatalne w rozgałęzianiu (i WSZYSTKIM INNYM).
John Christensen,
@John - Mój problem polegał na tym, że przejście z DVCS z powrotem do CVCS było naprawdę trudne. Mój postęp w VCS to RCS> VSS> Mercurial> SVN. Pierwsze dwa przejścia były łatwe i sprawiły, że wiele rzeczy stało się prostszych, łatwiejszych i szybszych. Ten ostatni był koszmarem - nawet użycie git-svn nie jest w stanie cofnąć nieodłącznej elastyczności przestarzałej historii liniowej SVN. Z niecierpliwością czekam na nasze przejście na git, chociaż znów wolałbym prostotę rtęci.
Mark Booth