Com fer-ho amb Git: canviar el nom de sucursal

Un bon flux de treball Git hauria de fer ús de les branques per al desenvolupament de funcions, de manera que no aglutineu la vostra branca mestra amb tots els canvis que feu al vostre codi. Aprendre a canviar el nom d’una sucursal a Git pot ajudar a mantenir l’historial del vostre projecte net i fàcil d’entendre a l’hora de descobrir quan es va introduir una nova funció al vostre codi.


En aquesta guia, tractarem com canviar el nom d’una sucursal Git local, com canviar el nom d’una sucursal Git remota i fins i tot canviar el nom d’una sucursal Github remota.

Tot això ajudarà a mantenir el vostre flux de desenvolupament agradable, net i fàcil de gestionar en el camí de tornada a un projecte.

Canvia el nom de sucursal Git local

Per canviar el nom d’una branca Git local, podem utilitzar la comanda Git branch -m per modificar el nom:

1
2
3
4
5
6
7
8
9

branca $ git

* característica1

  mestre

 

$ git branca -m característica1 característica2

 

branca $ git

* característica2

  mestre

Va ser fàcil, no?

Canvieu el nom d’una sucursal Git remota

Si només esteu buscant l’ordre per canviar el nom d’una sucursal Git remota, és el següent:

1 git push -u origen característica2: característica3

Exemple complet per canviar el nom d’una sucursal GitHub remota

Per explicar el canvi de nom d’una sucursal Git remota, farem servir un projecte GitHub fictici per mostrar el procés.

Clona una GitHub Repo

Primer, clonem el projecte GitHub a la nostra caixa local amb l’ordre Gon clon:

1
2
3
4
5
6

$ git clone https://github.com/myusername/myproject.git

Clonació a “el meu projecte” …

remot: Comptar objectes: 3, fet.

remot: Total 3 (delta 0), reutilitzat 0 (delta 0)

Desempaquetar objectes: 100% (3/3) realitzats.

Comprovació de la connectivitat … fet.

Ara el nostre repositori de miprojectes estava clonat des de GitHub.

La comanda remota Git mostra tots els dipòsits rastrejats dels quals podem extreure i impulsar:

1
2

$ git remot

origen

En aquest cas, només veiem el nom d’origen predeterminat de Git per a un servidor remot.

Amb el comandament Git podem veure-ho amb més veritat -v ordre i senyalització:

1
2
3

$ git remot -v

origen https://github.com/myusername/myproject.git (recuperació)

origen https://github.com/myusername/myproject.git (push)

Empenyem la sucursal Git Local cap a GitHub Repo

Ara que teniu un projecte GitHub descarregat localment, podeu crear una branca local:

1
2

$ git checkout -b feature2

S’ha canviat a una nova branca “feature2”

Aquesta és una abreviatura per:

1
2
3

$ git característica de la branca2

$ check git feature2

S’ha canviat a una nova branca “feature2”

Després de fer canvis, premeu “feature2” al dipòsit remot anomenat “origen”:

1
2
3
4
5
6
7
8
9
10

$ eco "mychange" > newfile.txt

$ git add newfile.txt

$ git commit -m "newfile.txt afegit"

S’ha afegit [feature2 c9acad71 newfile.txt

1 fitxer canviat, 1 inserció (+)

crear el mode 100644 newfile.txt

 

$ git push característica origen2

Total 3 (delta 0), reutilitzat 0 (delta 0)

A https://github.com/myusername/myproject.git

Comproveu una sucursal Git remota des d’una GitHub Repo

Si la sucursal “feature2” només existís de forma remota a GitHub, no podreu impulsar-la.

Podeu utilitzar la secció Git -a per veure totes les branques locals i remotes disponibles:

1
2
3
4
5

$ git branca -a

* mestre

  comandaments a distància / origen / HEAD -> origen / mestre

  comandaments remots / origen / característica2

  comandaments remots / origen / mestre

Primer has de consultar la branca del dipòsit remot, donar-li un nom local i canviar-lo:

1
2
3

$ git checkout origen / feature2 -b feature2

Funció de la branca2 configurada per rastrejar la funció de la branca remota2 des de l’origen

S’ha canviat a una nova branca “feature2”

Canvia de nom de sucursal Git a Remote GitHub Repo

Ara podem canviar el nom de la branca remota a “feature3” i dur-la a l’origen remot:

1
2
3
4
5

$ git push -u origen característica2: característica3

Total 0 (delta 0), reutilitzat 0 (delta 0)

A https://github.com/myusername/myproject.git

* Funció [nova branca] -> característica3

Funció de la branca2 configurada per fer el seguiment de la funció de branca remota 3 des de l’origen.

Ara hem enllaçat la nostra sucursal “feature2” local amb la branca “feature3” remota.

Qualsevol canvi en la branca local “feature2” serà enviat a “feature3”.

Per solucionar-ho, hauríem de canviar el nom d’una sucursal Git local tal com ho vam fer abans:

1
2
3
4

$ git branca -m característica2 característica3

branca $ git

* característica3

  mestre

Suprimeix la sucursal de Git de Remote GitHub Repo

Després de canviar el nom d’una branca remota, la branca antiga es manté també.

Podeu simplement suprimir la branca antiga si no la necessiteu:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

$ git branca -a

* característica3

  mestre

  comandaments a distància / origen / HEAD -> origen / mestre

  comandaments remots / origen / característica2

  comandaments remots / origen / característica3

  comandaments remots / origen / mestre

 

$ git push push: feature2

A https://github.com/myusername/myproject.git

– característica [suprimida] 2

 

$ git branca -a

* característica3

  mestre

  comandaments a distància / origen / HEAD -> origen / mestre

  comandaments remots / origen / característica3

  comandaments remots / origen / mestre

Seguiment de problemes amb Git i resolució de problemes

Els problemes de seguiment es deriven d’una “referència de seguiment” perduda amb un “repositori: branca” remot.

Git indica aquests problemes mitjançant missatges com els que es descriuen a continuació quan intenteu empènyer o tirar codi:

1
2
3

$ git push característica origen4

error: src refspec feature4 no coincideix amb cap.

error: no s’ha pogut enviar algunes revisions a https://github.com/myusername/myproject.git

Això podria succeir si la sucursal remota es canviava com a “funció4”, però no s’ha actualitzat el local.

Podeu utilitzar la comanda Git branca -a per ajudar a veure com solucionar problemes de sucursals vs locals.

A continuació, podeu fer servir Git checkout i la branca Git -u per corregir la relació.

Finalment, canvieu el nom de la sucursal local perquè coincideixi amb la branca remota per obtenir una gestió més senzilla:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

$ git branca -a

  característica3

* mestre

  comandaments a distància / origen / HEAD -> origen / mestre

  comandaments remots / origen / característica3

  comandaments remots / origen / característica4

  comandaments remots / origen / mestre

 

$ check git feature3

Canvia a la branca “feature3”

 

$ git branch -u origen / característica4

Funció de la branca3 configurada per rastrejar la funció de la branca remota4 des de l’origen.

 

$ git branch -m feature3 feature4

branca $ git

* funció4

  mestre

 

$ git push característica origen4

A https://github.com/myusername/myproject.git

   Característica 3cc5caa..5cedaff4 -> característica4

Conclusió

Esperem que ara rebateu el confort de les sucursals Git a nivell local o remot. Dominar la capacitat d’utilitzar la funcionalitat de canvi de nom de la branca Git us pot estalviar molts maldecaps de desenvolupament al llarg del camí.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me