herramientas Git

Para más información, véase:

Git- novato Tutorial

Guía concisa para Git

Git y SVN diferencia


1, Git es un distribuido, SVN no es : Este es un no-Git y otro sistema distribuido de control de versiones, la diferencia núcleo.

2, Git los metadatos contenidos almacenados, y SVN es por archivo: Todos los sistemas de control de recursos son los archivos de meta-información oculta en un Svn similares, .cvs otra carpeta.

3, Git y SVN rama de diferentes ramas: la rama que no es especial en el SVN, de hecho, es el depósito en otro directorio.

4, Git no tiene un número de versión global, y SVN son: Hasta ahora esto se compara con el SVN Git falta una de las mayores características.

5, superior a la integridad de los contenidos Git SVN: almacenamiento de contenidos Git utilizando el algoritmo hash SHA-1. Esto asegura la integridad del contenido del código, asegúrese de que para reducir el daño al repositorio en el caso de problemas de fallo de disco y red.

instalar


Descargar el paquete de instalación
Baidu nube de enlace código de extracción: ette

flujo de trabajo Git


  • Espacio de trabajo: lo que se puede ver en el catálogo ordenador.
  • Temporal Área: Inglés llama etapa, o índice. Normalmente se almacena en el "directorio de .git en" archivo de índice (.git / index) en el siguiente, así que pusimos el área de preparación a veces se llama el índice (index). Al igual que el área de caché, de manera temporal se guardan los cambios.
  • Repositorio: espacio de trabajo tiene una .git directorio oculto, este no es el área de trabajo, pero repositorio Git.

CABEZA realidad apunta a la rama principal de un "cursor". comando head donde aparece en la ilustración puede ser reemplazado por el maestro. objetos área identificada como biblioteca de objetos de Git, situado realmente "objetos .git /" directorio, que contiene una variedad de objetos y la creación de contenidos.

Cuando el área de trabajo para modificar (o nuevos) archivos ejecutar "add git" zona de espera de comandos, el árbol de directorios se actualiza mientras que el área de trabajo para modificar (o añadir) el contenido de un archivo se escribe en biblioteca de objetos el nuevo objeto y el ID de objeto se registra en un área temporal del índice de archivo.

Al realizar un commit ( GIT el commit tiempo), el árbol de directorios en el área temporal de escritura a la (biblioteca de objetos) del repositorio en, rama principal se actualizará en consecuencia. se somete área del árbol de directorio temporal es decir el punto principal del árbol de directorios.

"Git RESET la cabeza" : será reescrito área de ensayo árbol, se sustituye por el maestro de puntos de ramificación del árbol, pero el área de trabajo no se ve afectada.

"RM git --cached" : archivos borra directamente desde el área de estacionamiento, el área de trabajo no es hacer un cambio.

"Git checkout." O "git checkout -" : todo el uso del área de ensayo o el archivo especificado para reemplazar el espacio de trabajo de archivos. Esta operación es muy peligroso, se borran los cambios del espacio de trabajo no se agregan al área de ensayo.

"HEAD git checkout." O "git checkout HEAD" : reemplaza los archivos de zona de espera y área de trabajo, así como con todos los puntos Cabeza rama principal o parte del archivo. Este comando es muy peligroso, ya que los cambios serán despejar el área de trabajo y área temporal no comprometidos.

el uso de Git


Los procesos convencionales


La información de configuración de cuenta 1.Git

git config --global user.name ZYX-pt

git config --global user.email [email protected]

2. Utilice el comando git clone de un mando a distancia clones de la biblioteca

git clone https://github.com/zyx-pt/GitTest

Cuando la clonación requiere autenticación de cuenta github, después de la finalización de un proyecto oculto directorio .git, el directorio es para controlar y administrar repositorio Git, está bien, no modifique manualmente el archivo o carpeta, o cambiar el desorden, puesto repositorio Git para destruir.

3. Añadir y enviar

git add *

git commit "información de entrega código" -m

4. Cambios de empuje

CABEZA cambios locales han estado en la biblioteca, se someten a un almacén remoto

git push origin master

Ver en GitHub, encontró que hasta presentar nuevos documentos

Crear un almacén local, no clonar un almacén existente, empujado al repositorio remoto


git init

-A git add

git commit -m "para enviar información de notas"

git add origen remoto

