Jakie jest dobre, lekkie repozytorium źródeł dla rozwoju lokalnego? [Zamknięte]

15

Robię lokalne prototypowanie, które chciałbym zachować pod kontrolą źródła (w celu tworzenia kopii zapasowych i przywracania), ale niekoniecznie chcę opublikować go jako oprogramowanie typu open source lub udostępnić online innym osobom do obejrzenia.

Jaki system kontroli źródła poleciłbyś na rozwój lokalny? Każda konfiguracja lub przejście do mojego scenariusza jest bardzo mile widziane.

Szukam:

  • Łatwa konfiguracja i administracja. Ponieważ jest to moja lokalna maszyna, jestem ograniczony do systemu operacyjnego Windows i naprawdę chciałbym zminimalizować liczbę zmian konfiguracji środowiska i niezbędną krzywą uczenia się. Będzie tylko jeden użytkownik, więc nie chcę konfigurować praw dostępu itp.
  • Niski koszt zasobów, chcę hostować lokalnie na mojej maszynie programisty, więc nie chcę, aby pochłaniało mój procesor. Nie planuję też przechowywania ogromnych ilości danych.
  • Znajomy. Wcześniej korzystałem z klientów SVN. Integracja z Visual Studio jest przyjemna.
  • Przenośny. Jeśli muszę przenieść go na dysk zewnętrzny lub na inną maszynę.
  • Darmowy. Tak, chcę tego wszystkiego i nie chcę za to płacić.
bryanbcook
źródło
Na przykład git prawdopodobnie robi prawie wszystko, co chcesz, a IMHO mógł to łatwo odkryć za pomocą Google. To nie tak, że istnieją setki VCS.
stijn
8
Google nie da mi wrażeń na forum, któremu ufam.
bryanbcook
Czy jest jakiś konkretny powód, dla którego chcesz go hostować tylko lokalnie? Zasadniczo lepiej jest hostować online (jako formę kopii zapasowej), aby uchronić się przed awarią komputera (jest to mało prawdopodobne, ale może się zdarzyć kiedyś).
apoorv020

Odpowiedzi:

32

Moje osobiste zalecenie to git. Serwer nie jest wymagany, a poddanie katalogu kontroli źródła jest tak proste, jak:

git init .
git add .

Następnie popełniasz normalnie. Zgodnie z tym pytaniem ma również dobrą integrację ze studiem wizualnym.

Karl Bielefeldt
źródło
12
Jest ograniczony do systemu Windows. Mercurial jest znacznie ładniejszy w systemie Windows. Po prostu zdobądź TortoiseHG tortoisehg.bitbucket.org i jesteś gotowy, aby skorzystać z jednego instalatora. Żadnych obręczy do przeskoczenia, nie potrzeba mysysgit, cygwin ani niczego innego.
Curtis Batt,
2
Zakochałem się również w tym micie hg / git, ale potem próbowałem git na Windowsie. To, że Linus Torvalds nie lubi / nie używa okien, nie oznacza, że ​​git nie działa na nim dobrze z powodu ludzi, którym zależy. Dzięki TortoiseGit uzyskasz dokładnie takie same wrażenia użytkownika jak TortoiseHg, ale z dużo większą szybkością, przynajmniej w naszej bazie 60 000 wersji kodu pliku w pracy. A od kiedy programistom zależy na jednym dodatkowym jednorazowym instalatorze ?!
Karl Bielefeldt,
3
@qes, w jaki sposób?
Karl Bielefeldt
1
@ Thorbjørn, nie zrozum mnie źle, msysgit to bardzo dobra decyzja „wspólnego mianownika”. Na przykład, jeśli uzyskasz pomoc online, otrzymasz polecenie CLI jako odpowiedź. TortoiseGit prawdopodobnie ma drugą najwyższą pozycję wśród użytkowników systemu Windows, na podstawie tego, co przeczytałem na forach, ale miłośnikom IDE i hejterom odkrywców w twojej grupie nie spodoba się. Prawdopodobnie początkowo trenowałbym grupę na msysgit i TortoiseGit, ale zachęcam ich do eksperymentowania z innymi klientami, jeśli są funkcje, które ich zdaniem brakuje lub są nieoptymalne.
Karl Bielefeldt
1
„Mercurial jest o wiele ładniejszy w systemie Windows” - już nie .
Moshe Revah,
30

