Hoe een vertakking lokaal verwijderen?

Ik heb een master en een dev branch in mijn repository. Ik wil de master branch van mijn computer verwijderen zodat ik me er niet per ongeluk aan commit (het is gebeurd…).

Er zijn hier vragen over hoe u vertakkingen lokaal enop afstand kunt verwijderen, maar ik heb niet kunnen vinden hoe u een vertakking alleen lokaal kunt verwijderen.

Eén antwoord zei dit te gebruiken:

git branch -d local_branch_name

Maar ik heb dat geprobeerd en de branch verschijnt nog steeds in de GitHub-toepassing.


Antwoord 1, autoriteit 100%

Een lokale vestiging geforceerd verwijderen:

$ git branch -D <branch-name>

[OPMERKING]:

-Dis een snelkoppeling voor --delete --force.



Antwoord 2, autoriteit 86%

Ik denk (op basis van uw opmerkingen) dat ik begrijp wat u wilt doen: u wilt dat uw lokale kopie van de repository noch de gewone lokale branch master, nochde remote-tracking branch origin/master, ook al heeft de repository die je gekloond hebt—de github one—een lokale branch masterdie je nietwil verwijderd worden uit de github-versie.

Je kunt dit doen door de remote-tracking branch lokaal te verwijderen, maar het komt gewoon elke keer terug als je je git vraagt ​​om je lokale repository te synchroniseren met de remote repository, omdat je git hun git vraagt ​​”welke branches heb je ” en er staat “Ik heb master“, dus je git (re)creëert origin/mastervoor je, zodat je repository heeft wat die van hen heeft.

Om uw remote-tracking branch lokaal te verwijderen met behulp van de opdrachtregelinterface:

git branch -d -r origin/master

maar nogmaals, het komt gewoon terug bij hersynchronisaties. Het ismogelijk om dit ook te verslaan (met behulp van remote.origin.fetchmanipulatie), maar je kunt waarschijnlijk beter gedisciplineerd genoeg zijn om masterlokaal.


Antwoord 3, autoriteit 16%

Voor zover ik het oorspronkelijke probleem kan begrijpen,
je hebt per ongeluk commits toegevoegd aan de lokale master
en heeft die veranderingen nog niet doorgevoerd.
Nu wil je je wijzigingen annuleren en hoop je je lokale wijzigingen te verwijderen en een nieuwe master branch te creëren vanaf de remote.

U kunt uw wijzigingen resetten en de master opnieuw laden vanaf de externe server:

git reset --hard origin/master

Antwoord 4, autoriteit 9%

De Github-toepassing voor Windows toont alle externe takken van een repository. Als je de branch lokaal hebt verwijderd met $ git branch -d [branch_name], bestaat de remote branch nog steeds in je Github-repository en zal deze hoe dan ook verschijnen in de Windows Github-toepassing.

Als je de branch volledig wilt verwijderen (ook op afstand), gebruik dan het bovenstaande commando in combinatie met $ git push origin :[name_of_your_new_branch]. Waarschuwing:dit commando wist alle bestaande branches en kan codeverlies veroorzaken. Wees voorzichtig, ik denk niet dat dit is wat je probeert te doen.

Elke keer dat u de lokale vertakkingswijzigingen verwijdert, zal de externe vertakking echter nog steeds in de toepassing verschijnen. Als u geen wijzigingen wilt blijven aanbrengen, negeer het dan en klik niet, anders kunt u de repository klonen. Als je nog vragen hebt, laat het me dan weten.


Antwoord 5, autoriteit 7%

Na het verwijderen van een vertakking met:

git branch -d BranchName

Om vertakkingen te verwijderen die niet meer bestaan ​​in de externe repository:

git fetch -p

-pgeeft prune aan, om vertakkingen uit de lokale repository te verwijderen die niet bestaan ​​in de remote.


Antwoord 6

Je kunt meerdere vertakkingen in vensters verwijderen met behulp van Git GUI:

  1. Ga naar je projectmap
  2. Open Git Gui:
    voer hier de afbeeldingsbeschrijving in
  3. Klik op ‘Branch’:
    voer hier de afbeeldingsbeschrijving in
  4. Kies nu ‘Verwijderen’:
    voer hier de afbeeldingsbeschrijving in
  5. Als je alle branches wilt verwijderen, behalve dat ze al dan niet zijn samengevoegd, vink dan ‘Altijd (Voer geen samenvoegcontroles uit)’ aan
    voer hier de afbeeldingsbeschrijving in

Antwoord 7

Op basis van je tags neem ik aan dat je Github gebruikt. Waarom maak je niet wat branch beschermingsregels voor je master branch? Op die manier zal het, zelfs als je probeert om het meester te worden, het weigeren.

1) Ga naar het tabblad ‘Instellingen’ van uw repo op Github.

2) Klik op ‘Takken’ in het menu aan de linkerkant.

3) Klik op ‘Regel toevoegen’

4) Voer ‘master’ in voor een vertakkingspatroon.

5) Vink ‘Reviews van pull-aanvragen vereisen voor samenvoeging’ aan

Ik zou ook aanraden hetzelfde te doen voor je dev branch.


Antwoord 8

je moet naar een andere branch overschakelen en hetzelfde proberen.

git branch -d


Antwoord 9

git branch | grep -v "develop" | grep -v "master" | xargs git branch -D

Eenvoudig en gemakkelijk. Het verwijdert alle behalve waar u aan werkt en “develop” en “master”.

Other episodes