|
|
2 months ago | |
|---|---|---|
| .. | ||
| README.md | 2 months ago | |
README.md
Introduktion till GitHub
Den här lektionen täcker grunderna i GitHub, en plattform för att hosta och hantera ändringar i din kod.
Sketchnote av Tomomi Imura
Quiz före föreläsningen
Introduktion
I den här lektionen kommer vi att gå igenom:
- att spåra det arbete du gör på din dator
- att arbeta med projekt tillsammans med andra
- hur man bidrar till öppen källkod
Förkunskaper
Innan du börjar, kontrollera om Git är installerat. Skriv i terminalen:
git --version
Om Git inte är installerat, ladda ner Git. Ställ sedan in din lokala Git-profil i terminalen:
git config --global user.name "ditt-namn"git config --global user.email "din-epost"
För att kontrollera om Git redan är konfigurerat kan du skriva:
git config --list
Du behöver också ett GitHub-konto, en kodredigerare (som Visual Studio Code), och du behöver öppna din terminal (eller: kommandotolken).
Navigera till github.com och skapa ett konto om du inte redan har ett, eller logga in och fyll i din profil.
✅ GitHub är inte den enda kodförvaringen i världen; det finns andra, men GitHub är den mest kända.
Förberedelse
Du behöver både en mapp med ett kodprojekt på din lokala dator (laptop eller PC) och ett offentligt repository på GitHub, som kommer att fungera som ett exempel på hur man bidrar till andras projekt.
Kodhantering
Låt oss säga att du har en mapp lokalt med ett kodprojekt och du vill börja spåra dina framsteg med hjälp av git - versionshanteringssystemet. Vissa jämför att använda git med att skriva ett kärleksbrev till ditt framtida jag. Genom att läsa dina commit-meddelanden dagar, veckor eller månader senare kommer du att kunna minnas varför du fattade ett beslut, eller "rulla tillbaka" en ändring - det vill säga, när du skriver bra "commit-meddelanden".
Uppgift: Skapa ett repository och commit:a kod
Se video
-
Skapa repository på GitHub. På GitHub.com, i fliken repositories, eller från navigeringsfältet uppe till höger, hitta knappen new repo.
- Ge ditt repository (mapp) ett namn.
- Välj create repository.
-
Navigera till din arbetsmapp. I din terminal, byt till mappen (även kallad katalogen) du vill börja spåra. Skriv:
cd [name of your folder] -
Initiera ett git-repository. I ditt projekt, skriv:
git init -
Kontrollera status. För att kontrollera statusen för ditt repository, skriv:
git statusUtdata kan se ut ungefär så här:
Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: file.txt modified: file2.txtVanligtvis berättar kommandot
git statussaker som vilka filer som är redo att sparas till repositoryt eller har ändringar som du kanske vill bevara. -
Lägg till alla filer för spårning
Detta kallas också att staga filer/lägga till filer i staging-området.git add .Argumentet
git addplus.indikerar att alla dina filer och ändringar ska spåras. -
Lägg till utvalda filer för spårning
git add [file or folder name]Detta hjälper oss att lägga till endast utvalda filer i staging-området när vi inte vill commit:a alla filer på en gång.
-
Avstaga alla filer
git resetDetta kommando hjälper oss att avstaga alla filer på en gång.
-
Avstaga en specifik fil
git reset [file or folder name]Detta kommando hjälper oss att avstaga endast en specifik fil på en gång som vi inte vill inkludera i nästa commit.
-
Bevara ditt arbete. Vid det här laget har du lagt till filerna i ett så kallat staging-område. En plats där Git spårar dina filer. För att göra ändringen permanent behöver du commit:a filerna. För att göra det skapar du en commit med kommandot
git commit. En commit representerar en sparpunkt i historiken för ditt repository. Skriv följande för att skapa en commit:git commit -m "first commit"Detta commit:ar alla dina filer och lägger till meddelandet "first commit". För framtida commit-meddelanden vill du vara mer beskrivande i din beskrivning för att förmedla vilken typ av ändring du har gjort.
-
Koppla ditt lokala Git-repository med GitHub. Ett Git-repository är bra på din dator, men vid någon punkt vill du ha en backup av dina filer någonstans och även bjuda in andra att arbeta med dig på ditt repository. En sådan bra plats är GitHub. Kom ihåg att vi redan har skapat ett repository på GitHub, så det enda vi behöver göra är att koppla vårt lokala Git-repository med GitHub. Kommandot
git remote addgör just det. Skriv följande kommando:Observera, innan du skriver kommandot, gå till din GitHub-repository-sida för att hitta repository-URL:en. Du kommer att använda den i kommandot nedan. Ersätt
https://github.com/username/repository_name.gitmed din GitHub-URL.git remote add origin https://github.com/username/repository_name.gitDetta skapar en remote, eller anslutning, med namnet "origin" som pekar på GitHub-repositoryt du skapade tidigare.
-
Skicka lokala filer till GitHub. Hittills har du skapat en anslutning mellan det lokala repositoryt och GitHub-repositoryt. Låt oss skicka dessa filer till GitHub med följande kommando
git push, så här:Observera, ditt branch-namn kan vara annorlunda som standard från
main.git push -u origin mainDetta skickar dina commits i din "main"-branch till GitHub. Att ställa in
upstream-branchen inklusive-ui kommandot etablerar en länk mellan din lokala branch och den fjärranslutna branchen, så att du enkelt kan använda git push eller git pull utan att ange branch-namnet i framtiden. Git kommer automatiskt att använda upstream-branchen och du behöver inte ange branch-namnet explicit i framtida kommandon. -
För att lägga till fler ändringar. Om du vill fortsätta göra ändringar och skicka dem till GitHub behöver du bara använda följande tre kommandon:
git add . git commit -m "type your commit message here" git pushTips, du kanske också vill använda en
.gitignore-fil för att förhindra att filer du inte vill spåra visas på GitHub - som den där anteckningsfilen du lagrar i samma mapp men som inte har någon plats i ett offentligt repository. Du kan hitta mallar för.gitignore-filer på .gitignore templates.
Commit-meddelanden
En bra Git commit-rubrik kompletterar följande mening:
Om den tillämpas, kommer denna commit att <din rubrik här>
För rubriken, använd imperativ, presens: "ändra" inte "ändrade" eller "ändringar".
Precis som i rubriken, använd också imperativ, presens i kroppen (valfritt). Kroppen bör inkludera motivationen för ändringen och kontrastera detta med tidigare beteende. Du förklarar varför, inte hur.
✅ Ta några minuter att surfa runt på GitHub. Kan du hitta ett riktigt bra commit-meddelande? Kan du hitta ett riktigt minimalt? Vilken information tycker du är den viktigaste och mest användbara att förmedla i ett commit-meddelande?
Uppgift: Samarbeta
Huvudsyftet med att lägga upp saker på GitHub var att göra det möjligt att samarbeta med andra utvecklare.
Arbeta med projekt tillsammans med andra
Se video
I ditt repository, navigera till Insights > Community för att se hur ditt projekt jämför sig med rekommenderade community-standarder.
Här är några saker som kan förbättra ditt GitHub-repository:
- Beskrivning. Har du lagt till en beskrivning för ditt projekt?
- README. Har du lagt till en README? GitHub ger vägledning för att skriva en README.
- Riktlinjer för bidrag. Har ditt projekt riktlinjer för bidrag?
- Uppförandekod. En uppförandekod.
- Licens. Kanske viktigast av allt, en licens?
Alla dessa resurser kommer att gynna onboarding av nya teammedlemmar. Och det är typiskt sådana saker nya bidragsgivare tittar på innan de ens tittar på din kod, för att ta reda på om ditt projekt är rätt plats för dem att spendera sin tid.
✅ README-filer, även om de tar tid att förbereda, försummas ofta av upptagna underhållare. Kan du hitta ett exempel på en särskilt beskrivande README? Obs: det finns några verktyg för att skapa bra README-filer som du kanske vill prova.
Uppgift: Slå ihop kod
Bidragsdokument hjälper människor att bidra till projektet. Det förklarar vilka typer av bidrag du letar efter och hur processen fungerar. Bidragsgivare kommer att behöva gå igenom en serie steg för att kunna bidra till ditt repository på GitHub:
- Forka ditt repository. Du kommer förmodligen vilja att folk ska forka ditt projekt. Forkning innebär att skapa en kopia av ditt repository på deras GitHub-profil.
- Klona. Därefter kommer de att klona projektet till sin lokala dator.
- Skapa en branch. Du kommer vilja be dem att skapa en branch för sitt arbete.
- Fokusera ändringen på ett område. Be bidragsgivare att koncentrera sina bidrag på en sak i taget - på så sätt är chansen att du kan slå ihop deras arbete högre. Tänk dig att de skriver en buggfix, lägger till en ny funktion och uppdaterar flera tester - vad händer om du vill, eller bara kan implementera 2 av 3, eller 1 av 3 ändringar?
✅ Föreställ dig en situation där branches är särskilt kritiska för att skriva och leverera bra kod. Vilka användningsfall kan du tänka dig?
Obs, var den förändring du vill se i världen och skapa branches för ditt eget arbete också. Alla commits du gör kommer att göras på den branch du för närvarande är "utcheckad" till. Använd
git statusför att se vilken branch det är.
Låt oss gå igenom en bidragsgivares arbetsflöde. Anta att bidragsgivaren redan har forkat och klonat repositoryt så att de har ett Git-repository redo att arbeta med på sin lokala dator:
-
Skapa en branch. Använd kommandot
git branchför att skapa en branch som kommer att innehålla de ändringar de avser att bidra med:git branch [branch-name] -
Byt till arbetsbranch. Byt till den angivna branchen och uppdatera arbetskatalogen med
git switch:git switch [branch-name] -
Utför arbete. Vid det här laget vill du lägga till dina ändringar. Glöm inte att berätta för Git om det med följande kommandon:
git add . git commit -m "my changes"Se till att ge din commit ett bra namn, för din egen skull såväl som för underhållaren av repositoryt du hjälper till med.
-
Kombinera ditt arbete med
main-branchen. Vid någon punkt är du klar med ditt arbete och du vill kombinera ditt arbete med det imain-branchen.main-branchen kan ha ändrats under tiden, så se till att du först uppdaterar den till det senaste med följande kommandon:git switch main git pullVid det här laget vill du se till att eventuella konflikter, situationer där Git inte enkelt kan kombinera ändringarna, händer i din arbetsbranch. Kör därför följande kommandon:
git switch [branch_name] git merge mainKommandot
git merge mainkommer att ta in alla ändringar frånmaintill din branch. Förhoppningsvis kan du bara fortsätta. Om inte, kommer VS Code att berätta var Git är förvirrad och du ändrar bara de berörda filerna för att ange vilket innehåll som är mest korrekt.För att byta till en annan branch, använd det moderna kommandot
git switch:git switch [branch_name] -
Skicka ditt arbete till GitHub. Att skicka ditt arbete till GitHub innebär två saker. Att pusha din branch till ditt repository och sedan öppna en PR, Pull Request.
git push --set-upstream origin [branch-name]Kommandot ovan skapar branchen på ditt forkade repository.
-
Öppna en PR. Nästa steg är att öppna en PR. Det gör du genom att navigera till den forkade repot på GitHub. Du kommer att se en indikation på GitHub där det frågas om du vill skapa en ny PR, klicka på det och du tas till en gränssnitt där du kan ändra commit-meddelandets titel och ge det en mer passande beskrivning. Nu kommer underhållaren av repot du forkade att se denna PR och hoppas på det bästa att de uppskattar och merger din PR. Du är nu en bidragsgivare, yay :)
-
Rensa upp. Det anses vara god praxis att rensa upp efter att du framgångsrikt har mergat en PR. Du vill rensa upp både din lokala branch och den branch du pushade till GitHub. Först, låt oss ta bort den lokalt med följande kommando:
git branch -d [branch-name]Se till att du går till GitHub-sidan för det forkade repot och tar bort den fjärrgren du just pushade till.
Pull request kan verka som ett konstigt begrepp eftersom du egentligen vill pusha dina ändringar till projektet. Men underhållaren (projektägaren) eller kärnteamet behöver överväga dina ändringar innan de mergas med projektets "main"-branch, så du begär egentligen ett beslut om ändring från en underhållare.
En pull request är platsen där man jämför och diskuterar skillnader som introducerats på en branch med recensioner, kommentarer, integrerade tester och mer. En bra pull request följer ungefär samma regler som ett commit-meddelande. Du kan lägga till en referens till ett ärende i ärendespåraren, till exempel när ditt arbete löser ett problem. Detta görs med ett # följt av numret på ditt ärende. Till exempel #97.
🤞Hoppas att alla kontroller går igenom och att projektägaren/ägarna mergar dina ändringar till projektet🤞
Uppdatera din aktuella lokala arbetsbranch med alla nya commits från motsvarande fjärrbranch på GitHub:
git pull
Hur man bidrar till open source
Först, låt oss hitta ett repository (eller repo) på GitHub som intresserar dig och som du vill bidra med en ändring till. Du kommer att vilja kopiera dess innehåll till din dator.
✅ Ett bra sätt att hitta 'nybörjarvänliga' repos är att söka efter taggen 'good-first-issue'.
Det finns flera sätt att kopiera kod. Ett sätt är att "klona" innehållet i repot, med hjälp av HTTPS, SSH eller GitHub CLI (Command Line Interface).
Öppna din terminal och klona repot så här:
git clone https://github.com/ProjectURL
För att arbeta med projektet, byt till rätt mapp:
cd ProjectURL
Du kan också öppna hela projektet med Codespaces, GitHubs inbyggda kodredigerare / molnutvecklingsmiljö, eller GitHub Desktop.
Slutligen kan du ladda ner koden i en zippad mapp.
Några fler intressanta saker om GitHub
Du kan stjärnmärka, bevaka och/eller "forka" vilket offentligt repository som helst på GitHub. Du hittar dina stjärnmärkta repositories i rullgardinsmenyn längst upp till höger. Det är som att bokmärka, fast för kod.
Projekt har en ärendespårare, oftast på GitHub under fliken "Issues" om inte annat anges, där folk diskuterar problem relaterade till projektet. Och fliken Pull Requests är där folk diskuterar och granskar ändringar som är på gång.
Projekt kan också ha diskussioner i forum, e-postlistor eller chattkanaler som Slack, Discord eller IRC.
✅ Ta en titt runt ditt nya GitHub-repo och prova några saker, som att redigera inställningar, lägga till information till ditt repo och skapa ett projekt (som en Kanban-tavla). Det finns mycket du kan göra!
🚀 Utmaning
Arbeta tillsammans med en vän för att arbeta med varandras kod. Skapa ett projekt tillsammans, forka kod, skapa branches och merge ändringar.
Quiz efter föreläsningen
Granskning & Självstudier
Läs mer om att bidra till open source-programvara.
Öva, öva, öva. GitHub har fantastiska inlärningsvägar tillgängliga via skills.github.com:
Du hittar också mer avancerade kurser.
Uppgift
Slutför kursen Första veckan på GitHub
Ansvarsfriskrivning:
Detta dokument har översatts med hjälp av AI-översättningstjänsten Co-op Translator. Även om vi strävar efter noggrannhet, bör det noteras att automatiserade översättningar kan innehålla fel eller felaktigheter. Det ursprungliga dokumentet på dess originalspråk bör betraktas som den auktoritativa källan. För kritisk information rekommenderas professionell mänsklig översättning. Vi ansvarar inte för eventuella missförstånd eller feltolkningar som uppstår vid användning av denna översättning.



