Używasz kontroli wersji w programowaniu domowym?


138

Do tej pory rozwijałem swoje projekty osobiste i szkolne w domu bez używania jakiejkolwiek formy oprogramowania do kontroli wersji do obsługi moich zmian i tak dalej.

Moje pytanie brzmi: jak wykonalne jest używanie aplikacji kontroli wersji (takiej jak TortoiseSVN ) do osobistych projektów, które robię dla siebie (a nawet projektów szkolnych)?

Czy warto kłopotać się sprawdzaniem, zatwierdzaniem zmian i całą tą rutyną, tylko dla „projektów domowych”, zamiast po prostu tworzyć ręczne kopie zapasowe?

Linki :


2
O wiele łatwiej jest używać kontroli źródła niż tworzyć ręczne kopie zapasowe! Być może łatwiej jest nauczyć się tworzyć ręczne kopie zapasowe niż korzystać z kontroli źródła.
yfeldblum

1
Mogę polecić VisualSVN, bardzo łatwy w użyciu. A ich serwer subversion jest darmowy :) ( visualsvn.com )
Svish

Zamiast tego użyj hostowanego serwera, aby uzyskać zerową konserwację i kopię zapasową. Używam Unfuddle: stackoverflow.com/questions/430742/ ...
ripper234

Odpowiedzi:


191

Całkowicie.

Kredyty również dla http://blogs.embarcadero.com/nickhodges/2010/04/23/39416 :

  • Czasami popełniamy głupie błędy. Posiadanie siatki bezpieczeństwa kontroli źródła jest koniecznością.
  • Oznacz ważne kamienie milowe. Nawet w przypadku projektowania w domu możesz chcieć oznaczyć zestaw plików i poprawek jako określoną wersję oprogramowania.
  • Trenujesz do swojego życia zawodowego. Wprowadzenie do głowy metodologii pracy związanej z kontrolą źródła przygotowuje Cię profesjonalnie.
  • Efektywność przechowywania. Bieżące systemy kontroli źródła przechowują wersje jako różnicę różnic w stosunku do poprzedniej wersji. Oznacza to, że jest bardziej wydajny na dysku, ponieważ nie jest przechowywany cały plik, a jedynie różnice.
  • Masz historię całego swojego drzewa źródłowego. Możesz szybko zobaczyć, co zostało zmienione i kiedy zostało zmienione. Porównaj pliki z różnych wersji i łatwo scal je.
  • Możesz rozgałęziać się, aby eksperymentować. Jeśli masz na myśli jakieś eksperymenty, możesz stworzyć gałąź (nową niezależną linię rozwoju) i przetestować ją. Na koniec, jeśli jesteś zadowolony z wyników, połącz go w HEAD (główna linia rozwojowa). Otrzymujesz to wszystko za darmo bez konieczności tworzenia kopii i czerpiesz te same korzyści z używania kontroli źródła nawet podczas eksperymentów.

13
Jeszcze jedno: pod warunkiem, że system kontroli wersji znajduje się na zdalnym komputerze, zapewnia proste tworzenie kopii zapasowych online.
NotMe

Zgadzam się całkowicie. Za każdym razem, gdy musisz skorzystać z jednej z tych funkcji, odzyskasz już niewielki koszt korzystania z kontroli źródła.
Chris Farmer,

Punkt 4 nie ma zastosowania do git. git jest zoptymalizowany pod kątem wydajności scalania, a przechowywanie różnic nie jest korzystne dla tego celu. obecnie zakłada się, że masz wystarczająco dużo miejsca na dysku dla swojego kodu źródłowego. Jednak wszystkie inne punkty są powodem do korzystania z dowolnej kontroli źródła, a git oczywiście spełnia wszystkie z nich.
SingleNegationElimination

