Secciones

martes, 4 de febrero de 2020

Uso básico de GIT

 

Introducción: 


En la entrada de hoy voy a hacer un breve resumen de los comandos más usado en git, y unos guidelines para su manejo diario.

Creación de un repositorio si no existe (test)


** Create new repository in your repository manager **
cd $(your_repository_path)
git init
git remote add origin git@server_address:your_project.git
git add *
git commit -m "Initial commit, more info"
git push -u origin master:master
git checkout develop
git commit -a -m "Created develop branch"
git push origin devel:devel

Descarga de un repositorio ya existente (test with anterior)


**Clone the new repository and go to develop branch**
cd $(your_repository_path)
git clone git@server_address:your_project.git
cd $(your_project)
git config --global user.name "Your name"
git config --global user.email "your@email.com"
git branch -a
git checkout develop


Forma de trabajo:


En esta parte vamos a hablar de una forma eficiente para trabajar, separando las versiones estables de las de desarrollo, e intentando ser lo más claros posible a la hora de añadir cambios.

Referencias:
* Cheatsheet Aquí.
* Links aquí.
* Manuals & Reference aquí, aquí y aquí.

Resumen:

Git tips:
-------------------
    Note:   Edit variables $(var_name) assiming origin is the remote.
    Note2:  Terminal code prefix $

Basic:
----------------------------------------------------------------
· Clone with all submodules:                                   $ git clone --recursive $(url_repository)
· Create new branch:                                           $ git branch $(branch_name)
· Change to branch:                                            $ git checkout $(branch_name)
· Remove a branch:                                             $ git branch -d $(branch_name)
· Remove branch from origin:                                   $ git push :$(branch_name)
· Checkout a new branch from origin:                           $ git checkout -b $(branch_name) origin/$(branch_name)
· Add new file to repository:                                  $ git add $(file_or_macro)
· Remove file from repository:                                 $ git rm $(file_or_macro)
· Save edit changes in your PC:                                $ git commit -a -m "$(description)" 
· Update your repository from origin:                          $ git pull origin $(your_branch):$(their_branch)
· Share your changes                                           $ git push origin $(your_branch):$(their_branch)
· Create a new tag in current branch:                          $ git tag -a $(tag_name)
· Add a submodule:                                             $ git submodule add $(url_repository) $(relative_path)

Advanced:
----------------------------------------------------------------
· Show all files that changed in a commit:                     $ git diff-tree --name-only -r $(commit_id)
· Show a summary of files that were modified n commits ago:    $ git whatchanged -1
· Count how many files changed n commits ago:                  $ git whatchanged -1 --format=oneline | wc -l
· Check changes user since a date:                             $ git log --author="username" --oneline --shortstat --since=yesterday
 

Para los más avanzados:

En esta otra entrada, os hablo de algunas herramientas avanzadas. Buscar información, como sale en la chuleta del resumen anterior, el uso de stash, wiki in github with git, multiples remotes, y muchas cosas más.

Referencia: https://www.atlassian.com/git/tutorials/advanced-overview/