Używam do tego Mercurial. Jest lekki, łatwy w instalacji i nauce oraz posiada wszystkie funkcje, których będziesz potrzebować do indywidualnej pracy. (Git został zaprojektowany do programowania jądra Linux i może być lepszym wyborem dla dużych projektów rozproszonych).

David Thornley
źródło
5
Mercurial został również zaprojektowany do użycia przy tworzeniu jądra Linux. Jednak Linus był w zasadzie „nie, użyjmy mojego”, a programiści Linuksa mieli to wszystko, ponieważ Linus to zrobił.
Thomas Owens
6
Z tego, co próbowałem z git / mercurial, wolę mercurial. Aby uzyskać bezpłatny hosting nieograniczonego prywatnego / publicznego repozytorium dla 1 użytkownika (który jest idealny do pracy solo), spróbuj bitbucket.org
ryanzec
7

Prawdopodobnie zdecydowałbym się na mercurial, ale jeśli bardziej podoba ci się SVN, możesz lokalnie używać repozytoriów SVN typu pliku bez infrastruktury, z wyjątkiem systemu plików.

Wyatt Barnett
źródło
4

Perforce zrobi, co chcesz. Jest bardzo łatwy w konfiguracji (pochodzi z instalatorem), nie przejmuje zasobów (sam uruchomiłem go lokalnie), ma wtyczkę VS, która działa dość dobrze i ma darmową wersję do indywidualnego użytku.

Nie próbowałem jednak przenosić go na inną maszynę, więc nie wiem, jak dobrze działa w tym sensie.

Istnieje kilka dziwactw związanych z integracją VS, szczególnie w zakresie przenoszenia / zmiany nazw plików, ale można je łatwo obejść za pomocą klienta Perforce.

Adam Lear
źródło
Dlaczego głosowanie negatywne?
Adam Lear
nie wiem muszą być nienawistnymi hejterami.
bryanbcook
Wtyczka perforce jest okropna, z ręcznym dodawaniem / zmienianiem nazw / ruchów itp. Oraz dodawaniem powiązań VSSC do pliku rozwiązania. Istnieje rozszerzenie dla VS2010 o nazwie vs2P4 lub podobne (wyszukaj w galerii online perforce). Nie sprawia, że ​​bardziej lubię perforować, po prostu mniej go nienawidzę.
Jim Schubert
1
Również +1, ponieważ mamy terabajty kodu i innych plików przechowywanych w perforce. O ile mi się to nie podoba, jest to dość solidne z tego, co mogę powiedzieć.
Jim Schubert
1
Perforce wydaje mi się martwym listem. Kasa, a następnie edycja modelu i niezwykle ciężkie rozgałęzienia są głównymi zobowiązaniami, zwłaszcza, że ​​istnieją doskonałe i całkowicie bezpłatne alternatywy.
kevin cline
3

Jeśli sam chcesz go hostować, sugestie @Karl i @ Anna działają. Jeśli nie chcesz się tym przejmować, możesz użyć jednego z wielu dostawców kontroli hostowanych źródeł.

Project Portal oferuje bezpłatną usługę hostingową SVN. http://projectlocker.com/

Babak Naffas
źródło
1
+1. Istnieje również bitbucket.org, który zapewnia bezpłatny hosting Mercurial i umożliwia prywatne repozytoria na darmowym koncie.
Adam Lear
Lub możesz skonfigurować własny serwer SVN za pomocą svnserve. Konfiguracja nie jest zbyt trudna, jeśli wiesz, jak skonfigurować przekierowanie portów na routerze (i DynDNS, jeśli masz dynamiczny adres IP) i masz trochę czasu, aby google go skonfigurować. Przez około 2 lata prowadziłem jeden z domu, który wykorzystałem do rozwoju dla siebie (w Denver) i drugiego dewelopera (w Montrealu), aby wspólnie opracować projekt. Jeśli jednak masz czas (i cierpliwość), zdecydowanie sugeruję nauczenie się git i skonfigurowanie demona serwera git.
Evan Plaice
3

