Comandos útiles GITHUB

Github

En nuestro diario vivir como desarrolladores necesitamos la ayuda de GIT, este es un listado de comando que pueden ser de gran ayuda
Image
Photo by Yancy Min on Unsplash
Photo by Yancy Min on Unsplash
  • Para crear una llave SSH usando PuTTy[windows] o terminal Linux o MAC
    			
    ssh-keygen -t rsa
    			
    		
  • Para agregar una llave existente diferente a rsa
    			
    ssh-add /home/[your-user]/.ssh/[name-key]
    			
    		
  • Para comprobar la configuración actual de nuestro proyecto
    			
    git config --list
    			
    		
  • Para iniciar un proyecto nuevo, se debe encontrar dentro de la carpeta del proyecto
    			
    git init   //Iniciando github dentro de la carpeta
    git add .  //Agregando todos los archivos del proyecto
    git status //Muestra el listado de archivos agregados al repositorio con git add 
    git commit -m 'iniciando proyecto' //Este comando se utiliza para agregar un comentario a el grupo de archivos que se les implemento el git add
    git remote add origin https://github.com/[name-user]/nombre-repo.git //dirigiendo el repositorio a donde va a ser guardado
    git push -u origin master //enviando los archivos agregados en el git add y git commit
    			
    		
  • Tipos de implementación git checkout
    			
    git checkout -b [name-branch] //Crea una nueva rama en base de la actual
    git checkout -b [name-branch] [name-branch-origin]  //Crea una nueva rama en base a una existente
    git checkout [name-branch-destination]	//puede cambiar de rama con este comando
    git checkout -f	[name-branch]	//Forza el cambio de ramas
    git checkout [id-commit-last] --[ruta_archivo] [ruta_archivo]  //cargar un archivo de una rama anterior.
    git checkout HEAD^ [name-branch] //retorna la rama a el ultimo commit enviado
    			
    		
  • Tipos de implementación git branch
    			
    git fetch        //realiza un pull de las ramas remotas en local
    git show-branch  //muestra todas las ramas con su commit de la última actualización
    git branch [name-branch] //Crea una nueva rama en base de la actual			
    git branch -a  //lista todas las ramas remotas y locales
    git branch -av  //lista todas las ramas con el último commit actualizado 
    git branch -c  [name-branch]//Copia la rama actual
    git branch -c  [old-branch] [new-branch] //Copia una rama con un nuevo nombre
    git branch -d  [name-branch] //Elimina la rama
    git branch -m  [name-branch] //Mueve o cambia el nombre de la rama actualizado
    git branch -m  [old-branch] [new-branch] //Mueve o cambia el nombre de una rama
    git branch -l  //lista las ramas locales 
    git branch --merged //lista las ramas que están actualizadas con la rama master
    git branch --no-merged //lista las ramas que no están actualizadas con la rama master
    			
    		
  • Tipos de implementación git add
    			
    git add [name-file]  //Se utiliza para agregar un archivo al repositorio
    git add -f     //Se utiliza para agregar un archivo o carpeta que este excluido del repositorio en el gitignore
    git add -a     //Agregando todos los archivos que se encuentren en el repositorio y los que no
    git add -u     //Agregando unicamente los archivos que se encuentran en el repositorio
    git add -n     //Crea un git add fantasma para ver que archivos se van a subir
    git add .      //Agregando todos los archivos del proyecto
    git add *.txt  //Agregando todos los archivos que tengan la extensión txt
    
    			
    		
  • Tipos de implementación git status
    			
    git status //Verifica los cambios en los archivos
    git status -i //lista los archivos incluyendo los ignorados
    git status -s //lista la modificación de archivos disminuyendo el texto ej D[delete] 
    git status -uno //lista los archivos que tienen cambios, excluye los nuevos archivos.
    			
    		
  • Tipos de implementación git commit
    			
    git commit -m 'comentario para el commit'  //Se utiliza para agregar un archivo al repositorio
    git commit -a     //Es utilizado para verificar si existen conflictos al momento en la preparación del commit
    git commit -am     //Es utilizado para preparar todos los archivos disponibles a ser enviados al repositorio
    			
    		
  • Tipos de implementación git push
    			
    git push         //Envia los cambios a el ultimo branch al que se realizo un push normalmente master
    git push origin [name-branch]        //Envia los cambios a el branch que se desea
    git push -f origin [name-branch]     //En caso de enviar los cambios y existan errores este comando ayuda a forzar el envio de los mismos
    git push -a      //Envia el cambio a todos los branch disponibles
    git push remote [name-branch]      //Envia el cambio a una rama remota
    			
    		
  • Tipos de implementación git merge y git rebase
    Nota:El rebase deja un listado lineal de las ramas pierde el historial de los commit, el merge deja un gráfico de las ramas y mantiene el historial
    			
    git merge  [branch-name]   //Realiza una combinación de los commit que se encuentran en la rama nombrada y crea una linea en la rama actual
    git merge --abort          //Despues de solicitar el merge y no desea continuar con los cambios puede utilizar este comando
    git merge  --continue       //Despues de solicitar el merge y desea continuar con los cambios puede utilizar este comando
    			
    			
    git rebase  [branch-name]   //Combina las 2 ramas en la rama actual (Esto no genera un seguimiento de ramas)
    git rebase --abort          //Despues de solicitar el rebase y no desea continuar con los cambios puede utilizar este comando
    git rebase  --continue       //Despues de solicitar el rebase y desea continuar con los cambios puede utilizar este comando
    			
    		
    • Como Renombrar una rama
      			
      git branch -m [new-branch-name]   //Realiza un cambio de nombre a la rama actual
      git branch -m [old-branch-name] [new-branch-name]   //Realiza un cambio de nombre a una rama
      git push origin :[old-branch-name] [new-branch-name]   //Elimina la rama remota antigua y realice push de la nueva rama.
      			
      		
      • Tipos de implementación git reset
        			
        git reset --hard origin/[branch-name] //Devuelve los cambios de la rama
        git reset HEAD~1 // revierte los cambios del commit local
        			
        		
      • Tipos de implementación git mv
        			
        git mv [file] //Cambiar el nombre a un archivo o una carpeta
        			
        		
      • Tipos de implementación git config
        			
        git config core.fileMode false //Evitar cambios de permisos
        			
        		
      • Tipos de implementación git update-index
        			
        git update-index --chmod=+x [file] //permite cambiar permisos a un archivo en git
        			
        		
      • Como usar una llave ssh especifica en el proyecto o usar una alterna llamandola desde el lugar donde se encuentra
        			
         GIT_SSH_COMMAND='ssh -i ~/.ssh/[ssh_name] -o IdentitiesOnly=yes' [git command] //permite llamar una llave usar el comando
        git config core.sshCommand "ssh -i ~/.ssh/[ssh_name]" //permite llamar una llave al proyecto actual
        		
      Inicio
      Julián Rozo
      CEO
      Skype:
      julianrozor