Wątek przeniesiony 2023-03-09 08:37 z Gamedev przez Patryk27.

Darmowe narzędzie do kontroli wersji offline

0

Witam
Chciałem się dowiedzieć czy istnieje jakieś darmowe narzędzie do tworzenia repozytorium na komputerze zamiast w Internecie?
Zależy mi na tym ponieważ mój projekt ma sporo plików graficznych GitHub od razu ogranicza mi przez to że jest tylko 1GB transferu miesięcznie.
Ponoć jest GitLab, ale nie pobieram, ponieważ tylko 30 dni okres próbny.

4

Co chcesz uzyskać? Bo przecież lokalnie jak zrobisz w projekcie git init to masz już podpiętego gita właśnie lokalnie.

0

Ewentualnie:

git init --bare project.git
0

Ale wszelkie zmiany i wszystkie aktualizacje miał lokalnie.
Żebym mógł dodawać Commit lokalnie i robić całą historię zmian a nie że wszystko musze dawać na GitHub-a
PS: Tylko i wyłącznie lokalnie

7

Git jest w zamyśle lokalnym narzędziem; jeśli obawiasz się, że wersja konsolowa będzie niewygodna w użyciu (fair enough!), pogooglaj za git gui, git gui client, git porcelain itd.

Ja sam wykorzystuję Magita, ale jeśli nie jest Ci po drodze z Emacsem, to masz do wyboru jeszcze GitKraken, VSCode, gitk (tylko do przeglądania, afair) i dziesiątki innych narzędzi.

4

Kolega popełnił błąd, bo zamiast użyć jakiegoś agnostycznego GUI to wybrał vendor-locked GitHub Desktop i przez to utożsamia gita z serwisami hostującymi repozytoria. Warto zapamiętać, że:

  1. git to nie SVN i by design nie wymaga żadnych serwerów
  2. lokalne repozytoria nie różnią się niczym od hostowanych zdalnie
  3. jest wiele narzędzi ułatwiających pracę z git, a praktycznie każde IDE posiada wbudowaną integrację.

Wg mnie https://www.gitkraken.com/ jest spoko, wersja free jest For solo devs on public & local repos only, więc w tym wypadku pasuje idealnie.

0

GitKraken rzeczywiście spełnia moje oczekiwania, jednak pokazuje mi że to wersja Trial.

1

