66 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| title: Delete a Git Branch Both Locally and Remotely
 | |
| localeTitle: Eliminar una sucursal de Git local y remotamente
 | |
| ---
 | |
| // localmente ((si sabes lo que estás haciendo!) git branch -d localBranchName
 | |
| ```
 | |
| // and then if you need to... 
 | |
|  // on remote 
 | |
|  git push origin :remoteBranchName 
 | |
| ```
 | |
| 
 | |
| ## ¿Cuándo eliminar ramas?
 | |
| 
 | |
| Normalmente, en un flujo de contribución, las `Branches` son una excelente manera de trabajar en diferentes características, arreglos, etc., a la vez que se aíslan de la base de código principal. Por lo tanto, un repositorio puede tener una rama `master` y ramas separadas para trabajar en diferentes características.
 | |
| 
 | |
| Normalmente, una vez que se completa el trabajo en una función y se recomienda eliminar la rama.
 | |
| 
 | |
| ## El flujo de trabajo Eliminar:
 | |
| 
 | |
| Digamos que tienes un repo llamado como `AwesomeRepo` , y está alojado en Github, en una ubicación como `https://github.com/my_username/AwesomeRepo` .
 | |
| 
 | |
| También vamos a suponer que tiene las ramas como:  
 | |
| `master`  
 | |
| `feature/some-cool-new-stuff`  
 | |
| `fix/authentication`  
 | |
| `staging`
 | |
| 
 | |
| Por coherencia, asumiremos que los nombres de las sucursales son los mismos tanto en el `local` como en el `remote` .
 | |
| 
 | |
| Ahora, digamos que ha terminado con esa corrección para la autenticación y desea eliminar la `fix/authentication` la rama.
 | |
| 
 | |
| ## Eliminar la rama a distancia:
 | |
| 
 | |
| Simplemente haz:
 | |
| 
 | |
| `git push --delete <remote> <branch>` .
 | |
| 
 | |
| Por ejemplo: `git branch --delete origin fix/authentication`
 | |
| 
 | |
| Si recibe el error
 | |
| ```
 | |
| error: unable to push to unqualified destination: remoteBranchName The destination refspec neither matches an existing ref on the remote nor begins with refs/, and we are unable to guess a prefix based on the source ref. error: failed to push some refs to 'git@repository_name' 
 | |
| ```
 | |
| 
 | |
| Tal vez alguien más ya ha eliminado la rama. Intenta sincronizar tu lista de sucursales usando
 | |
| ```
 | |
| git fetch -p 
 | |
| ```
 | |
| 
 | |
| El manual de git dice -p, --prune Después de buscar, elimine cualquier rama de seguimiento remoto que ya no exista en el control remoto.
 | |
| 
 | |
| ## Eliminando la rama LOCALMENTE:
 | |
| 
 | |
| Primero pague en una sucursal que no sea la que desea eliminar:
 | |
| 
 | |
| `git checkout <branch>` .
 | |
| 
 | |
| Por ejemplo: `git checkout master`
 | |
| 
 | |
| Git no te permitirá eliminar la rama en la que estás actualmente.
 | |
| 
 | |
| Luego proceda con la eliminación de:
 | |
| 
 | |
| `git branch -D <branch>` .
 | |
| 
 | |
| Por ejemplo: `git branch -D fix/authentication` |