Com esborra una sucursal a Git de forma local i remota

Com esborra una sucursal a Git de forma local i remota

Una de les característiques més fortes de Git són les seves branques lleugeres. Permeten treballar en etapes paral·leles de desenvolupament de manera eficient. Fins i tot un desenvolupador pot crear sucursals individuals per a errors separats. Tant en el temps com en l'espai, les branques són gairebé sense cost.





com piratejar un compte bancari sense programari

Molts fluxos de treball de git tracten tant amb branques temporals com a llarg termini. Per tant, sovint és necessari suprimir les branques durant el desenvolupament. De vegades, cal suprimir les sucursals compartides d’un servidor remot, així com les sucursals locals.





Per què suprimir una sucursal?

En primer lloc, si encara esteu comprenent el git, hi ha força possibilitats de crear una sucursal i després decidir que no cal. O és possible que experimenteu amb branques i vulgueu aclarir-vos. Està bé, ja que la ramificació en git és una operació lleugera. És molt ràpid i utilitza l’espai del disc de manera eficient.





Com a resultat, molts fluxos de treball de desenvolupament de git fomenten la ramificació, fins i tot per a tasques molt petites o curtes. Per exemple, una estratègia comuna és crear una branca per a una única correcció d'errors. Això és cert fins i tot si només implica que un sol autor faci un canvi d'una línia en un sol fitxer.

Per aquests motius, la creació i supressió de sucursals són operacions que cal entendre bé. És possible que us trobeu sovint suprimint branques durant un flux de treball de desenvolupament típic.



Un dipòsit de mostra amb sucursals

Els exemples següents fan referència a un dipòsit de mostra amb l'estructura següent:

$ git branch -vv
1 dev 1ae41e8 [origin/dev] first commit
2 * main 1ae41e8 [origin/main] first commit

Tingueu en compte que cada sucursal local té una sucursal corresponent amunt del control remot: origen .





Supressió d'una branca mitjançant la línia d'ordres

La sintaxi d’ordres bàsica per suprimir una branca és:

git branch (-d | -D) [-r] ...

La forma més senzilla de l'ordre elimina una branca local, sempre que s'hagin fusionat tots els seus canvis:





$ git branch -d dev

No podeu suprimir la branca que està activa actualment; si ho intenteu, rebreu un missatge com aquest:

error: Cannot delete branch 'main' checked out at '/tmp/sandbox'

Quan les coses vagin bé, veureu un missatge de confirmació:

Deleted branch dev (was 1ae41e8).

Si suprimiu una sucursal que només existeix localment, amb canvis que no es combinin, perdrà aquests canvis. Per tant, git es negarà a suprimir una sucursal en aquesta situació, per defecte:

error: The branch ‘dev’ is not fully merged.
If you are sure you want to delete it, run 'git branch -D dev’.

Com informa el missatge d'error, podeu forçar la supressió amb el fitxer -D bandera. Tanmateix, git us permetrà suprimir una sucursal local sense fusió si existeix remotament:

warning: deleting branch ‘dev’ that has been merged to
'refs/remotes/origin/dev’, but not yet merged to HEAD.
Deleted branch dev (was 9a6d20b).

Eliminar una branca remota és molt diferent. Fareu servir el git push ordre juntament amb el fitxer -d bandera per suprimir. Després, proporcioneu el nom del comandament a distància (sovint origen ) i el nom de la sucursal:

$ git push -d origin dev
To github.com:bobbykjack/sandbox.git
- [deleted] dev

Supressió de sucursals locals i remotes amb GitHub Desktop

A diferència del programa git de línia d’ordres, L’aplicació d’escriptori de GitHub només us permetrà eliminar la branca activa. Podeu dur a terme aquesta acció mitjançant Sucursal , seleccionant el menú Suprimeix i confirmant-ho:

GitHub Desktop no us permetrà suprimir la branca predeterminada, per exemple. main, tot i que el mateix git ho admet. Si la branca predeterminada és la que està activa actualment, l'aplicació desactiva l'acció del menú.

Si la branca també representa una branca remota, GitHub Desktop també pot eliminar-la del control remot:

