1. Webdesign & udviklingGit versionskontrol

Af Sarah Guthals

Som det samme antyder, er GitHub bygget på Git. Git er en type versionskontrolsystem, og det er gratis og open source, hvilket betyder, at enhver kan bruge det, bygge oven på det og endda tilføje det.

GitHub-produkter gør det nemt at bruge Git, men hvis du er nysgerrig, kan du også bruge Git til at spore dine solo-projekter på din computer.

Prøv enkel Git på terminalen

Ved hjælp af Git til Windows er brug af terminalen på Mac-, Windows- eller Linux-computere nøjagtigt det samme. En terminal er et program, der giver dig mulighed for at interagere med din computer på en tekstbaseret måde - med andre ord, i stedet for at dobbeltklikke og trække, skriver du kommandoer til at navigere på din computer.

Hvis du er på Mac eller Linux, er en terminal allerede installeret på din computer. Hvis du bruger en Windows-computer, skal du installere Git til Windows. Klik på Download for at få adgang til Git Bash, en emulator, der giver dig mulighed for at interagere med Git, ligesom du ville gøre på en Linux- eller Mac-terminal. Du får også Git GUI, som giver dig en brugergrænseflade til næsten alle Git-kommandoer, du muligvis skriver i Git Bash, og shell-integration, så du hurtigt kan åbne Git Bash eller Git GUI fra en hvilken som helst mappe.

Mange udviklere på Windows foretrækker at bruge PowerShell som deres terminalmiljø. Du kan bruge Git i PowerShell.

Find først terminalapplikationen:

  • På Mac kan du klikke på forstørrelsesglasset øverst til højre på dit skrivebord, skrive Terminal, vælge terminalen på listen over applikationer og trykke på Enter eller klikke på den. I Linux skal du trykke på Ctrl-Alt-T alle på samme tid, og terminalvinduet åbnes. I Windows skal du klikke på Windows-menuen nederst til højre på dit skrivebord, søg i Git Bash, vælg Git Bash-applikationen fra listen over søgeresultater, og tryk på Enter eller klik på det.

Når applikationen åbner, skal du indtaste git --version i terminalen. Hvis du har Git installeret, skal du se et versionnummer som vist i følgende kode ($ skal allerede være på linjen, så du behøver ikke at skrive det). Ellers kan du følge disse instruktioner.

Når du bruger kommandolinjen, skal du være meget forsigtig med præcis, hvad du skriver. I følgende kode er den første instruktion, du skal skrive git --version. Bemærk, at der vises et mellemrum mellem git og resten af ​​instruktionen, men ingen andre mellemrum. Du skal også bemærke de to bindestreger før ordversionen. De kan være lette at gå glip af, så vær forsigtig!

For Mac eller Linux skal du se noget lignende:

$ git -version

git version 2.16.3

$

For Windows skal du se noget lignende:

$ git -version

git version 2.20.1.windows.1

$

Dernæst skal du bruge terminalen til dit skrivebord og oprette en ny mappe kaldet git-praksis. For at gøre dette skal du indtaste følgende kommandoer:

$ cd ~ / Desktop

$ mkdir git-praksis

$ cd git-praksis

$

Hvis du skriver pwd, skal du se, at du nu befinder dig i mappen git-practice, som er på dit skrivebord. Det ser måske sådan ud:

$ pwd

$ / Brugere / sguthals / Desktop / git-praksis

$

Nu kan du bede git om at spore denne mappe vha. Init-kommandoen.

$ git init

Initieret tomt Git-lager i / Brugere / sguthals / Desktop / git-praksis

$

Kontroller derefter, at du har en ren mappe. Du kan kontrollere med statuskommandoen:

$ git status

På grenmester

Ingen forpligtelser endnu

intet at forpligte (oprette / kopiere filer og bruge "git add" til at spore)

$

Derefter kan du oprette en fil for at få Git til at starte sporing og bekræfte, at filen er i mappen:

$ echo "øve git"> file.txt

