i dette indlæg vil vi se, hvordan du sletter commits fra en Git-filial.,et
tanken er her, at tvinge nulstille den aktive mappe for at fjerne alle begår, som kommer efter den angivne begå, og derefter gøre en force push:
1
|
git –hard reset
|
kan Du henvise til en begå via sin herkomst, eller med sit fulde SHA-1 hash, eller ved at give delvis hash, som bør være mindst 4 tegn og entydig.,
1
2
3
4
|
# Discard de første 4 begår
git nulstil-hard HEAD~4
|
Hvis de begår, er til stede i den eksterne lager, vil du nødt til at tvinge skubbe den hårde reset-til remote repository.,
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., For at undgå det skal du først stash dine lokale ændringer ved at ringegit-stash
kommando, som igen også vender arbejdsmappen tilbage tilHEAD
revision efter at have gemt dine lokale ændringer. git reset --hard HEAD
bruges ofte til at slette alle uforpligtede ændringer for at matche den seneste commit i arbejdsmappen.
Hvis du vil beholde dit arbejde og kun fortryde commit, kan du bruge indstillingen --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 skaber nyt commit, der fortryder alle de ændringer, der er foretaget i specificeret commit, og anvend det derefter på den aktuelle gren.,iv id=”e6e72cc751″>
Here’s a live example:
Interactive Rebasing
Another plausible way of removing comments is using git-rebase
command.,
1
|
git rebase -jeg
|
Udførelse af ovenstående kommando vil åbne op for en editor, med alle de begår i din nuværende gren, som kommer efter den angivne begå. For at droppe en commit skal du blot erstatte kommandoen ‘pick’ med ‘drop’ og lukke editoren. Du kan også bare slette den matchende linje.,
følgende kommando fjerner en hel commit e78d8b1
på onen gang ved hjælp af --rebase-merges
tilstand med --onto
valgmulighed.,
1
|
git rebase -r –onto e78d8b1^ e78d8b1
|
(20 votes, average: 5.,00 ud af 5)
tak for læsning.