Hvad er GitHub, og hvad bruges det til?
GitHub er en hjemmeside og en tjeneste, som vi hører nørderne om hele tiden, men mange forstår ikke rigtigt hvad det gør. Vil du vide, hvad hele GitHub hubbub handler om? Læs videre for at finde ud af.
"Git" i GitHub
For at forstå GitHub skal du først forstå Git. Git er et open source-versionsstyringssystem, der blev startet af Linus Trovalds-den samme person, der skabte Linux. Git ligner andre versionsstyringssystemer-Subversion, CVS og Mercurial for at nævne nogle få.
Så, Git er et versionsstyringssystem, men hvad betyder det? Når udviklere opretter noget (en app, for eksempel), ændrer de konstant ændringer i koden, frigiver nye versioner op til og efter den første officielle (ikke-beta) udgivelse.
Versionsstyringssystemer holder disse revisioner lige, og gemmer ændringerne i et centralt lager. Dette giver udviklere mulighed for nemt at samarbejde, da de kan downloade en ny version af softwaren, foretage ændringer og uploade den nyeste revision. Hver udvikler kan se disse nye ændringer, downloade dem og bidrage.
Tilsvarende kan folk, der ikke har noget at gøre med udviklingen af et projekt, stadig downloade filerne og bruge dem. De fleste Linux-brugere skal være fortrolige med denne proces, da der er brug for Git, Subversion eller en anden lignende metode, er temmelig almindelig for at downloade de nødvendige filer - især som forberedelse til at kompilere et program fra kildekode (en almindelig praksis for Linux-geeks).
Git er det foretrukne versionsstyringssystem for de fleste udviklere, da det har flere fordele i forhold til de andre tilgængelige systemer. Det gemmer filændringer mere effektivt og sikrer fil integritet bedre. Hvis du er interesseret i at kende detaljerne, har Git Basics-siden en grundig forklaring på, hvordan Git fungerer.
"Hub" i GitHub
Vi har fastslået, at Git er et versionsstyringssystem, der ligner bedre end de mange tilgængelige alternativer. Så hvad gør GitHub så specielt? Git er et kommandolinjeværktøj, men det center, hvor alle ting, der involverer Git, drejer sig om, er hub-GitHub.com-hvor udviklere gemmer deres projekter og netværk med ligesindede mennesker.
Lad os gå over et par af hovedårsagerne til, at geeks gerne bruger GitHub, og lære nogle terminologier undervejs.
Repository
Et lager (normalt forkortet til "repo") er et sted, hvor alle filer til et bestemt projekt er gemt. Hvert projekt har sit eget repo, og du kan få adgang til det med en unik webadresse.
Forking a Repo
"Forking" er, når du opretter et nyt projekt baseret på et andet projekt, der allerede eksisterer. Dette er en fantastisk funktion, der kraftigt tilskynder til videreudvikling af programmer og andre projekter. Hvis du finder et projekt på GitHub, som du gerne vil bidrage til, kan du gaffel repo, foretage de ønskede ændringer, og frigive det reviderede projekt som en ny repo. Hvis det originale arkiv, du forkedede til at oprette dit nye projekt, bliver opdateret, kan du nemt tilføje disse opdateringer til din nuværende gaffel.
Træk anmodninger
Du har forked et lager, foretaget en stor revision af projektet, og vil have det anerkendt af de oprindelige udviklere - måske endda medtaget i det officielle projekt / lager. Du kan gøre det ved at oprette en pull-forespørgsel. Forfatterne til det oprindelige arkiv kan se dit arbejde, og derefter vælge om det skal accepteres i det officielle projekt. Når du udsteder en pull-anmodning, giver GitHub et perfekt medium til dig og hovedprojektets vedligeholder at kommunikere.
Social networking
Det sociale netværk aspekt af GitHub er nok den mest kraftfulde funktion, så projekter kan vokse mere end bare om nogen af de andre funktioner, der tilbydes. Hver bruger på GitHub har deres egen profil, der fungerer som et resume af sorter, der viser dit tidligere arbejde og bidrag til andre projekter via pull requests.
Projektrevisioner kan diskuteres offentligt, så en masse eksperter kan bidrage med viden og samarbejde om at fremme et projekt fremad. Forud for fremkomsten af GitHub vil udviklere, der er interesseret i at bidrage til et projekt, normalt finde nogle midler til at kontakte forfatterne - sandsynligvis via e-mail - og overbevise dem om, at de kan stole på, og deres bidrag er legitime.
Changelogs
Når flere mennesker samarbejder om et projekt, er det svært at holde styr på revisioner - hvem har ændret hvad, hvornår, og hvor disse filer gemmes. GitHub tager sig af dette problem ved at holde styr på alle de ændringer, der er blevet skubbet til depotet.
GitHub er ikke kun for udviklere
Alt dette snak om, hvordan GitHub er ideel til programmører, kan få dig til at tro, at de er de eneste, der finder det nyttigt. Selv om det er meget mindre almindeligt, kan du faktisk bruge GitHub til alle typer filer. Hvis du har et hold, som hele tiden ændrer et orddokument, kan du for eksempel bruge GitHub som dit versionsstyringssystem. Denne praksis er ikke almindelig, da der i de fleste tilfælde er bedre alternativer, men det er noget at huske på.
Nu hvor du ved hvad GitHub handler om, er du klar til at komme i gang? Gå videre til GitHub.com, og sørg for at tjekke deres hjælpesider efter tilmeldingen.