Obadaj Gitlaba CE - to ten self-hosted. Możliwe, że da się tam skorzystać z LFS (https://docs.gitlab.com/ee/topics/git/lfs/)
Poza tym możliwe że coś żle przeczytałeś, albo patrzyłeś nie na tę wersję - ale Gitlab self-hosted jest darmowy, ale możliwe że jest to model taki, że pierwszy miesiąc to takie demo pełnej wersji (trial na 30 dni), a potem jeśli byś chciał korzystać z pełnej funkcjonalności to zapłacisz, ale moim zdaniem ta darmowa ciutkę przycięta wersja powinna Ci wystarczyć.

1

@axelbest: ale Ty czytałeś w ogóle wątek? Typ chce wizualizować historię commitów, bo nie ogarnia, że nie potrzebuje do tego zdalnych repo, a Ty mu z GitLab self-hosted.

0

@Saalin: Tak czytalem, ale jak OP wspomina Zależy mi na tym ponieważ mój projekt ma sporo plików graficznych GitHub od razu ogranicza mi przez to że jest tylko 1GB transferu miesięcznie. W przypadku GitLaba postawionego lokalnie ten problem odpada. Poza tym, self-hosted gitlab daje prawie takie same wrażenia z interfejsu jak github.

No ale tak... kłócić się nie będę. Mam przy okazji pytanie - jeśli OP będziesz chciał żeby ktoś mu zaktualizował jego lokalne repo - jak by to miało wyglądać? Zwłaszcza przy dużych plikach graficznych? Jego komp miałby być always-on?

0

Nie chcę niepotrzebnie męczyć się z wierszem poleceń. Jesteśmy w XXI wieku. To nie czasy XP czy 98 żeby pisać w wierszu poleceń.
Chcę sobie ułatwić pracę a nie utrudniać.

0
axelbest napisał(a):

@Saalin: Tak czytalem, ale jak OP wspomina Zależy mi na tym ponieważ mój projekt ma sporo plików graficznych GitHub od razu ogranicza mi przez to że jest tylko 1GB transferu miesięcznie. W przypadku GitLaba postawionego lokalnie ten problem odpada. Poza tym, self-hosted gitlab daje prawie takie same wrażenia z interfejsu jak github.

No ale tak... kłócić się nie będę. Mam przy okazji pytanie - jeśli OP będziesz chciał żeby ktoś mu zaktualizował jego lokalne repo - jak by to miało wyglądać? Zwłaszcza przy dużych plikach graficznych? Jego komp miałby być always-on?

No nie czytałeś:

Ale to jedna zmiana, a chcę jak na internetowym repo mieć całą dostępną gałąź zmian z komentarzami.
I żeby miał interfejs graficzny. Jakoś nie wyobrażam sobie przy 200 zmianach przeszukiwać wiersz poleceń. Poza tym nie pokaże mi jakie zmiany były przed wprowadzeniem tak jak w GitHub czy SourceTree.

Czy w ogóle padła tu sugestia, że z kimś współpracuje i potrzebuje synchronizować wiele repozytoriów? Bo ja tu widzę potrzebę GUI, zwykłego GUI do gita jakich wiele - wyświetlić graf branchy, wyświetlić diffy między branchami etc. Problem XY - napalił się na coś podobnego do GitHuba, bo tak, GH ładnie to wyświetla, ale to nie znaczy, że nie jest to osiągalne w inny sposób.

No i w jaki sposób self-hosted rozwiązuje problem Jego komp miałby być always-on?? :D

1

TortoiseGit
screenshot-20230309094224.png

0

Większość IDE (a przynajmniej te z którymi ja miałem styczność) mają wbudowane narzędzia do obsługi repozytorium GIT - z jakiego środowiska korzystasz?

1

GitKraken jest dla mnie dobrym rozwiązaniem. Szukam programu z interfejsem graficznym ponieważ nie chce niepotrzebnie zapamiętywać i wpisywać komend do wiersza poleceń.
Dlatego interfejs graficzny jest lepszy i dlatego szukałem takiego programu.

2

Jak masz zainicjowanego gita w projekcie to masz w zasadzie wszystko co potrzeba. Musisz tylko znaleźć sobie jakieś wygodne narzędzie. Jak piszesz program to pewnie w jakimś IDE. Zobacz czy nie ma rozszerzeń do tego IDE do wizualizacji historii czy innych najczęściej wykonywanych czynności.
Teraz powiedzmy, że na tym samym kompie postawisz sobie np. Gitlaba. To po prostu to samo masz w dwóch miejscach, ale wciąż na tym samym komputerze. Gitlab ma zaletę jeśli jest na innym komputerze, wtedy masz backup kodu. Dodatkowo taki komputer może być dostępny 24/7 i inni też mogą się do niego łączyć.
Oczywiście to w skrócie bo pod spodem i tak jest GIT sam w sobie.
Podsumowując IMHO zacznij od znalezienia fajnej wtyczki do swojego IDE lub zoabacz czy już czegoś nie ma. Dwa pomyśl o backupie. Bo pchając kod na Github taki backup masz. A trzymając to tylko lokalnie możesz stracić mnóstwo pracy.

0
tdx110 napisał(a):

GitKraken jest dla mnie dobrym rozwiązaniem. Szukam programu z interfejsem graficznym ponieważ nie chce niepotrzebnie zapamiętywać i wpisywać komend do wiersza poleceń.
Dlatego interfejs graficzny jest lepszy i dlatego szukałem takiego programu.

https://git-scm.com/downloads/guis całe stado

1
tdx110 napisał(a):

Zależy mi na tym ponieważ mój projekt ma sporo plików graficznych GitHub od razu ogranicza mi przez to że jest tylko 1GB transferu miesięcznie.

Ograniczenia transferu dotyczą tylko Git LFS (https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-storage-and-bandwidth-usage).
Jeśli każdy pojedynczy plik mieści się w dopuszczalnym rozmiarze 100MB ( https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github ), to możesz bez większych problemów używać normalnego repozytorium, bez zawracania sobie głowy LFS. Mam na GitHubie kilka repozytoriów gier, które ważą po kilka GB. Rekordzista sprzed kilku lat to 6.2GB i ciągle jest na serwerze. Teraz maksymalny rozmiar repo to 5GB ( https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github#repository-size-limits ).

BTW. jeśli kupujesz assety graficzne/dźwiękowe i ładujesz całą paczkę do projektu, to projekt szybko spuchnie. Ja ładuję kupione assety do "pustego projektu" i stamtąd przenoszę wybrane do projektu, nad którym pracuję.

0

Ale jakie zapamiętywanie komend, tobie potrzebne jest git commit i tyle. Zaczynanie obsługi GITa od jakiegoś GUI jest od d**y strony moim zdaniem. W 10 minut ogarniesz komendy w wierszu poleceń i przynajmniej będziesz wiedział do czego to służy i jak działa.

1 użytkowników online, w tym zalogowanych: 0, gości: 1