Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/brian-emarquez/learning-git

🐱Aprender un sistema de control de versiones es indispensable no importa en qué desarrolles, aprende Git, el SCV más popular y más utilizado. 🐱
https://github.com/brian-emarquez/learning-git

backup git gitbash github versioning vim visual-studio visual-studio-code

Last synced: about 1 month ago
JSON representation

🐱Aprender un sistema de control de versiones es indispensable no importa en qué desarrolles, aprende Git, el SCV más popular y más utilizado. 🐱

Awesome Lists containing this project

README

        

Learning Git/GitHub/GitLab






Stars


Forks






















## Tabla de contenidos

| Numeration | Check | Topic | Edit Gitpot | Downloads | link |
|:-----------:|:-------:|:--------------:|:------------------:|:----------------:|:--------:|
| 001 |:heavy_check_mark: | [Instalacion](#Instalacion) | 💻 | 💾 | [ ⬅️ Atras](https://github.com/BrianMarquez3)|
| 002 |:heavy_check_mark: | [Comands](#Comands) | 💻 | 💾 | [ ⬅️ Atras](https://github.com/BrianMarquez3)|
| 003 |:heavy_check_mark: | [Crear repositorio](#Crear-repositorio) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 004 |:heavy_check_mark: | [Principales Comandos](#Principales-Comandos) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 005 |:heavy_check_mark: | [Clonacion Edicion tags](#Clonacion-Edicion-tags) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 006 |:heavy_check_mark: | [Ramas o Branches](#Ramas-o-Branches) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 007 |:heavy_check_mark: | [Conflictos](#Conflictos) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 008 |:heavy_check_mark: | [Sincronizaciones](#Sincronizaciones) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 009 |:heavy_check_mark: | [Folk](#Folk) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 010 |:heavy_check_mark: | [SSH](#SSH) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 011 |:heavy_check_mark: | [WIKI](#WIKI) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 012 |:heavy_check_mark: | [Project](#Project) | :hourglass: | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 013 |:heavy_check_mark: | [Global](#Global) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |
| 014 |:heavy_check_mark: | [Commit](#Commit) | 💻 | 💾 |[ ⬅️ Atras](https://github.com/BrianMarquez3) |

---





## Instalacion

📦 [Install Git](https://git-scm.com/) Instalador de Git.

📦 [Install Github](https://desktop.github.com/) Instalador de Github.

📦 [Install GitKraken](https://www.gitkraken.com/) Get The Legendary GitKraken Client.

📦 [Install Gitlab](https://about.gitlab.com/) Software. Faster..

📦 [Install Bitbucket](https://bitbucket.org/) Code & CI/CD, built for teams using Jira

## Comands

_Borrar la branch local_

```git
git branch -d localBranchName
```

_Borrar la branch remota_

```git
git push origin --delete remoteBranchName
```
_Configuracion de Usuario_

```git
git config --global user.name "user"
git config --global user.email [email protected]
```

_Crear rama a partir de otra_

```git
git checkout -b "newBranch"
```


NUMBER
STATE
COMANDS
DESCRIPTION


001

git init
Inicializar git, solo se ejecuta una ves


002

git add nombre_archivo
Se consigue llevar el Archivo de repositorio local al area de ensayo(Area de Ensayo)


003

git commit -m "Nombre_cambio"
Trasladar el archivo al area de rep. local


004

git status
Archivos Pendiendites


005

git log --oneline
Historial de Cambios


006

git reset --hard numero_commit
Hacer una restauracion a la version Anterior


007

git add .
Agregar todo al areas de ensayo


008

git commit -am "Comentario"
hace add y commit juntos



009

git commit -am "Comentario"
hace add y commit juntos



010

git commit -ammend
Complejo Editor en este caso lo utilizaremos para modificar



011

git pull
traer las modificaciones de remoto a local



012

git tag nombreDeTagv1 -m "Primera version
Primera version de proyecto, para descargar completamente



013

git pull --tags
Subir el Tags a remoto


014

clone URL
Clonacion de un proyeto en remoto



015

git branch nuevaRama
Crear una rama



016

git checkout rama
Cambiar de rama


018

git merge master
Combianar con la rama principal, ir a la rema principal para hacer el merge


019

git branch -d nombredelaRama
Borrar rama


020

git config --list
Para ver todas la configuraciones



021

git help
Muestra una lista con los comandos más utilizados en GIT


022

git diff
ver lo que se combio en el codigo


023

git commit --amend -m "nombreCorregido"
Corregir un commit antes de reaizar un push


024

git mv nombre_antiguo nombreNuevo
Actualiza ul nombre del archivo


025

git rm nombre_archivo.html
Elimina el archivo con el nombre escrito


026

git config --global user.email [email protected]
cambiar un dato en el listado de configuraciones

## Main Commands

Instalacion de Git en Windows






| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [Principales Comandos](https://github.com/BrianMarquez3/Learning-Git#Principales-Comandos) | 004 | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)

## Clonacion Edicion tags

Instalacion de Git en Windows






| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [Clonacion Edicionm tags](https://github.com/BrianMarquez3/Learning-Git/tree/master/Clonacion) | 005 | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)

## Ramas o Branches

| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [Ramas o Branches](https://github.com/BrianMarquez3/Learning-Git/tree/master/Ramas_o_Branches) | 006 | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)

---





## Conflictos

![php](./images/confictos.png)

| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [Conflictos](https://github.com/BrianMarquez3/Learning-Git/tree/master/Conflictos) | 007 | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)

## Sincronizaciones

| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [Sincronizaciones](https://github.com/BrianMarquez3/Learning-Git/tree/master/Sincronizacion) | 008 | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)
## Folk

| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [Folk](https://github.com/BrianMarquez3/Learning-Git/tree/master/Folk) | 009 | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)

## SSH

| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [SSH](https://github.com/BrianMarquez3/Learning-Git/tree/master/SSH) | 009 | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)

## WIKI

| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [wiki](https://github.com/BrianMarquez3/Learning-Git/tree/master/Wiki) | 009 | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)

## Project

| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [Project](https://github.com/BrianMarquez3/Learning-Git/tree/master/Project) | - | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)

## Global

_Configuración de Git_

Como se ha visto brevemente en podemos acceder a los ajustes de configuración de Git a través del comando git config. Una de las primeras acciones que has realizado con Git ha sido el configurar tu nombre y tu dirección de correo electrónico

| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [Global](https://github.com/BrianMarquez3/Learning-Git/tree/master/Project) | - | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)
## Commit

_github bestpractices_

Durante el desarrollo de un proyecto es muy recomendable contar con una guía de buenas prácticas la cual nos facilite redactar commits que sean claros y puedan ayudar a cualquier miembro del equipo, esto para evitar que a medida que un proyecto se prolonga, los mensajes de los commits de mi git se vuelven cada vez menos informativos y podemos encontrar mensajes como **ya funciona x parte* los cuales en ocasiones no son ni descriptivos y peor aún en ocasiones ni el *responsable** recuerda o sabe lo que generó😒.

Por lo que para poder llevar de la mejor forma un proyecto es recomendable que todos los miembros del equipo adopten un estándar que les permite la redacción de commits, con base a mi experiencia comparto las siguientes recomendaciones.

## Estructura
El mensaje de un commit se divide en 3 partes diferentes el **título, **el cuerpo* y pie* como se muestra en el siguiente ejemplo.

```git
[Titulo ] => Type : Subject

[Body]

[Pie]
```

Como se puede apreciar en la imagen anterior el título se conforma de dos partes las cuales son el tipo y del asunto del mensaje.

### Tipo

*➕ADD *: Se genera una nueva funcionalidad.

*🛠 FIX *: Se soluciona un bug.

♻️ REFACTOR : Refactorización y mejoras.

☠️ DELETE : Se eliminan funciones o archivos.

📚 DOCS : Se generar cambios en la documentación.

Es importante notar que el Type se escribe en mayúsculas y se puede utilizar emoji el cual es opcional en mi caso los utilizo ya que me facilita de primera vista saber el tipo de commit.

### Subject/Asunto

El asunto no debe contener más de 50 caracteres, debe iniciar con una letra mayúscula y no terminar con un punto. Debemos ser imperativos al momento de redactar nuestro commit, es decir, hay que ser objetivos y muy importante tenemos que acostumbrarnos a escribirlos en Inglés esto es una de las mejores prácticas que podemos tener.

### Body/Cuerpo

Se utiliza para explicar el ¿Qué? y ¿Por qué? del commit y no el ¿Cómo?, Al escribir el cuerpo, requerimos de una línea en blanco entre el título y el cuerpo, además debemos limitar la longitud de cada línea a no más de 72 caracteres.

### Footer/Pie

Esta parte es muy importante ya que es donde se coloca el seguimiento de los **issues *o** tickets ***relacionados con los cambios generados.

### Ejemplo

Tomando en cuenta las recomendaciones mencionadas la estructura de nuestro commit se vería de la siguiente manera.

```bash
DOCS: Redaccion de reglas para commits
Een la seleccion Wiki se redactaron las buenas practicas para los commits

Issue: #1
```

🌐[dev.to](https://dev.to/konami12recomendaciones-para-generar-un-buen-commit-544i#:~:text=%F0%9F%9A%A7%2Estructura,y%20del%20asunto%20del%20mensaje.)

---

### Otra Manera

_Type/Tipo_

El tipo es contenido en el titulo y puede ser de alguno de los siguientes casos:

`eat`: Una nueva caracteristica.

`fix`: Se soluciono un bug.

`docs`: Se realizaron cambios en la documentacion.

`style`: Se aplico formato, comas y puntos faltantes, etc; Sin cambios en el codigo.

`refactor`: Refactorizacion del codigo en produccion.

`test`: Se añadieron pruebas, refactorizacion de pruebas; Sin cambios en el codigo.

`chore`: Actualizacion de tareas de build, configuracion del admin. de paquetes; Sin cambios en el codigo.

### Ejemplo

```bash
feat: Summarize changes in around 50 characters or less

More detailed explanatory text, if necessary. Wrap it to about 72
characters or so. In some contexts, the first line is treated as the
subject of the commit and the rest of the text as the body.

The blank line separating the summary from the body is
critical (unless you omit the body entirely);
various tools like `log`, `shortlog` and `rebase` can get
confused if you run the two together.

Explain the problem that this commit is solving.
Focus on why you are making this change as oppose
to how (the code explains that).

Are there side effects or other unintuitive consequenses of this change?
Here's the place to explain them.
Further paragraphs come after blank lines.

- Bullet points are okay, too
- Typically a hyphen or asterisk is used for the bullet, preceded by a
single space, with blank lines in between, but conventions vary here

If you use an issue tracker, put references to them at the bottom, like this:

Resolves: #123
See also: #456, #789
```

🌐[codigofacilito](https://codigofacilito.com/articulosbuenas-practicas-en-commits-de-git)

---

_PLatilla_

```bash

Resumen de los cambios en 50 caracteres o menos

Texto explicativo más detallado, solo si es necesario. La línea en blanco que separa el título del resto del texto es crucial (a no ser que omitas el cuerpo y el mensaje solo tenga título); algunas herramientas pueden mostrar información alterada si omites la línea en blanco de separación.

También se pueden añadir más párrafos, separados igualmente por una línea en blanco.

- Se pueden añadir listas

- Para las listas se usan guiones o asteriscos (como en Markdown)

En el pie, se pueden poner referencias a los IDs de los issue trackers, por ejemplo:

Resuelve: #193
Afecta a: #270, #286
```

| File | Numeration | Link | Folk | Code | Version | State | Download | Go back |
|----------------------------|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| [Commit](https://github.com/BrianMarquez3/Learning-Git/tree/master/Project) | - | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Tabla-de-contenidos)

---
## Book


Server
Name
Authors
Editorial
ISBN
Link


OneDrive
Pro Git
Scott Chacon, Ben Straub
Apress
-
JPro Git

## Spotify Git
🎵 Music Git [List on Spotify 🎤](https://open.spotify.com/playlist/0MJBni0UzdnML1amikx0Rc?si=hiOUBI59RP6V9xBRlBHyeA)

## Paypal Donation
🩸 Hacer una donación [PAYPAL](https://www.paypal.com/donate?hosted_button_id=98U3T62494H9Y) 🍵

## License
Todo acerca de la licencia [here](https://github.com/BrianMarquez3/Learning-Git/blob/master/LICENCE)