Patrzę na Google Code, SourceForge, BitBucket i GitHub, ponieważ wydają się być dużymi graczami. Nie podzieliłem jeszcze wszystkich funkcji, które one udostępniają, ale naprawdę szukam miejsca, w którym mogę napisać kod, który piszę (moje rozwiązania dla Project Euler, kod, który mógłbym napisać dla Code Golf / Programowanie łamigłówek Stack Stack itd.) W scentralizowanej lokalizacji.
Moje pierwsze pytanie brzmi: czy w takiej sytuacji jedna usługa wyróżnia się spośród innych?
Po wybraniu usługi muszę wybrać sposób dystrybucji kodu. Widzę kilka opcji konfigurowania repozytoriów i projektów. Jedno repozytorium może pomieścić dowolną liczbę projektów - na przykład mógłbym mieć repozytorium „Project Euler Toma Owensa” dla wszystkich moich różnych rozwiązań Project Euler, z projektami dla każdego języka i środowiska w katalogach w tym repozytorium, innym repozytorium dla moich różnych rozwiązań Code Kata i tak dalej. Albo mógłbym podzielić coś takiego na język (mieć rozwiązania Project Euler w Pythonie w jednym repozytorium, rozwiązania PE w Javie w innym repozytorium i rozwiązania Code Kata C ++ w trzecim repozytorium).
Moje drugie pytanie: Czy istnieją jakieś ograniczenia lub konwencje dotyczące określania sposobu udostępniania próbek kodu, które zdecydujesz się otworzyć, szczególnie jeśli chodzi o sposób tworzenia repozytoriów? Myślę, że może to być podyktowane przez wybraną przez ciebie usługę (w oparciu o konwencje społeczności).
źródło
Zapomniałeś jednej opcji - hosting własnego repozytorium. Naprawdę był to jedyny sposób na lot do niedawna.
Gdybym musiał go dzisiaj użyć, wybrałbym bitbucket głównie dlatego, że pozwalają one na prywatne repo i skały rtęciowe.
źródło
Po użyciu Google Code, SourceForge i GitHub w różnych momentach, powiedziałbym, że GitHub jest znacznie lepszy niż pozostałe dwa:
źródło
Moje osobiste projekty nie są bardzo duże (dużo tekstu, bez grafiki), więc mam repozytoria Mercurial z masterami w DropBox. Jest to szybki sposób na rozpoczęcie tworzenia kopii zapasowej (jeśli DropBox zniknie, nadal mam kopię repozytorium na każdym komputerze, który posiadam) i przenośność.
Zakładając, że mam projekt, który dochodzi do punktu, w którym chcę go rozpowszechnić, zawsze mogę przenieść go do Bitbucket, aby uzyskać lepszą widoczność. Nie obejmuje to kodu dla rozwiązań Euler Project.
źródło