Jaka jest różnica między GitHub a Gist?


573

Jaki jest cel gist i czym różni się od zwykłego udostępniania / utrzymywania kodu za pomocą GitHub?


20
Gist to prosty sposób na udostępnianie fragmentów i past innym osobom.
Felix Kling

154
Jak to jest offtopic? Rozważam narzędzia programistyczne gist i github , powszechnie używane przez programistów . To pytanie pasuje idealnie.
golem,

50
Głosowałem za ponownym otwarciem tego pytania, ponieważ jest ono przydatne i dotyczy narzędzi programowych powszechnie używanych przez programistów. Strona „ About Gists ” na Github zawiera przydatne informacje, ale nie odpowiada na pytanie o kluczowe różnice i w jakich okolicznościach użytkownik może preferować jedną z nich. Osobiście chciałbym zobaczyć bardziej szczegółowe odpowiedzi na to pytanie.
Simon East

6
Ważną różnicą, o której nigdzie nie wspominam, jest to, że Gist zrezygnował z obsługi katalogów. Zauważyłem to tylko, gdy natknąłem się na ten problem: stackoverflow.com/a/27677649/5343341
Robotic-Brain

1
Jak tworzone są wersje istoty? Automatycznie za każdym razem, gdy znak jest wprowadzany, czy istnieje mechanizm zatwierdzania? Przykro mi, że mogłem porozmawiać z tym wątkiem, ale jest to wygodne miejsce!
seinecle

Odpowiedzi:


348

GitHub to cała witryna. Gists to szczególna usługa oferowana na tej stronie, a mianowicie fragmenty kodu podobne do pastebin. Jednak wszystko jest sterowane przez kontrolę wersji git, więc gists mają również pełną historię wersji.


191
Jaka jest różnica między Gist a repozytorium? Jakie są zalety i wady każdego z nich? (Wierzę, że o to zamierzał OP)
chharvey

59
@ TestSubject528491: Repozytorium jest dla plików utworzonych przez użytkownika. Istotą jest kawałek kodu (zwykle niepowiązany z innym kodem), na przykład w celu omówienia lub podania przykładów.
Kerrek SB

19
@ TestSubject528491 Jak mówi Kerrek, Gists są zasadniczo odpowiednikami Pastebin Githubów.
Phill Healey,

45
@Pacerier: Oczywiście, że możesz. Ale wtedy musisz samodzielnie zarządzać plikami, klonować repozytorium, zatwierdzać wypychanie i tak dalej. Gists pozwala edytować tekst bezpośrednio w przeglądarce i nie trzeba zarządzać plikami. Jak powiedziałem, ten sam podstawowy mechanizm kontroli wersji, ale zaspokajający różne potrzeby.
Kerrek SB

19
@ Simon Wschodnie główne różnice między github a gists dotyczą liczby funkcji i interfejsu użytkownika: jeden został zaprojektowany z myślą o dużej liczbie funkcji i elastyczności, co dobrze pasuje zarówno do małych, jak i bardzo dużych projektów, podczas gdy gists są tylko dobre dopasowanie do bardzo małych projektów. Na przykład gists obsługują wiele plików, ale interfejs jest bardzo prosty i mają ograniczone funkcje, więc nie mają nawet przeglądarki plików, ani problemów, żądań ściągania ani wiki. Jeśli nie musisz tego mieć, gists są bardzo ładne i bardziej dyskretne. Podobnie jak komentarze zamiast odpowiedzi w SO.
joseLuís

136

Mój osobisty pogląd na Gist i GitHub:

Gist: Gist to prosty sposób na dzielenie się fragmentami kodu i pastami z innymi. Służy do dzielenia się próbką kodu lub techniki ze współpracownikami lub przyjaciółmi.

I

Z drugiej strony GitHub GitHub zapewnia platformę do udostępniania całego projektu jako repozytorium zespołowi (repozytorium prywatne) lub całemu światu (repozytorium publiczne).

Oba będą rejestrować szczegóły wersji.


1
czy możesz podać szczegółowy przykład
Chetan

6
@Chetan przykład gist (zwróć uwagę, że jest to tylko pojedynczy plik, tak naprawdę nie potrzebuje żadnych plików pomocniczych, nikt nigdy nie będzie kupował biletów itp. (Na marginesie, że konfiguracja jest prawdopodobnie stara, więc nie używaj) ). przykład projektu jest dość mały, ale ktoś może otworzyć bilet z sugestiami i łatwym do zapamiętania adresem vs adres URL gist
vrillusions

45

Główne różnice między github a gists dotyczą liczby funkcji i interfejsu użytkownika:

Jeden został zaprojektowany z myślą o dużej liczbie funkcji i elastyczności, co jest dobrym rozwiązaniem zarówno dla małych, jak i bardzo dużych projektów, podczas gdy gisty są dobre tylko dla bardzo małych projektów.

Na przykład gists obsługują wiele plików, ale interfejs jest bardzo prosty i mają ograniczone funkcje, więc nie mają nawet przeglądarki plików, ani problemów, żądań ściągania ani wiki. Jeśli nie musisz tego mieć, gists są bardzo ładne i bardziej dyskretne. Podobnie jak komentarze zamiast odpowiedzi w SO.