Jeszcze raz polecam git, szczególnie dla punktów 2. 5. i 6. git ma bardzo ładny interfejs do tagowania, rozgałęziania, scalania itp., A niektóre narzędzia graficzne, takie jak qgit lub gitk, sprawiają, że bardzo łatwo jest zobaczyć, jak wszystko Gałęzie pasują do siebie ... to również bułka z masłem, aby zmienić aktualny (niewersjonowany) katalog roboczy w katalog git za pomocą 3 poleceń: git init, git add., git commit
David Claridge

Jeśli Twój osobisty projekt jest na tyle duży, że punkt 4 (wydajność pamięci masowej) ma znaczenie, zdecydowanie potrzebujesz kontroli źródła!
Tikhon Jelvis,

31

To się opłaca.

Pamiętaj, że nie musisz też konfigurować pełnoprawnego serwera SVN. Możesz po prostu utworzyć repozytorium w lokalnym systemie plików i połączyć się ze składnią file: // URL. Oznacza to, że nie musisz przechodzić przez kłopoty z konfiguracją demona SVN (co prawdopodobnie jest przesadą dla projektu pojedynczego użytkownika)

Możesz również przyjrzeć się lżejszym opcjom, takim jak git, które przechowują wszystkie pliki robocze lokalnie bez konieczności tworzenia oddzielnego repozytorium. Git oferuje również kilka dodatkowych opcji konfigurowania kontroli źródła.


1
Niedawno wypróbowałem git, ponieważ projekt, który obserwowałem, go używał. Natychmiast przerzuciłem się na git dla moich osobistych i zawodowych projektów, gdy tylko zobaczyłem, jakie to proste i szybkie . Wysoce rekomendowane.
Dave Sherohman,

8

Korzystanie z kontroli źródła jest również dobre do celów tworzenia kopii zapasowych. Jeśli zawsze sprawdzasz wszystko, możesz wykonać kopię zapasową wszystkich projektów kodu źródłowego, wykonując kopię zapasową wszystkich repozytoriów. Jeśli masz wiele maszyn, nie musisz się martwić o to, gdzie faktycznie znajduje się najnowsza wersja twojego kodu - znajduje się ona na serwerze repozytorium.


6

Utrzymałem całą moją pracę magisterską pod kontrolą źródła - zarówno kod, jak i samą pracę - więc jestem zdecydowanym zwolennikiem robienia tego, a nie tylko kodu.

W przypadku indywidualnych projektów główną zaletą jest swoboda zmiany rzeczy i eksperymentowania, wiedząc, że zawsze możesz wrócić do poprzedniej wersji, jeśli to nie zadziała. I daje ci niejawne kopie zapasowe twojej pracy (po prostu upewnij się, że repozytorium svn znajduje się co najmniej na innym dysku twardym niż główna praca)


5

Oczywiście, warto to zrobić. Daje ci możliwość wypróbowania szalonych i szalonych refaktoryzacji, a następnie z łatwością wycofania się z nich, jeśli nie działają. Tworzy również dobre nawyki dotyczące tego, czy / kiedy pracujesz bardziej zespołowo z grupą.

Z Subversion (przynajmniej) nie musisz nawet mieć „serwera” - prosty katalog może służyć jako repozytorium, jeśli uzyskasz do niego dostęp za pomocą adresów URL typu „file: //”. Jest nawet bezpłatna książka, która zawiera prawie wszystko, co musisz wiedzieć, aby zacząć:

http://svnbook.red-bean.com/nightly/en/index.html


4

Uważam, że posiadanie konfiguracji serwera SVN jest niezwykle pomocne, ponieważ wracam do wersji i innych projektów „wyrzucanych”, ponieważ przypomniałem sobie jakąś funkcję lub sposób zrobienia czegoś, z czego mógłbym teraz skorzystać. Mając serwer SVN wiem, że kod jest przechowywany w domu i mogę go później pobrać.


4

Kontrola wersji jest świetna, ponieważ pozwala być bardziej eksperymentalnym, wiedząc, że jeśli twoje eksperymenty się nie powiodą, masz do czego wrócić.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.