GIT
https://kinsta.com/es/base-de-conocimiento/instalar-git/
Instalación en Windows
También hay varias maneras de instalar Git en Windows. La forma más oficial está disponible para ser descargada en el sitio web de Git. Solo tienes que visitar http://git-scm.com/download/win y la descarga empezará automáticamente. Fíjate que éste es un proyecto conocido como Git para Windows (también llamado msysGit), el cual es diferente de Git. Para más información acerca de este proyecto visite http://msysgit.github.io/ .
Otra forma de obtener Git fácilmente es mediante la instalación de GitHub para Windows. El instalador incluye la versión de línea de comandos y la interfaz de usuario de Git. Además funciona bien con Powershell y establece correctamente el "caching" de credenciales y la configuración CRLF adecuada. Aprenderemos acerca de todas estas cosas un poco más adelante, pero por ahora es suficiente mencionar que estas son cosas que deseas. Puedes descargar este instalador del sitio web de GitHub para Windows en http://windows.github.com .
En Windows, sólo tienes que descargar el instalador y ejecutarlo. Sigue estos sencillos pasos para hacerlo:
Descarga el instalador de GIT para Windows.
Una vez que hayas descargado el instalador, haz doble clic sobre el ejecutable para que comience el proceso de instalación y sigue las instrucciones que te aparecerán en pantalla. Al igual que cualquier otro programa, tendrás que dar “Next” (siguiente) en varias ocasiones hasta que aparezca la opción “Finish” (terminar) para completar la instalación.
Ahora tienes que abrir el símbolo de sistema y escribir los siguientes comandos en la terminal:
Finalmente, verifica que Git se instaló correctamente
git --version
git config --global user.name "Tu nombre" git config --global user.email "ejemplo@email.com"
Verifica tu Configuración
Para comprobar que tu configuración de Git es correcta, ejecuta el siguiente comando:
git config --list
git --version
Cuando clonamos un repositorio no encontramos la carpeta vendor y en esta carpeta es donde se encuentran todas las dependencias de composer para que funcione correctamente nuestro proyecto, para instalar la carpeta vendor ejecutamos el comando::
compoer install
Al ejecutar el comando se crea la carpeta vendor y todas las depencias del proyecto.
Creamos el archivo .emv y configuramos la conexión de la base de datos.
La variable app key no hay ninguna key generada por lo que procedemos a ejecutar el comando:
Para subirlo a tu git , tendras que eliminar la carpeta git.
git install
git make: key generate
Cada commit irá firmado con nuestro email y nombre.
$ git config --global user.email "mtorres@ual.es"
$ git config --global user.name "Manuel Torres Gil"
Configuración almacenada en ~/.gitconfig
Si nos ponemos un poco más técnicos:
El Walking Dyrectory es una copia de una versión del proyecto.
Estos archivos se sacan de la base de datos comprimida en el repositorio local y se colocan en el disco para que los puedas usar o modificar.
El Staging es un archivo generalmente contenido en el directorio de git que almacena información acerca de lo que va a ir en tu próxima confirmación en tu próximo commit.Funciona como una lista o índice indica que archivos van a ir para el commit.
El repositorio local o también conocido como el directorio de Kit es donde se almacenan los metadatos
y la base de datos de objetos para tu proyecto y es la parte más importante de kit.
Es lo que se copia cuando Glonass un repositorio desde otra computadora cuando tu tienes tu código listo
Hay un último paso es que si tú quieres darle esto a otra persona tú tienes que hacer lo que se conoce como un push a un repositorio remoto.
git init
Crea un repo local en la carpeta de proyecto
Creamos carpeta para pruebas denominada holagit y entramos a ella.
$ git init
Initialized empty Git repository in C:/Users/Administrator/holagit/.git/
Working dir, Staging Area y Repo
Crear un archivo de ejemplo
README.md
# Hola Git
Este es mi primer archivo para control de versiones.
2.5. git status
// Solo muestra los archivos modificados
git status -s
Muestra las diferencias entre el Working dir, la Staging Area y el repo.
$ git status
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
README.md
nothing added to commit but untracked files present (use "git add" to track)
2.6. git add
// Agregar todos los archivos para que esté pendiente de los cambios
git add .
Añade desde Working dir a Staging area (index)
La sintaxis es git add files
Algunos ejemplos:
$ git add README.md
$ git add .
$ git add --all
Vemos los cambios con git status para ver cómo ha pasado a la Staging area y está listo para pasarlo al repositorio.
$ git status
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: README.md
2.7. git commit
Añade desde Staging Area al repo
La sintaxis es git commit -m commitText
// Muestra en una línea los commit realizados
git log --oneline
$ git commit -m "README.md creado"
[master (root-commit) 1f86692] README.md creado
1 file changed, 3 insertions(+)
create mode 100644 README.md
Podemos ver el estado con git status
$ git status
On branch master
nothing to commit, working tree clean
GITHUB
Github es la plataforma online para trabajar con proyectos en git, en simples palabras es utilizar git de forma remota pero entiendase que son cosas totamente distintas
Para subir un archivo hay que ubicarse en la carpeta del repositorio y seguir estos pasos:
git add archivo
git commit -m "comentario"
git push
#Crear una cuenta en Github
Para comenzar a trabajar con github tienes que crear una nueva cuenta, es gratis así que no pierdes nada en este punto 😃
#Crear una nuevo repositorio
Para subir nuestro proyecto debemos crear un nuevo repositorio, al momento de la creación nos mostrará una serie de comandos para subir el proyecto.
git remote add origin https://github.com/bluuweb/tutorial-github.git
git push -u origin master
Al ejecutar estas líneas de comando te pedirá el usuario y contraseña de tu cuenta de github.
// Nos muestra en que repositorio estamos enlazados remotamente.
git remote -v
#Subir los tags
Por defecto si creaste un proyecto con diferentes versiones no subirá los tags, para eso tenemos el siguiente comando.
git push --tags
#Push
Al ejecutar el comando git push estaremos subiendo todos los cambios locales al servidor remoto de github, ten en cuenta que tienes que estar enlazado con tu repositorio, para eso puedes utilizar git remote -v luego ejecuta:
git push
#Pull
Cuando realizamos cambios directamente en github pero no de forma local, es esencial realizar un pull, donde descargaremos los cambios realizados para seguir trabajando normalmente.
Es importante estar enlazados remotamente, puedes verificar con: git remote -v, luego ejecuta:
git pull
#Fetch
Este comando hace la comparación de nuestros archivos locales con los del servidor, si existiera alguna diferencia nos pediría realizar un get pull para realizar un match de nuestros arhivos locales.
git fetch
#Clonar repositorio
Para descargar un repositorio completo basta con tomar la url ej: https://github.com/bluuweb/tutorial-github.git y ejecutar el siguiente comando en alguna carpeta de su computadora.
git clone https://github.com/bluuweb/tutorial-github.git nombreCarpeta
2.8. git blame
Quién ha cambiado un archivo y cuándo
$ git blame README.md
^1f86692 (Manuel Torres Gil 2018-11-27 17:39:47 +0000 1) # Hola Git
^1f86692 (Manuel Torres Gil 2018-11-27 17:39:47 +0000 2)
^1f86692 (Manuel Torres Gil 2018-11-27 17:39:47 +0000 3) Este es mi primer archivo para control de versiones.
2.9. git log
Muestra los comentarios comenzando por el más reciente.
$ git log
$ git log --oneline
$ git log
commit 1f8669231adc380d96261f91495018ba2791b0b3 (HEAD -> master)
Author: Manuel Torres Gil <mtorres@ual.es>
Date: Tue Nov 27 17:39:47 2018 +0000
README.md creado
$ git log --oneline
1f86692 (HEAD -> master) README.md creado
Trucos
// Muestra en una línea los commit realizados
git log --oneline
// Muestra en una línea los commit realizados pero más elegante
git log --oneline --decorate --all --graph
// Solo muestra los archivos modificados
git status -s
Diferencias entre -- y -
--decorate hace referencia a una palabra
-s hace referencia al comando o a varios comandos, -sa serían dos comandos diferentes
// Vemos información de la rama maestra
git status -s -b
git status -sb //Hace lo mismo que el comando anterior
#Creando alias globales
Los alias nos sirven para crear atajos de comandos, podemos guardar diferentes alias de forma global y quedarán guardados en la configuración de git.
// Guardamos el alias "lg" que ejecutará todo lo que está entre comillas
git config --global alias.lg "log --oneline --decorate --all --graph"
// Para ver el archivo config con los alias creados
git config --global -e
Vim es el editor de código en la línea de comandos
Salir del modo edición "Vim"
Para salir del modo edición de la líneas de comando precionar :q, en caso de realizar algún cambio sin guardar escribir :qa
:q! también sirve para salir sin guardar
// Modo lectura sin poder modificar
git config --global -l
// Realiza el add . y commit más mensaje al mismo tiempo
git commit -am "más comandos agregados"
// Para editar un commit, como por ej: el mensaje
git commit --amend
Trucos de editor Vim
i para comenzar a editar
esc para salir del modo edición
wq para guardar y salir
q! salir sin guardar cambios
#Viajes a través de los commit
Vamos a conocer como podemos movernos entre los diferentes commit que tengamos registrados, supongamos que tenemos los siguientes commit:
f82f457 (HEAD -> master) mas comandos agregados
f52f3da nuevos comandos en fundamentos.md
e4ab8af mi primer commit
// Viajamos al commit en específico f52f3da
git reset --mixed f52f3da
// Viajamos al commit en específico f52f3da y eliminamos los cambios futuros
git reset --hard f52f3da
// Muestra todos los cambios incluso si borramos los commit
git reflog
// Viajamos al commit en específico f52f3da y podemos restaurar los archivos
git reset --hard f52f3da
Si no hicimos un commit pero aún así queremos revertir los cambios en un archivo específico podríamos utilizar el siguiente comando:
git checkout -- nombreArchivo.conExtensión
Si deseamos destruir todos los cambios sin haber realizado un commit podemos utilizar:
git reset --hard
Para mayor información visite: Click aquí
#Renombrar archivos
Puede que queramos renombrar un archivo, es recomendable hacerlo directamente en la línea de comandos para registrar los cambios con git.
// Cambiar nombre
git mv nombreOriginal.vue nombreNuevo.vue
Recuerden hacer el commit para registrar los cambios en git.
#Eliminar archivos
// Cambiar nombre
git rm nombreArchivo.vue
También recordar hacer el commit para salgar cambios en git.
#Ignorando Archivos
Para no hacer seguimiento de carpetas o archivos, debemos crear el siguiente archivo:
.gitignore
Su estructura de ejemplo sería así:
arhivo.js // Ignora el archivo en cuestion
*.js // Ignora todos los arhivos con extensión .js
node_modules/ //Ignora toda la carpeta
#Ramas o branch
Hasta el momento solo hemos trabajado en la rama "master" pero puede que necesitemos crear diferentes ramas para los seguimientos de git.
// Crea una nueva rama
git branch nombreRama
// Nos muestra en que rama estamos
git branch
// Nos movemos a la nueva rama
git checkout nombreRama
Podemos unir la rama master con la nueva, para eso tenemos que estar en la master para ejecutar el siguiente comando:
// Nos movemos a la nueva rama
git merge nombreRama
// Eliminar una rama
git branch -d nombreRama
Atajos
Podemos utilizar git checkout -b nuevaRama para crear la nuevaRama y viajar a ella.
#Tags
Con los tags podemos hacer versiones de nuestro proyecto.
// Crear un tags
git tag versionAlpha -m "versión alpha"
// Listar tags
git tag
// Borrar tags
git tag -d nombreTags
// Hacer una versión en un commit anterior ej: f52f3da
git tag -a nombreTag f52f3da -m "version alpha"
// Mostrar información del tag
git show nombreTag
Comentarios
Publicar un comentario