Uwaga: Dzięki @Qwerty za sugestię uczynienia mojego komentarza prawdziwą odpowiedzią.


4
Także „Listy są dla plików, repozytoria są dla katalogów”, twitter.com/pavelrepin/status/297473901884223488
Qwerty

5
Moim zdaniem jest to jedyna jak dotąd prawdziwa odpowiedź na pytanie. Każda inna odpowiedź przedstawia tylko cel witryn, nie wyjaśniając, jakie funkcje i różnice umożliwiają ten cel. To tak, jakby powiedzieć „Ten samochód ma jechać na plażę, ale ten samochód ma jechać do pracy”, nie wspominając o tym, że samochód plażowy jest kabrioletem.
DavidS

20

Moje osobiste zrozumienie lub powiedzieć, że osobiście używam Gist i Github to:

  • Github

Duża praca projektowa. Jeśli chcesz zbudować stronę internetową, opracować aplikację mobilną lub internetową lub wykonać zadanie ze znajomymi, użyj oczywiście github.

  • Sens

bardziej jak notatka. na przykład możesz napisać implementację małej funkcji i udostępnić ją na swoim blogu lub zapisać, co myślisz o projekcie i podzielić się nią z kolegami z drużyny. Podobnie jak w powyższych odpowiedziach, gist jest używany do bardziej przypominania fragmentu kodu. Więc normalnie, jeśli pracujesz nad projektem, używasz github.


3
Analogia „memo” wyjaśniła mi to - w przeciwnym razie musiałbym zapytać „co to jest pastebin?”
YCode

18

Dostęp do Gist można uzyskać, odwiedzając następujący adres URL gist.github.com . Alternatywnie możesz uzyskać do niego dostęp z poziomu konta Github (po zalogowaniu), jak pokazano na poniższym obrazku:

jak uzyskać dostęp do Gist z poziomu konsoli github

 

Github: usługa hostingowa zawierająca internetowe repozytorium git. Zawiera całą funkcjonalność git z dodanymi dodatkowymi funkcjami.

 

Gist: Jest dodatkową funkcją dodaną do github, która pozwala na dzielenie się fragmentami kodu, notatkami, listami rzeczy do zrobienia i więcej. Możesz zapisać swoje Gists jako tajne lub publiczne. Tajne listy są ukryte przed wyszukiwarkami, ale widoczne dla wszystkich, którym udostępniasz adres URL.

Na przykład. Jeśli chcesz napisać prywatną listę rzeczy do zrobienia. Możesz napisać jeden używając Github Markdown w następujący sposób:

jak napisać prywatną listę rzeczy do zrobienia

NB: Ważne jest zachowanie białych znaków, jak pokazano powyżej między myślnikiem i nawiasami. Ważne jest również, aby zapisać plik z rozszerzeniem .md, ponieważ chcemy, aby znacznik był poprawnie sformatowany. Pamiętaj, aby zapisać tę Gistę w tajemnicy, jeśli nie chcesz, aby inni ją widzieli.

 

Wynik końcowy wygląda jak na poniższym obrazku. Pola wyboru można kliknąć, ponieważ zapisaliśmy tę listę z rozszerzeniem .md

Jak wygląda lista rzeczy do zrobienia, jeśli poprawnie ją sformatowałeś


4
„Pamiętaj, aby zachować tę tajemnicę jako sekret, jeśli nie chcesz, aby inni ją widzieli”. Zachowaj ostrożność - inne osoby mogą zobaczyć Twój tajny przekaz, jeśli akurat mają jego adres URL. Zobacz help.github.com/articles/about-gists/#secret-gists
Gan

Jak to odpowiada różnicy między Gists a Github? (lub repozytorium Github - pytanie, które OP prawdopodobnie naprawdę chciał zadać) To wcale nie odnosi się do pierwotnego pytania
JoelAZ 6'18

Teraz działa nawet z „gist.new”
Abhik Banerjee

3

„Gists to tak naprawdę repozytoria Git, co oznacza, że ​​możesz rozwidlać lub klonować dowolną gistę, nawet jeśli nie jesteś oryginalnym autorem. Możesz także wyświetlić pełną historię zatwierdzeń, w tym różnic. ”

→ sprawdź oficjalną dokumentację github

Kluczową różnicą jest to, że są to pojedyncze pliki.

Aha: gists może być „tajny” (jak w: prywatny adres URL) również bez bycia płatnym klientem github, jeśli dobrze rozumiem ...


4
Listy mogą mieć wiele plików
przed


wow, żebym mógł sklonować swoją zawartość, np. git clone https://gist.github.com/jxramos/b227766a5f593b1154449217a656158dktóra tworzy katalog w moim systemie plików o nazwie b227766a5f593b1154449217a656158di który zawiera semantic_notes.mdw tym przypadku pojedynczy plik . Eksperymentuję rozwijając moją istotę jak repozytorium. Dobrze wiedzieć. Tak musi być również dodawanie komentarzy do korekt gist. Nigdy nie widziałem, jak to zrobić z edytora interfejsu użytkownika.
jxramos

