Krótka odpowiedź ...
Moja sugestia: zacznij od kont publicznych na GitHub i / lub Bitbucket (inne?). Rzuć kilka publicznych projektów i zacznij korzystać z narzędzi / interfejsów. Po zapoznaniu się z usługami powinieneś wiedzieć, jakie są ograniczenia, zalety i wady każdej usługi. Stamtąd powinieneś być w stanie wybrać najlepszą ścieżkę do oświecenia kontroli wersji. :)
Długa odpowiedź ...
Obecnie nie mam kopii zapasowej poza witryną dla większości mojego kodu, więc w ramach tego początkowo myślałem, że prześlę wszystkie moje osobiste projekty lub przynajmniej wszystkie moje projekty iOS do prywatnego repozytorium hostowanego przez GitHub . Mam jednak wiele siedzących projektów, z których wiele ma dość niską wartość (tj. Adaptowanych z książek i napisanych do nauki).
Czy zastanawiałeś się nad zainstalowaniem własnego klienta Git? Jeśli już płacisz za hosting, warto użyć tego hosta do własnej konfiguracji Git.
Na przykład moim hostem jest WebFaction (bez powiązania):
Instalowanie aplikacji internetowej Git
Kierując się tą trasą, możesz zaoszczędzić trochę $$$, szczególnie. jeśli już płacisz za hosting.
GitHub nie tylko pobiera opłaty z prywatnego repozytorium,
Aby wyjaśnić innym (ponownie, brak powiązania biznesowego z GitHub lub BitBucket):
- 7 USD / mies. dla maksymalnie 5 prywatnych repozytoriów , nieograniczone wszystko inne.
- 12 USD miesięcznie dla maksymalnie 10 prywatnych repozytoriów , nieograniczone wszystko inne.
- 12 USD miesięcznie dla maksymalnie 20 prywatnych repozytoriów , nieograniczone wszystko inne.
Pamiętaj, że ceny „Biznesplanów” są różne.
Jak stwierdził Andrew w innej odpowiedzi, Bitbucket reklamuje nieograniczoną liczbę prywatnych repozytoriów.
- 5 użytkowników: bezpłatnie
- 10 użytkowników: 10 USD / mies.
- 25 użytkowników: 25 USD / mies.
- 50 użytkowników: 50 USD / mies.
- 100 użytkowników: 100 USD / mies.
- Nieograniczone 200 USD / mies.
wydaje się, że nie ma żadnego sposobu hierarchicznego organizowania repozytoriów.
Nie jestem pewien, co dokładnie rozumiesz przez „hierarchicznie” (prawdopodobnie dlatego, że nie znam SVN).
Nie jestem pewien, czy to pomogłoby, ale możesz spojrzeć na tę tabelę porównawczą, aby zobaczyć, jak polecenia się różnią / różnią:
Czy brakuje mi czegoś, co pozwoliłoby mi korzystać z repozytorium git z hierarchią i sprawdzać potrzebne elementy / pracować z nimi, tak jak obecnie to robię z SVN?
Rozgałęziać się?
Czy GitHub (lub konkurent, taki jak BitBucket) ma jakieś funkcje organizacji projektu, których mi brakuje?
Nie jestem pewien, czy to pomoże, ale możesz rzucić okiem na:
Git jest wyposażony we wbudowane narzędzia GUI do zatwierdzania ( git-gui ) i przeglądania ( gitk ), ale istnieje kilka narzędzi innych firm dla użytkowników poszukujących doświadczenia specyficznego dla platformy.
... jeszcze raz, nie jestem pewien, czy którekolwiek z tych narzędzi pomogłyby Ci zrozumieć, co jest możliwe.
Żeby było jasne, nie jestem pewien twojego poziomu umiejętności Git ... jeśli dopiero zaczynasz przygodę z Git / GitHub, używanie GUI może być szybkim / łatwym sposobem na sprawdzenie rzeczy. Osobiście lubię korzystać z oficjalnych aplikacji GitHub na komputery Mac / Windows.
W przeciwnym razie, jaki jest ogólnie przyjęty „git sposób” radzenia sobie z tą sytuacją (odrzucanie projektów nieprzeznaczonych do wydania, przechowywanie ich offline, łączenie ich w jakikolwiek sposób itp.)?
Gdybym był tobą, korzystałbym z repozytoriów.
Ile prywatnych repozytoriów potrzebujesz?
Jeśli chcesz korzystać z GitHub, jednym z rozwiązań może być uzyskanie najtańszego planu i wykorzystanie kilku prywatnych repozytoriów do przechowywania całego kodu testowego / niepublicznego. Możesz po prostu użyć struktury folderów w swoim main
oddziale, aby utrzymać strukturę hierarchiczną, lub możesz użyć wielu gałęzi, aby zachować więcej osobności.
Wskazówka: jeśli używasz nowszej wersji Git, możesz pobrać określone gałęzie, używając git clone -b mybranch --single-branch git://sub.domain.com/repo.git
:
Muszę cię jednak ostrzec, że używanie gałęzi do organizowania kodu (np. Folderów) nie jest tak naprawdę najlepszym sposobem na robienie różnych rzeczy (chociaż nic nie mówi, że nie możesz podążać tą drogą).
( Wydaje się, że moja odpowiedź tutaj na powiązane informacje dotyczące oddziałów GitHub. )
Ponownie myślę, że wiele repozytoriów jest dobrym rozwiązaniem.
Możesz zadać sobie pytanie, czy Twój kod naprawdę musi być prywatny; czy to możliwe, że możesz upublicznić ten kod bez żadnych konsekwencji?
Umieść biblioteki na GitHub, kontynuuj hosting własnego SVN dla wszystkich innych projektów, użyj rozwiązania innego niż VCS do tworzenia kopii zapasowych poza witryną (blech),
Jeśli wybierzesz tę trasę, Dropbox (lub podobny) może być dobrym sposobem na uzyskanie kontroli formy i synchronizacji kopii zapasowej poza witryną.
Umieść biblioteki i oprogramowanie, które planuję wydać na GitHub (odpowiednio jako publiczny i prywatny), nadal hostuj swój własny SVN dla projektów, na których nie dbam tak bardzo i prawdopodobnie tylko wrócę, aby odświeżyć pamięć o tym, jak zaimplementować XYZ, zdecyduję, że jestem gotów odpisać je, jeśli mój dom imploduje (podwójny blech),
To prowadzi mnie z powrotem do pytania „Czy już płacisz za hosting? Jeśli tak, możesz zainstalować własnego hosta Git”; zaletą jest to, że możesz mieć cały kod źródłowy pod parasolem Git, nawet jeśli nie wszystkie są na tym samym hoście (tj. użyj GitHub do publicznych rzeczy, które chcesz pokazać).
Umieść wszystko na [GitHub i / lub BitBucket], zajmuj się posiadaniem absurdalnej liczby repozytoriów, szukając tego, czego potrzebuję / utrzymuję jakiś zestaw wskaźników offline na moim koncie [GitHub i / lub BitBucket] (triple blech)
---> Zobacz moją krótką odpowiedź powyżej. ^^^^^^