Supressió de sucursals mitjançant GitKraken

GitCrack mostra les branques locals i remotes del dipòsit a la barra lateral esquerra. N’heu d’esborrarper separat.

Passeu el cursor per sobre del nom de sucursal adequat i feu clic a Sucursal menú d'accions que sembla tres punts verticals. Al menú, seleccioneu Suprimeix :

Veureu un missatge de confirmació que us informarà que es tracta d’una operació destructiva. Podeu confirmar que voleu continuar amb el fitxer Suprimeix botó:

Reflexionant el comportament predeterminat del programa de línia d'ordres git, primer heu de canviar a una branca diferent de la que esteu suprimint. En cas contrari, veureu un missatge d'error:

Supressió de sucursals locals i remotes mitjançant Tower

Suprimir una sucursal amb Torre és molt similar a suprimir una sucursal amb GitKraken. Les branques locals i remotes es mostren en un tauler a la part esquerra. Feu clic amb el botó dret a qualsevol branca i seleccioneu l'opció Suprimeix al menú contextual:

Una diferència clau és que una sucursal remota es pot suprimir juntament amb la seva sucursal local durant la confirmació:

Supressió d'una sucursal a GitHub

GitHub només actua com a font remota, de manera que les branques hi són remotes per defecte. Si suprimiu una sucursal mitjançant el lloc web GitHub, haureu de suprimir la sucursal local corresponent mitjançant un dels altres mètodes aquí.

Com passa amb l’aplicació GitHub Desktop, el lloc web de GitHub no us permetrà suprimir la branca predeterminada. L’opció simplement no apareix. No obstant això, suprimir una branca és senzill. Des del dipòsit Codi pàgina, feu clic a branques enllaç, busqueu la branca que vulgueu suprimir i feu clic a Suprimiu aquesta branca , que sembla una paperera:

Tingueu en compte que no hi ha comprovacions de canvis sense fusió, de manera que a GitHub, la sucursal simplement se suprimirà immediatament. Tanmateix, com que sempre representarà una branca remota, aquest hauria de ser el comportament que espereu.

Tingueu en compte que, després de suprimir-lo, veureu un botó per a Restaura la branca. Tot i això, aquesta és simplement una funció útil per desfer, en cas que feu clic a la icona de supressió per error. No us hi fiqueu, perquè tan bon punt actualitzeu la pàgina o us allunyeu de la pàgina, perdrà l’opció.

Supressió de sucursals locals i remotes a Bitbucket

Bitbucket, com GitHub, no us permetrà suprimir la branca predeterminada. Bitbucket l'anomena així Branca principal dins Configuració del dipòsit . Podeu suprimir qualsevol altra sucursal que aparegui a Branques , mitjançant la seva corresponent Accions menú:

També podeu suprimir més d'una branca alhora si feu una gran operació de neteja:

L'eliminació de branques forma part d'un flux de treball Git típic

Les sucursals Git poden complicar el vostre flux de treball, especialment amb sucursals locals, remotes i de seguiment. Però per al desenvolupament quotidià senzill, és probable que creeu i suprimiu sucursals locals tot el temps. Aquest és un aspecte bàsic d’un flux de treball git típic al qual us heu d’acostumar.

Compartir Compartir Tweet Correu electrònic Com utilitzar les branques Git per estructurar el vostre projecte de programació

En aquest article veurem què significa ramificar el vostre codi, com fer-ho i maneres de gestionar les actualitzacions de la branca git 'principal'.

Llegiu a continuació
Temes relacionats
  • Programació
  • GitHub
Sobre l'autor Bobby Jack(58 articles publicats)

Bobby és un entusiasta de la tecnologia que va treballar com a desenvolupador de programari durant gairebé dues dècades. És un apassionat dels jocs, treballa com a editor de ressenyes a Switch Player Magazine i està immers en tots els aspectes de la publicació en línia i el desenvolupament web.

Més de Bobby Jack

Subscriu-te al nostre butlletí

Uniu-vos al nostre butlletí per obtenir consells tècnics, ressenyes, llibres electrònics gratuïts i ofertes exclusives.

Feu clic aquí per subscriure-us