i det här inlägget ser vi hur du tar bort begår från en Git-gren.,et
tanken här är att tvinga återställa arbetskatalogen för att ta bort alla åtaganden som kommer efter den angivna begå och sedan göra en force push:
1
|
git Reset –hard
|
Du kan hänvisa till en commit via dess ancestry, eller använda sin fulla SHA-1 hash, eller genom att tillhandahålla den partiella hash som bör vara minst 4 tecken lång och otvetydig.,
1
2
3
4
|
# kassera de första 4 begår
git Reset –Hard Head~4
|
om dessa begår finns i fjärrförvaret, måste du tvinga trycka på den hårda Återställ till fjärrförvaret.,
1
2
3
4
|
# Force Push updates to the remote repository
git push
|
Here’s a live example:
Note, that any changes made in the working directory since the last commit are silently discarded., För att undvika det, stash dina lokala ändringar först genom att ringagit-stash
kommando som i sin tur också återställa arbetskatalogen tillHEAD
revision efter att ha sparat dina lokala ändringar. git reset --hard HEAD
används ofta för att ta bort alla ändringar som inte har gjorts för att matcha det senaste begäret i arbetskatalogen.
om du vill behålla ditt arbete och bara ångra begå, kan du använda alternativet --soft
.,
1
|
git reset –soft
|
This is demonstrated below:
git revert
It is not a good idea to do a force push on a public or a shared repository; do a git-revert
instead., Det skapar nya begå som ångrar alla ändringar som gjorts i angivna begå, sedan tillämpa den på den aktuella grenen.,iv id=”e6e72cc751″>
Here’s a live example:
Interactive Rebasing
Another plausible way of removing comments is using git-rebase
command.,
1
|
git rebase-i
|
exekvering av ovanstående kommando kommer att öppna en redaktör med alla åtaganden i din nuvarande gren, som kommer efter den angivna commit. För att släppa en commit, helt enkelt ersätta kommandot ”pick” med ”drop” och stäng redigeraren. Du kan också bara ta bort matchande rad.,
följande kommando tar bort en hel commite78d8b1
på en gång med--rebase-merges
läge med--onto
alternativ.,
1
|
git rebase -r –onto e78d8b1^ e78d8b1
|
(20 votes, average: 5.,00 av 5)
Tack för att du läste.