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/