Git

Hur man ångrar det senaste åtagandet i Git

Hur man ångrar det senaste åtagandet i Git
Ett vanligt arbetsflöde i Git är att du gör ändringar i ditt projekt, lägger till ändringarna i iscensättningsområdet, gör ändringarna, gör nya ändringar, arrangerar ändringarna, gör ändringarna och det fortsätter och fortsätter. Men tänk om du felaktigt begick dina ändringar? Tja, var inte rädd. Du kan alltid ångra ditt senaste engagemang i Git. I den här artikeln ska jag visa dig hur du ångrar det senaste åtagandet i Git. Så, låt oss komma igång.

Konfigurera ett testgitförvar:

I det här avsnittet ska jag klona en av mina GitHub-förråd på min dator för att ställa in ett testförvar för den här artikeln. Om du vill följa med kan du också göra det. Om du har ditt eget Git-arkiv att arbeta med, då bra! Du kan också använda den.

Att klona ett av mitt GitHub-arkiv (https: // github.com / dev-shovon / my-project), kör följande kommando:

$ git-klon https: // github.com / dev-shovon / my-project undo_commit_demo

GitHub-förvaret bör klonas in i ångra_commit_demo / katalog.

Navigera nu till ångra_commit_demo / katalog enligt följande:

Åtagandet du vill ångra kan vara i en annan gren som min. Jag vill ångra det sista åtagandet från ie-fix gren. Så jag måste dra i grenen ie-fix från mitt GitHub-arkiv.

Du kan dra i ie-fix gren från GitHub enligt följande:

$ git pull origin ie-fix

NOTERA: Här, ie-fix är filialnamnet.

De ie-fix gren ska dras.

Kassa nu till filialen (i mitt fall, ie-fix) från vilken du vill ångra det senaste åtagandet enligt följande:

$ git checkout ie-fix

Som du kan se, den sista förpliktelsen för ie-fix gren är aec00f3. I nästa avsnitt kommer jag att visa dig sätt att ångra det senaste åtagandet på ditt Git-arkiv.

Ångra senaste åtagande och behålla ändringar:

Ett sätt att ångra det senaste åtagandet är att använda soft reset på ditt Git-arkiv. Vad detta gör är att det senaste engagemanget tas bort och de ändringar du har gjort i det åtagandet läggs till i iscenesättningsområdet i ditt Git-arkiv. På det här sättet, om du vill fixa något, kan du ändra filerna och lägga till ett nytt engagemang.

Som du kan se, det senaste åtagandet i min ie-fix gren är aec00f3.

$ git log - online

Mitt iscenesättningsområde är också rent.

$ git-status

För att ta bort eller ångra det senaste åtagandet, kör följande kommando:

$ git reset - soft HEAD ~ 1

Som du kan se, åtagandet aec00f3 är borta.

$ git log - online

Den fil som jag ändrade i den senaste förpliktelsen ligger också i mitt iscenesättningsområde.

$ git-status

Nu kan du ytterligare modifiera filerna, fixa de misstag du har gjort och begå ändringarna igen.

Ångra senaste åtagande och ta bort ändringar:

Om det senaste åtagandet som du vill ta bort är värdelöst för dig, kan du överväga en hård återställning i ditt Git-arkiv. Vad hård återställning gör är att det tar bort det senaste åtagandet som tidigare. Men det tar också bort alla ändringar du har gjort under det senaste åtagandet. Gör en hård återställning bara när du är säker på att du inte längre behöver någonting av det senaste åtagandet.

Jag ska dra ie-fix gren från mitt GitHub-arkiv igen för att återställa det senaste åtagandet aec00f3 och ta bort den igen i det här avsnittet.

$ git pull origin ie-fix

Som du kan se är det sista åtagandet tillbaka. Om ditt Git-arkiv laddas upp till en Git-molntjänst som GitHub kan du också återställa alla åtaganden som du tar bort felaktigt.

Som du kan se är mitt iscensättningsområde rent.

$ git-status

För att ta bort det senaste åtagandet och ta bort ändringarna i det åtagandet, kör följande kommando:

$ git reset - hård HEAD ~ 1

Det senaste åtagandet bör tas bort och HUVUD pekaren bör uppdateras.

Som du kan se, åtagandet aec00f3 tas bort och åtagandet omedelbart före det (3fffdee) är det senaste det senaste åtagandet.

$ git log - online

Iscenesättningsområdet är också rent. Så det finns ändringsfiler från det borttagna åtagandet.

$ git-status

Uppdaterar Remote Git Repository:

Nu när du har tagit bort det felaktiga åtagandet från ditt Git-arkiv kanske du också vill uppdatera ditt GitHub-arkiv. Detta är ämnet i detta avsnitt.

Som du kan se, git-status visar också att jag befinner mig 1 bakom från fjärrförvaret.

Innan jag uppdaterade mitt GitHub-arkiv, gjorde jag det aec00f3 existerar även om jag tog bort det från det lokala Git-arkivet som du kan se.

För att synkronisera det lokala Git-arkivet med GitHub-arkivet, kör du följande kommando:

$ git push - force origin ie-fix

Ändringarna i det lokala Git-förvaret ska synkroniseras med GitHub-förvaret.

GitHub-förvaret bör uppdateras. Som du kan se, åtagandet aec00f3 är inte längre listad. Åtagandet omedelbart innan aec00f3, vilket är 3fffdee är nu det sista åtagandet.

Så det är så du ångrar den senaste åtagandet i Git. Tack för att du läste den här artikeln.

Installera det senaste OpenRA-strategispelet på Ubuntu Linux
OpenRA är en Libre / Free Real Time Strategy-spelmotor som återskapar de tidiga Westwood-spelen som det klassiska Command & Conquer: Red Alert. Distri...
Installera senaste Dolphin Emulator för Gamecube & Wii på Linux
Dolphin Emulator låter dig spela dina valda Gamecube & Wii-spel på Linux Personal Computers (PC). Eftersom Dolphin Emulator är en fritt tillgänglig o...
Hur man använder GameConqueror Cheat Engine i Linux
Artikeln täcker en guide om hur du använder GameConqueror-fuskmotorn i Linux. Många användare som spelar spel på Windows använder ofta applikationen "...