git pull origin master

git push origin master

Si la ruta de archivo local consistente con el repositorio remoto, no va a fallar, de lo contrario será el siguiente error

solución:

1. El uso de la fuerza de empuje:

git push -u -f maestro origen

Sería ser modificado de forma remota pérdida es generalmente no es recomendable, especialmente cuando muchas personas trabajan juntos para desarrollar

2.Push repositorio remoto antes de que el tirón hacia abajo primero modificado

git pull origin master

git push -u maestro origen

3. Si no desea fusionar los cambios remotos y locales, puede crear una nueva rama, y ​​luego empujar a la nueva rama

git branch [nombre]

git push -u origen [nombre]

Para eliminar un almacén remoto de archivos subidos por error


Introducirlo en el directorio, puede utilizar el comando dir

Para eliminar la carpeta de destino repositorio remoto:

git rm -r --cached objetivo

git commit "borrar archivos de destino en un archivo de carpetas del repositorio remoto" -m

git push -u maestro origen

Enviar para ignorar archivos o carpetas innecesarias


.gitignore archivo, el papel del archivo es decirle a Git qué archivos necesita agregar a la gestión de versiones

Para desarrollar el hábito de .gitignore archivo se crea en el principio del proyecto, o si el empuje, necesidad de ser tratado por separado

1. Añadir .gitignore archivo

.gitignore táctil

2. Modificar el archivo .gitignore

El uso Notepad ++ editor

vim .gitignore: comando para editar (entrar en el editor, ESC para salir del editor, shift + zz Guardar y salir de edición)

normas comunes:

/ Target / ignorar la carpeta raíz

target / en el directorio / destino ignorado /, puede ser / niño / target subdirectorio bajo /

.zip ignorar todos los archivos .zip, que coincide con cualquier carácter

/mtk/do.c ignorar una carpeta de archivos específicos

! *. Java ! Principio dijo que no ignoran

PM_STR? .Txt ? Que coincide con un carácter

* . [OA] soportes comodines: ignoran todos los archivos con extensión .o o .a de

hola [0-9] .txt [] representa un único carácter coincidente en paréntesis:. se puede utilizar - para representar caracteres consecutivos, tales como 0-9, az, AZ et al, [0-9] representa de 0 a 9 coincidencias un solo carácter. Puede ser utilizado excepto para indicar, por ejemplo [ 0-9] representa un único carácter distinto de 0 a 9.

3. Resolver las normas no tienen efecto de modificación .gitignore

Antes de crear un archivo en .gitignore empujar el proyecto, incluso si se escribe en .gitignore nuevas reglas de filtrado de archivos, estas reglas no funcionará, Git se sigue gestionar todas las versiones de archivos.

.gitignore puede ignorar esos archivos no habían sido la pista, si algunos archivos se han incluido en la gestión de versiones, modificando .gitignore no es válido. A continuación, la solución es eliminar primero la memoria caché local (no realizar un seguimiento de los cambios en el estado), y después se sometió a:

git rm -r --cached.

git add.

git commit -m '.gitignore actualización'

configuración GitHub SSH


1, Git el nombre de usuario y la configuración de correo electrónico

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

2. Utilice su correo electrónico registrado GitHub generar claves

ssh-keygen -t rsa -C "[email protected]"

Introduzca clave intermedios 3 veces

directorio .ssh generará id_rsa y id_rsa.pub dos documentos, id_rsa es privada y no puede filtrarse, id_rsa.pub es la clave pública, seguro de usar

3, en GitHub cuenta para añadir claves SSH, Configuración == "SSH y claves GPG, GitHub pueden realizar el cifrado y descifrado de acuerdo con esto, con el fin de determinar esto presentación es operado por sí mismo.

4, la prueba es clave para el éxito conjunto SSH

ssh -T [email protected]

La autenticidad de anfitrión 'github.com (192.30.253.113)' no puede ser establecida. RSA huella de la clave es SHA256: nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8. ¿Seguro que desea continuar conexión (sí / no)? si

Si se debe continuar la conexión? Introduzca sí

La siguiente salida, indicado por el

xxxx Hola! Usted ha autenticado con éxito, pero GitHub no proporciona acceso shell.

Supongo que te gusta

Origin www.cnblogs.com/zhengyongxian/p/12600260.html
Recomendado
Clasificación