Hejo, chciałem się zapytać osób, które więcej mają ode mnie informacji.
Github (Microsoft) wprowadza na siłę (edited)2FA(/edited). Zerowe - nie lubię tej firmy za jej praktyki. Pierwsze - po co obowiązkowo? Jak komuś zależy, to niech sobie zakłada. A mi pachnie to szantażem jakimś. Drugie - weryfikacja przez Git Desktop albo SMS. W pierwszym przypadku instaluję być może konia trojańskiego od Microsoftu, w drugim daję im telefon, a może nie chcę (przy czym tego nie rekomendują, jako bezpieczne. To znowu -PO CO?). Gitlab to ma przez email.
Kilka opcji mają w Desktopie, co nie ma na www - np squash commits.
Bocianu używa gitlaba.
Co Wy programiści na to, czy raczej emigrować na bardziej ludzkie miejsca typu gitlab, czy też dać im mój komputer pod tę ich aplikację, zainstalować na oddzielnym koncie wszystko i się nie przejmować (chociaż to trudne).
Nie wydaje mi się, żeby to było merytoryczne pytanie, a raczej zaproszenie do dyskusji ideologicznej. Przecież jeden rabin powie tak, drugi rabin powie nie. Ja skupiam się na "getting job done" i pogodziłem się z tym, że jeśli nie płacę, to sam jestem towarem i apkę zainstalowałem. Zawsze możesz postawić sobie prywatnego gitlaba czy cokolwiek. Możesz też przenieść się do chatki w dziczy. Jak ostatnio sprawdzałem, to wciąż panuje w Polsce dość szeroka swoboda :)
Ja mam konto na GitHubie, ale jeszcze nic nie odważyłem się wrzuć, choć zamierzam to uczynić.
Co do autentykacji z wykorzystaniem numeru telefonu, to jestem generalnie za. Mój numer i tak znają dziesiątki tysięcy firm i osób w tym Microsoft :) Ale jeśli komuś nie po drodze z tym, to polecam Priv App. Darmowy numer komórki w postaci apki. Obsługuje SMS-y i rozmowy.
Mnie jeszcze nie pogonili, ale ja praktycznie nic nie wrzucam, więc pewnie dlatego :D Ale jak pogonią, to zlikwiduję konto i tyle. I tak już za dużo serwisów wymusiło na mnie podawanie danych. Chociaż już sam nie pamiętam, czy podawałem - ale raczej nie. A już najbardziej mnie wkurza, jak np. kupuję "głupią" etykieciarkę i apka się mnie o uprawnienia do kontaktów pyta. Albo kalkulator.
Tylko to wszystko funkcjonuje już od ponad roku (czyt. jest wymagane) o ile mnie pamięć nie myli, więc skąd nagłość?
Ja wybrałem SMS i numer telefonu nie musi być twój - może być zapasowy jeśli masz obawy co do niechcianych wiadomości (mi się nigdy nie zdarzyło).
Gitlab jest wygodniejszy (płacisz i wymagasz :) ), ale takich rozwiązań jest więcej, choćby bitbucket. Właściwie wystarczy wybrać to, czego najmniej się obawiasz.
Edit: cyt. "Kilka opcji mają w Desktopie, co nie ma na www - np squash commits." - tego nie rozumiem. Wszystko jest dostępne z poziomu gita, wystarczy odpalić konsolę, można także zrobić ręcznie rebase.
Edit2: do wrzucania kodu nie trzeba żadnej aplikacji. Ja wygenerowałem klucz, który podaję zamiast hasła i... i tyle.
O, ciekawe informacje :) Mnie gonią, bo "komituję". 15 grudnia odłączą możliwość logowania się (niby potem jeszcze 7 dni "hard naging"). Dlatego nie chce mi się z tym walczyć. 2fa rzeczywiście.
Jest jeszcze opcja passkey, przez telefon czy coś tam innego osobistego; niby od IOsa 16.0, ale na moim chyba działa (mam 15.x). Chyba, bo protokół idzie, ale nie wrzuciłem na github klucza jeszcze, to nie jestem pewien.
Co do gita, to jestem biegły jako programista, ale jako zarządzacz (czyli merge, rebase itp) to trochę nie rozumiem tych operacji typu rebase, nie czuję, jaki będzie efekt i czym to grozi, czy nie pogubi zmian. Pewnie dlatego, że nigdy nie musiałem tego robić i się dostatecznie nie wgryzłem. Merge spoko, jest intuicyjne. Dlatego squash dla takich jak ja może być wygodny.
Chodzi o zabezpieczenie dodatkowe przed sytuacjami przejęcia repozytoriów przez niepowołane osoby, co zaczęło zdarzać się coraz częściej i naraża coraz większe projekty na ryzyko wciągnięcia kodu z "zaatakowanych" repo.
Żeby zalogować się na twoje konto nie trzeba nawet znać hasła, wystarczy losowy ciąg znaków, który koliduje (w sensie traktowany jako poprawnhy) z hashem twojego hasła. Mało prawdopodobne, ale zawsze mnie bawi :)
Z tego co widzę, to jako 2FA można użyć dowolnej aplikacji TOTP - kod generowany na podstawie aktualnego czasu i klucza. Nie trzeba nawet używać Microsoft authenticatora, jak nie lubisz. Kompletnie nie widzę niczego złego w tym. To mniej więcej poziom wzrostu bezpieczeństwa ogólnego sieci przez praktycznie wymuszenie używania HTTP zamiast HTTPS - tylko tutaj mamy mniej roboty i problemów.
nie podawałem telefonu, mam apkę z kodami (TOTP). koledzy mają takie apki na kompie powsadzane, to w ogóle nie trzeba się do telefonu zbliżać i tylko robić copy/paste. można np. z konsoli i w nosie masz korpo shit: ->link<-
@jhusak Ja jestem dalki od bycia administratorem repozytoriów, ale w robocie już od dawna tam gdzie się da nie używam merge tylko robię rebase. Jedyne co to robi, to tak jakbyś zaczął commitować już na heada, z którym chcesz się zmerdżować. Dzięki temu nie ma rozdwojenia, nie ma commitu merdżującego i w ogóle jest elegancko
Nie wiem czy to wniesie coś do tematu, ale nadmienię tylko że są alternatywy jak by co. Ja osobiście używam ->link<- i do tego używam aplikacji ->link<- Całość za free.
Na BitBuckecie trzymamy w prywatnych repozytoriach nasze dema, bo tam prywatne były za darmo od zawsze. A Sourcetree mimo pewnych wad to jednak najlepszy klient gita z GUI jaki znalazłem i używam od lat.
Merge zasadniczo wrzuca z jednej gałęzi do drugiej i tyle. Natomiast rebase (pomimo że pozornie robi to samo, czyli nanosi zmiany z jednej gałęzi do drugiej) nie tworzy nowego commita tylko scala commity z dwóch gałęzi, tworząc hronologiczną kolejność. Rebase jest ważny, jeśli chcesz mieć aktualne repo w branczu nad którym pracujesz (wyrównanie z gałęzią). Dodatkowo, gdy nad kodem pracuje kilka(naście) osób, nie zaśmiecacie sobie historii przy nadchodzącym merge. Znam takich, którzy preferują jeszcze drogę merge gałezi głóœnej (trunk/master) do brancha :) kto co lubi
A co do wątku, z kodem dawno uciekłem na gitlaba prywatnego. Niestety github też mi jest potrzebny - wiele narzędzi wymaga symbiozy z nim, np BlackFire. Więc mus trzeba było zgodzić się na 2FA - szczerze wątpię, by pisali do mnie smsy lub dzwonili.
@sun Akurat subversion ma dla mnie jedną podstawową wadę - jest centralny i jak centrum padnie to padakamadafaka. Miałem tak kilka razy, a np. taki atalan przez to umarł, bo jakby każdy miał historię, to by pociągnął chociażby taki ja. Z Gitem miałem już 2 razy konieczność reperacji remote z lokalnego repo. Takie wredne, bo wszystko działało, tylko git clone nie.
Ale to tak na marginesie.
Poza tym nie interesują mnie klienty git, robię z konsoli.
@Santyago - właśnie z tym rebase to rozumiem tak, że zmiany są nakładane nie w przeplocie uwzględniając czasy zmian jak przy merge, tylko najpierw 1 set, a potem drugi. Tylko nie wiem, na co zwrócić uwagę, żeby czegoś nie pogubić.
@jhusak - tak, to są zady i walety, ale jest też takie śmieszne rozwiązanie, kiedyś to testowałem, taki mix git+sub, najciekawsze, że wtedy klienta używasz jak chcesz, w sensie git lub sub, a ten mikser tam to jakoś żeni i nawet to działa. Mam to szczęście, że przez 20 lat nie zaliczyłem padu serwera z repo, ale... dmucham na zimne.