Git comandos de uso frecuente de un vistazo

1. Configuración relacionada

##### 基本配置 #####
git help <verb>                                      # 获取帮助
git config --list                                    # 列出所有配置
git config --global user.name "Your Name"            # 全局设置姓名
git config --global user.email "[email protected]"   # 全局设置邮箱

##### Git命令别名 #####
git config --global alias.st status                  # 查看状态别名
git config --global alias.unstage 'reset HEAD --'    # 取消暂存别名
git config --global alias.last 'log -1 HEAD'         # 查看最后一次提交别名
git config --global alias.visual '!gitk'             # !外部命令别名

Segundo, lo básico de Git

##### 获取Git仓库(repository) #####
git init                                          # 初始化当前工作目录为仓库
git clone <url>                                   # 克隆现有仓库
git add <fileName>                                # 开始跟踪(track)文件,支持通配符
git commit -m 'description'                       # 提交(commit)更改到本地仓库
git commit -a                                     # 提交所有已跟踪的文件

git rm <fileName>                                 # 移除文件,暂存区和磁盘都移除
git rm --cached <fileName>                        # 移除仓库文件,保留磁盘文件
git mv <oldPath> <newPath>                        # 移动文件

git log [-p] [-2] [--stat]                        # 查看提交历史,-p显示差异,-2显示两行
git log --pretty=format:"%h - %an, %ar : %s"      # 指定格式,更多查看官方手册

git reset HEAD <file>                             # 取消暂存文件
git checkout -- <file>                            # 撤消修改,还原到上次提交/克隆的样子,不可逆


##### 远程仓库 #####
git remote [-v]                                   # 查看远程仓库,-v显示url
git remote add <shortname> <url>                  # 添加远程仓库,shortname可替代整个url
git fetch [remote-name]                           # 拉取远程仓库,不自动合并
git pull [remote-name]                            # 拉取远程仓库,自动合并到当前分支
git push [remote-name] [branch-name]              # 推送到远程仓库
git remote show [remote-name]                     # 查看远程仓库
git remote rename <old-name> <new-name>           # 重命名远程仓库
git remote rm <remote-name>                       # 移除远程仓库


##### 打标签:用于发布结点v1.0 #####
git tag                                           # 列出标签
git tag -l '<glob-content>'                       # 列出相关标签
git tag -a <tag-name> -m "<annotated-content>"    # 创建附注标签(annotated)
git show <tag-name>                               # 查看标签信息
git tag <tag-name>-lw                             # 创建轻量标签(lightweight)
git tag -a <tag-name> <md5sum>                    # 后期打标签,检验和/部分校验和
git push origin [tagname]                         # 共享标签,默认不会推送标签,故需显示推送
git push origin --tags                            # 推送所有不在远程仓库的标签
git tag -d <tagname>                              # 删除本地标签
git push <remote> :refs/tags/<tagname>            # 删除后更新远程仓库


##### 状态管理 #####
git status                                        # 检查当前状态
git status -s                                     # 状态简览
git diff                                          # 查看未暂存的修改
git diff --cached                                 # 查看已暂存的修改

文件状态标记释义:
?? 新添加未跟踪的文件
 M 修改过未放入暂存区
M  修改过已放入暂存区
MM 同时处于上面的状态
A  新添加到暂存区的


##### 忽略文件.gitignore(自己创建)#####
格式规范:
• 所有空行或者以 # 开头的行都会被 Git 忽略
• 可以使用标准的 glob 模式匹配。
• 匹配模式可以以(/)开头防止递归。 
• 匹配模式可以以(/)结尾指定目录。 
• 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。

Tres, modelo de rama de Git

git branch <branch-name>                     # 创建分支
git checkout <branch-name>                   # 切换分支
git merge <branch-name>                      # 合并分支
git checkout -b <branch-name>                # 新建分支并合并
git branch -d <branch-name>                  # 删除分支
git log --oneline --decorate                 # 查看分支当前所指对象
git log --oneline --decorate --graph --all   # 查看分叉历史

 

Cuatro puntos a tener en cuenta

  1. Ha sido con el rastro del archivo es se refiere a aquellos que están satisfechos de que la versión de control de documentos.
  2. Los primeros tiempos de la clonación de un solo almacén cuando la espera , el directorio de trabajo Catálogo de todos los archivos son pertenecen a ha sido con el rastro de archivos .
  3. git add Este es un multi- función puede ordenar : puede utilizarla para comenzar con el seguimiento de nuevos archivos , o aquellos que han sido con el rastro de los archivos de poner en el temporal de memoria zona también se puede utilizar en conjunto y cuando a tener un conflicto de archivo de marca denotado como solución debe indicar así sucesivamente . Para este proceso de mandatos solución es " add añadir el contenido al siguiente tiempo mencionado puesto en " en lugar de " a un archivo añadido al proyecto ."Para ser más co apropiado .
  4. Los archivos con aparecen en el temporal de memoria área y no temporal depósito área. Esta es la forma en que puede ser capaz de hacer? Verdadera ocasión de Git sólo de forma temporal excepto el de ejecutar las git add comandos de versión, como si ahora mencionas pago, archivo de versión es su mejor después de una racha de complemento git que la versión del comando en lugar ejecuta git commit tiempo, en el directorio de trabajo registrado en la versión actual.
  5. git diff presente a sí mismos sólo se muestran sin embargo temporales de memoria cambios, y no de las veces se menciona posterior ya que la hacen todos los cambios. Así que a veces esperando que mira a la sub- puesta en escena todas las actualizados los archivos después de ejecutar git diff después , pero lo que no lo hizo, que es el original de la causa.
  6. git commit --amend este comando será temporalmente almacenada zona de archivo mención pago . Como si a partir de los tiempos mencionados posterior ya que también no hacer cualesquiera modificaciones cambiaron ( ejemplo como en los tiempos mencionados posterior después de Ma realizar en la línea de comandos), y luego se rápida foto se mantendrá sin cambios, mientras que está la reparación sólo cambia proporcionar transversal de canal de información .
  7. Head es un puntero, se refiere a la ubicación actual del local de sub- rama ( Nota : la CABEZA igual que como el actual sub- rama , respectivamente, NAME).

Apéndice

Referencia:

Manual oficial del sitio web de Git

Tutorial de Liao Xuefeng Git

  • Distribuido

La computadora de todos es una biblioteca de versión completa, y el almacén central solo se usa para facilitar el intercambio de las modificaciones de todos.

  • Sobre el control de versiones

Comparación de diferencia

Grabar instantánea

   

  • Diagrama de estado del archivo

  • Enviar objeto, objeto de árbol, relación de objeto blob

  • Cada vez que envíe, el objeto enviado registrará el objeto principal

  •  Implementación de historial de ramificación y confirmación

 

 

19 artículos originales publicados · Me gusta9 · Visita 3006

Supongo que te gusta

Origin blog.csdn.net/Necrolic/article/details/104748775
Recomendado
Clasificación