Hur man drar ett Git-förråd i Linux

click fraud protection

Git definierar en versionskontrollprocess för hur projekt ska delas. Det finns många webbplatser som låter dig vara värd för dina Git-projekt. GitHub är det mest populära alternativet, Bitbucket är ett annat populärt alternativ, båda tillåter gratis konton som kan skapa obegränsade offentliga eller privata arkiv. GitLab erbjuder ett självhostat alternativ som tillåter privat utveckling utan att förlita sig på tredjepartshosting.

Processen att först ladda ner ett Git-förråd kallas kloning. Kloning inkluderar all information om förvaret vid den tidpunkten, men för att hålla förvaret uppdaterat över tid måste du dra ner nya versioner. För att göra det, öppna helt enkelt ett terminalfönster i katalogen med den lokala versionen av förvaret och skriv kommandot "git pull".

Användningen av detta kommando är särskilt enkel om du bara vill ladda ner en uppdaterad version av förvaret; den lokala versionen kommer att uppdateras för att matcha fjärrversionen. Du kan dock se att det kan uppstå problem om du har gjort ändringar i din lokala version.

Kommandot "git pull" kör faktiskt två separata kommandon "git fetch" och "git merge FETCH HEAD". Underkommandot "git fetch" drar specifikt ner den senaste versionen från onlineförvaret och lagrar den tillfälligt. Underkommandot "git merge FETCH HEAD" slår sedan ihop dina lokala ändringar med den nedladdade versionen, med nyare commits att föredra.

Tips: En "git commit" är en inlämning av en ändring, det är möjligt att ha flera lokala och fjärranslutna commits som gör samma eller olika saker. Lokala commits är inte synliga för fjärrversionen förrän ändringarna har tryckts. Varje commit beskriver exakt vilka ändringar som gjordes och inkluderar en tidsstämpel.

Konflikter mellan lokala och fjärrversioner

Helst i ett sammanslagningsscenario kommer det inte att finnas några konflikter och sammanslagningsprocessen kommer att slutföras automatiskt. Sammanslagningar kan vara särskilt lätta om få ändringar har gjorts, eller om dina lokala ändringar inte stör några fjärrändringar. Om det däremot finns motstridiga komplexa ändringar av samma del av koden kommer Git att skapa ett sammanfogningsfel.

Vid det här laget kan du antingen avbryta sammanslagningen med kommandot "git merge -abort" eller försöka lösa konflikterna manuellt. Kommandona "git mergetool" och "git diff" ger ett grafiskt exempel på skillnaderna som borde hjälpa för att göra det så enkelt som möjligt att se vilka ändringar som måste tillämpas manuellt för att tillåta sammanslagningen komplett. När du har löst alla konflikter, skriv kommandot "git merge -continue" för att slutföra sammanslagning.

Kommandot "git mergetool" kommer att öppna ett grafiskt verktyg som detta för att hjälpa dig att manuellt lösa konflikter.