Używam pieca .
Wykorzystuje Mercurial do kontroli źródła i integruje się z narzędziami do przeglądania kodu, śledzenia błędów i zarządzania projektami.
Najlepsze jest to, że jest bezpłatny dla maksymalnie 2 użytkowników, a Twój kod jest bezpiecznie tworzony w usłudze hostingowej (hosting prywatny).

Paulo Pinto
źródło
2

Kocham TortiseSVN (http://tortoisesvn.tigris.org/)

Wszystko jest zintegrowane z powłoką systemu Windows, bez dodatkowego serwera do skonfigurowania lub co nie. Krzywa uczenia się jest w zasadzie żadna. Znajdź folder, w którym chcesz utworzyć repozytorium, kliknij prawym przyciskiem myszy i wybierz Utwórz repozytorium. W razie potrzeby dokonaj wstępnego zameldowania, a następnie wykonaj wstępne sprawdzenie w katalogu plików źródłowych.

Możesz zrobić wszystko, używając powłoki systemu Windows, a foldery svn są nałożone ikonami wskazującymi, czy są to zmiany.

paan
źródło
1

Możesz użyć git na codaset . codaset pozwala mieć 1 prywatne repozytorium, więc nie musisz publikować swojego kodu. Ale nie jestem pewien, czy zintegrować git z Visual Studio (wiem, że git działa dobrze w systemie Windows, ponieważ użyłem go z QT).

sakisk
źródło
0

Ponieważ TortoiseGit działa całkiem dobrze, używam tego, ale kiedyś korzystałem z Bazaru dość intensywnie w systemie Windows. Myślę, że krzywa uczenia się jest znacznie lżejsza dla Bazaar niż Git, a Bazaar ma bardziej ustrukturyzowane wsparcie dla różnych układów VCS niż Git. Oznacza to, że możesz używać Bazaar podobnie jak SVN, a nawet używać repozytorium SVN jako zdalnego repozytorium dla lokalnego repozytorium Bazar.

Pomyślałem, że to dobry produkt przejściowy z SVN na rozproszone VCS.

Pomyślałem też, że TortoiseBzr nie jest zbyt dobry, ale Bazaar jest wyposażony w przyjemny pulpit nawigacyjny do zarządzania GUI typu „wszystko w jednym”, z którego często korzystałem. Jeśli problemem jest przenośność, panel zarządzania może być dobrym rozwiązaniem zamiast jednego z produktów Tortoise ***.

CodexArcanum
źródło
0

Przekazanie projektu do kontroli wersji za pomocą Bazaar jest tak proste, jak:

bzr init
bzr add
bzr commit -m 'added files'

Jeśli znasz Subversion, powinieneś czuć się jak u siebie w Bazar: najpopularniejsze svnpolecenia działają dokładnie tak samo w Bazaar.

Bazar jest bardzo łatwy do nauczenia, co nie jest przypadkiem, biorąc pod uwagę, że użyteczność była częścią jego głównych celów projektowych. Bazaar to narzędzie intuicyjne i łatwe do zrozumienia, które nie przeszkadza. Bazar jest spójny przez cały czas, powinno być niewiele lub wcale złych niespodzianek (miałem mnóstwo dobrych).

Pasuje do rachunku zgodnie z opisem Twoich potrzeb, z jednym wyjątkiem integracji Visual Studio. Podczas ostatniej oceny w 2010 r. Nie był on gotowy do przyjęcia w moim miejscu pracy, ale od tego czasu mogło się to zmienić. (W każdym razie napisałeś, że to jest miłe.)

janos
źródło
-2

RocketSVN jest teraz zamrożonym produktem. Nie jest już rozwijany. Więc używam uberSVN i tortoiseSVN. Są zarówno bezpłatne, jak i dość łatwe w użyciu.

killawat
źródło