3

GitHub Gists

Gist lub nie. To jest pytanie za 64 USD ...

GitHub GISTSingle ( or, multiple ) Simple Markdown Filesz repo-jak cechy, które mogą być rozwidlone lub sklonowanych (jeśli publiczny).

W przeciwnym razie nie jeśli prywatny.

Trochę jak fantazyjny notatnik, który można udostępnić.

Podobny do tego komentarza, który teraz piszę, ale nieco bardziej skomplikowany.

Zważywszy, że na urzędnika , pełne GitHub repo jest pełnowartościowy repozytorium kodu źródłowego src, dokumentów uzupełniających (przecen lub HTML, lub oba) docslub root, obrazy png, ico, svgoraz config.sysplik do biegania zmienne yaml umieszczona na serwerze Jekyll.

Czy prosty plik Gist obsługuje przód Yamla?

Ja nie sądzę.

Z oficjalnej dokumentacji GitHub Gist ...

Edytor treści jest obsługiwany przez CodeMirror .

Możesz jednak skopiować publiczną Gist (lub prywatną Gist, jeśli właściciel udzielił Ci dostępu poprzez link do prywatnej Gist) ...

Następnie możesz osadzić tę publiczną Gist w „oficjalnym” repozytorium page.mdza pomocą Visual Studio Code w następujący sposób:

„Możesz osadzić istotę w dowolnym polu tekstowym obsługującym Javascript, takim jak post na blogu”.

„Aby uzyskać embedkod, kliknij ikonę schowka obok Embed URLprzycisku treści.”

To fajna funkcja.

Sprawia, że ​​chcę przeszukiwać (odkrywać) istoty innych ludzi lub OPG i włączać ich „publiczne” prace do moich pełnych repozytoriów roboczych.

„Możesz odkryć listy PUBLICZNE utworzone przez innych, wchodząc na stronę główną listy i klikając link ...

All Gists {: title = 'Kliknij, aby sprawdzić funkcję Discover w GitHub Gists'} {: target = '_ blank'}. ”

Zastrzeżenie . Brak obsługi tagów Liquid w GitHub Gist.

Podejrzewam, że jeśli znajdę coś korzystnego, zawsze mogę odpisać lub zacytować to źródło, jeśli użyję pracy w moich pełnych repozytoriach roboczych.

Gdzie umieszczana jest ukryta licencja na wszystkie informacje udostępnione przez ich autorów?

Robert

PS To jest dobry komentarz. Myślę, że gistzmienię to w i sprawię, że będzie można go przeszukiwać publicznie w GitHub Gists.

Uwaga . Podczas osadzania <script></script>tag HTML w organizmie pliku Markdown (.md NumerKopiiZapasowej), może pojawić się ostrzeżenie „MD033” z puchu .

Nie powinno to jednak wpływać na renderowanie danych (src) wywoływanych z poziomu scriptznacznika.

Aby zmienić domyślną flagę ostrzegawczą w celu uwzględnienia wywoływanej zawartości scriptznacznika w programie Visual Studio Code, dodaj wpis do obiektu konfiguracji Markdownlint w User Settingspliku Json w następujący sposób:

// Begin Markdownlint Configuration Object
"markdownlint.config": {
  "MD013": false,
  "MD033": {"allowed_elements": ["script"]}
}// End Markdownlint Configuration Object

Uwaga . Rozwiązanie pochodzące z GitHub Commit autorstwa Davida Ansona


Poświęć chwilę, aby przeczytać pomoc dotyczącą edycji w centrum pomocy. Formatowanie w przypadku przepełnienia stosu jest inne niż w innych witrynach.
Isiah Meadows

Ponadto GitHub Gist pozwala pisać o wiele więcej niż tylko kod. Oto konkretny przykład tego , i tak, faktycznie użyłem Git z tym. (Możesz faktycznie traktować je jako pełne repozytorium od klienta Git, w tym dodatkowe gałęzie; po prostu nie masz całego zarządzania problemami, interfejsów internetowych do podstawowych rzeczy Git i innych drobiazgów, które towarzyszą temu, że są we właściwej GH repo.)
Isiah Meadows,

2

GISTS Gist to wyjątkowa usługa świadczona przez GitHub. Korzystając z tej usługi, możesz dzielić się swoją pracą publicznie lub prywatnie. Możesz udostępnić pojedynczy plik, artykuły, pełne aplikacje lub kod źródłowy itp.

GitHub to znacznie więcej niż tylko Gists. Zapewnia ogromne usługi grupowania projektu lub programów cyfrowych zasobów w scentralizowanej lokalizacji zwanej repozytorium i udostępniania ich wśród interesariuszy. Repozytorium GitHub przechowuje lub utrzymuje wiele wersji plików lub historię zmian i możesz pobrać określoną wersję pliku, kiedy chcesz. Natomiast gist utworzy każdy post jako nowe repozytorium i zachowa historię pliku.

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.