$ ls

file.txt

$

På Mac kan du åbne denne mappe i en Finder med den åbne kommando:

$ åben.

$

På Linux kan du åbne denne mappe med kommandoen nautilus :

$ nautilus.

$

På Windows kan du åbne denne mappe med kommandoen explorer:

$ explorer.

$

I dette eksempel lægger vi. som for hver kommando. . fortæller terminalen om at åbne den aktuelle mappe. Du kan også bruge en anden sti med disse kommandoer til at åbne andre mapper.

Når mappen er åben, skal du dobbeltklikke på filen kaldet file.txt, og filen åbnes med TextEdit på Mac, gedit på Linux og Notepad på Windows. Du kan se, at ordene “at øve git” faktisk er der.

Luk filen. Nu kan du fortælle Git, at du vil gemme dette som en bestemt version. Tilbage i terminalen:

$ git tilføje file.txt

$ git commit -m "Tilføjelse af min fil til denne version"

[master (root-commit) 8d28a21] Tilføjelse af min fil til denne version

1 fil ændret, 1 indsættelse (+)

Opret tilstand 100644 file.txt

$ git status

På grenmester

intet at forpligte sig, arbejder træ rent

$

Du kan foretage en ændring af din fil i tekstfilen. Åbn filen igen, ændre teksten til at sige ”Hej! Jeg øver på git i dag! ”Og klik derefter på Filer → Gem og luk tekstprogrammet.

Når du går tilbage til terminalen for at kontrollere status for dit projekt igen, skal du se, at Git har bemærket, at filen er ændret:

$ git status

På grenmester

Ændret ikke iscenesat for engagement:

(brug "git add

{brug "git checkout - ..." for at kassere ændret i arbejdsmappen)

ændret: file.txt

ingen ændringer tilføjet til commit (brug "git add" og / eller "git commit -a")

$

Forpligt denne version af din fil igen og bemærk, at Git anerkender, at alt er gemt i en ny version:

$ git tilføje file.txt

$ git commit -m "Jeg har ændret teksten"

[master 6d80a2a] Jeg ændrede teksten

1 fil ændret, 1 indsættelse (+), 1 sletning (-)

$ git status

På grenmester

intet at forpligte sig, arbejder træ rent

$

Hvis din terminal begynder at blive for rodet, kan du skrive klar for at rydde lidt plads og gøre den mere visuelt tiltalende. Ikke rolig; du kan altid rulle op og se alt, hvad du skrev tidligere!

Sig, at du faktisk ønsker at se den oprindelige ændring; når du tilføjede “øve git”. Først skal du hente logfilen over alle de forpligtelser, du har foretaget:

$ git log

begå 6d80a2ab7382c4d308de74c25669f16d1407372d (HEAD -> master)

Forfatter: sguthals

Dato: Søn 9. december 08:54:11 2018 -0800

Jeg ændrede teksten

forplig 8d28a21f71ec5657a2f5421e03faad307d9eec6f

Forfatter: sguthals

Dato: Søn 9. december 08:48:01 2018 -0800

Tilføjelse af min fil til denne version

$

Bed derefter Git om at vise dig den første forpligtelse, du har foretaget (den nederste mest). Sørg for, at du skriver din unikke commit-hash. I disse eksempler starter hasjen med 8d28a2. Sørg for, at du skriver hele hasjen, der vises i din Git-log:

I stedet for at skrive hele hash'en (og muligvis have en skrivefejl), kan du fremhæve hasjen med din mus, højreklikke og vælge kopi, og derefter efter git-checkout, kan du højreklikke og vælge Sæt ind. Brug af tastaturgenveje Ctrl + C eller Kommando -C fungerer ikke

$ git show 8d28a21f71ec5657a2f5421e03faad307d9eec6f

begå 8d28a21f71ec6567a2f5421e03faad307d9eec6f

Forfatter: sguthals

Dato: Søn 9. december 08:48:01 2018 -0800

Tilføjelse af min fil til denne version

diff - få en / file.txt b / file.txt

ny filtilstand 100644

indeks 0000000..849a4c7

--- / dev / null

+++ b / file.txt

@@ -0,0 +1 @@

+ at øve git

$

Du kan se, at det at øve git blev føjet til filen i det oprindelige engagement.

For at få flere oplysninger om, hvordan man bruger git på kommandolinjen, kan du tjekke følgende ressourcer:

  • GitHub Git snyderi Visual Git snyderi Git Docs-siden

Et andet par ressourcer er tilgængelige til at lære og forstå Git, som gør det muligt for brugere på Windows at opleve en lignende arbejdsgang, fordi de visualiseres på et websted. Det første link er et godt selvstyret sæt øvelser, mens det andet link bedst bruges til folk, der har en anstændig forståelse af Git og ønsker at udforske, hvad der vil ske i forskellige scenarier, eller for folk, der har en mere ekspert Git-bruger vejlede dem.

Git forgrening af samarbejdspartner

Git er forskellig fra andre versionskontrolsystemer, fordi det har hurtig forgrening, vist i følgende figur. Forgrening er en Git-funktion, der i det væsentlige kopierer kode (hver gren er en kopi af koden), giver dig mulighed for at foretage ændringer på en bestemt kopi og derefter flette dine ændringer tilbage til hovedgrenen (master).

Git grene

Når du skriver kode, tilføjer du filer og forpligter ændringer til din mastergren. Figuren skitserer en specifik arbejdsgang, hvor to personer samarbejder om den samme fil. Person 1 opretter en ny gren kaldet MyBranch og foretager nogle ændringer i filen. Person 2 opretter også en ny gren kaldet YourBranch og foretager nogle ændringer til den samme fil. Du kan se denne ændring i boks # 1.

Du kan se forskellen (kaldet diff) mellem mastergrenen og MyBranch i boks # 2.

Derefter fusionerer person 1 deres ændringer med mastergrenen, som du kan se i boks # 3.

Person 2 har foretaget deres egne ændringer, men inden de fusioneres, vil de sikre sig, at de har den mest opdaterede version af mastergrenen, som nu har ændringerne fra Person 1. Forskellen kan ses i boks # 4. Bemærk, hvilken tekst der er i begge filer.

Endelig anerkender Person 2, at deres ændringer vil overskrive Person 1's ændringer og fusionere deres ændringer med master, hvilket får den endelige version til at have ændringerne fra Person 2. Boks nr. 5 viser denne endelige fusion, hvor mastergrenen har de endelige ændringer.

Figuren viser kun en arbejdsgang, der kan eksistere, når mere end en person arbejder med kode og er beregnet til at beskrive forgrening. Få en mere dybdegående oversigt over Git og forgrening.

Git forgrening efter funktion

En anden almindelig måde at bruge forgrening er at have hver funktion, som du udvikler, skal være i en anden gren, uanset den samarbejdspartner, der bygger funktionen.

Du kan udvide ideen om forgrening efter funktion til også at have en gren, der er din produktionsgren. Denne gren er, hvad dine brugere vil se. Derefter kan du have en udviklingsgren, som er en, som du kan flette funktioner ind i uden at ændre, hvad dine brugere ser.

Denne type forgrening giver dig mulighed for at opbygge en masse forskellige funktioner, slå dem sammen hver i udviklingsgrenen, sørge for, at de alle fungerer, som du vil, og derefter flette udviklingsgrenen ind i produktionsgrenen, når du ved, at den er klar til dine brugere .

Git forgrening til eksperimenter

Du kan også oprette grene for at teste for at se, om noget fungerer, og derefter kaste grenen helt væk.

Denne type forgrening kan være nyttig, hvis du f.eks. Vil prøve et helt nyt layout af et websted. Du kan oprette tre forskellige grene, hver med et andet layout. Når du har besluttet, hvilket layout du bedst kan lide, kan du blot slette de to andre grene og flette grenen med dit yndlingslayout til master.