git常用命令参考

git常用命令

以下是一些常用的 Git 命令,按照用途分类整理:

配置设置

git config --list --show-origin	# 查看所有的配置以及它们所在的文件
git config --global user.name "xxx" # 设置全局用户名,信息记录在~/.gitconfig文件中
git config --global user.email xxx@xxx.com # 设置全局邮箱地址,信息记录在~/.gitconfig文件中
git config --global alias.co checkout # 给命令起别名
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.last 'log -1 HEAD' # 看到最后一次提交

基础操作

git init	# 初始化仓库,初始化仓库将当前目录配置成git仓库,信息记录在隐藏的.git文件夹中
git clone <repository-url> # 克隆远程仓库,将远程仓库下载到当前目录下
# 三种等价方法获取帮助
git help <verb>
git <verb> --help
man git-<verb>

版本控制

git status # 查看当前状态
git add <file> # 添加单个文件到暂存区
git add . # 添加所有改动的文件到暂存区
git commit -m "提交信息" # 提交到本地仓库,将暂存区的内容提交到当前分支
git log # 查看当前分支的提交历史
git log --oneline # 简洁格式
git reflog # 查看HEAD指针的移动历史(包括被回滚的版本)

分支管理

git branch	# 查看所有分支和当前所处分支
git branch <branch-name> # 创建新分支
git checkout <branch-name> # 切换分支
git checkout -b <branch-name> # 创建并切换到新分支
git checkout -t origin/branch_name # 将远程的branch_name分支拉取到本地
git merge <branch-name> # 将分支branch-name合并到当前分支上
git branch -d <branch-name> # 删除已合并分支
git branch -D <branch-name> # 强制删除分支
git branch --merged # 查看已经合并到当前分支的分支
git branch --no-merged # 查看尚未合并到当前分支的分支

远程操作

git remote -v	# 查看远程仓库
git clone <repository-url> # 克隆远程仓库,将远程仓库下载到当前目录下
git remote add origin <repository-url> # 将本地仓库关联到远程仓库 git push -u (第一次需要-u以后不需要) # 将当前分支推送到远程仓库
git push origin <branch-name> # :将本地的branch-name分支推送到远程仓库
git push origin serverfix:awesomebranch # 将本地的serverfix分支推送到远程仓库上的 awesomebranch分支
git push -d origin branch_name # 删除远程仓库的branch_name分支 git fetch <remote> # 将数据下载到你的本地仓库——它并不会自动合并或修改你当前的工作
git pull # 将远程仓库的当前分支与本地仓库的当前分支合并
git pull origin branch_name # 将远程仓库的branch_name分支与本地仓库的当前分支合并 git remote remove # 移除一个远程仓库

标签管理

git tag	# 查看标签
git tag -a v1.4 -m "my version 1.4" # 创建标签
git tag -d <tagname> # 删除标签
git push origin <tagname> # 推送特定标签版本到远端服务器
git push origin --tags # 一次性推送很多标签
git push origin --delete <tagname> # 删除远端标签
git push <remote> :refs/tags/<tagname> # 删除远端标签 冒号前有空格

恢复与撤销

git rm <file>	# 从已跟踪文件清单中移除,连带从工作目录中删除指定的文件,这样以后就不会出现在未跟踪文件清单中了
git rm --cached <file> # 把文件从 Git 仓库中删除(亦即从暂存区域移除),但仍然希望保留在当前工作目录中
git checkout -- <file> 或 git restore XX # 撤销工作区修改
git reset HEAD <file> # 撤销暂存区的文件
git reset --hard <commit-id> # 回退到某次提交
git reset --hard HEAD^ 或 git reset --hard HEAD~ # 将代码库回滚到上一个版本
git reset --hard HEAD^^ # 往上回滚两次,以此类推
git reset --hard HEAD~100 # 往上回滚100个版本

高级操作

git diff xx # 命令比较的是工作目录中当前文件和暂存区域快照之间的差异(若没有暂存区则与最后一次commit的版本比较)
git diff --staged # 比对已暂存文件与最后一次提交的文件差异
git difftool --tool-help # 查看系统支持哪些 Git Diff 插件 git push --set-upstream origin <branch-name> # 创建并切换到分支后推送
git push --set-upstream origin branch_name # 设置本地的branch_name分支对应远程仓库的branch_name分支
git branch --set-upstream-to=origin/branch_name1 branch_name2 # 将远程的branch_name1分支与本地的branch_name2分支对应 git stash # 将工作区和暂存区中尚未提交的修改存入栈中
git stash apply # 将栈顶存储的修改恢复到当前分支,但不删除栈顶元素
git stash drop # 删除栈顶存储的修改
git stash pop # 将栈顶存储的修改恢复到当前分支,同时删除栈顶元素
git stash list # 查看栈中所有元素

git常用命令参考的更多相关文章

  1. Git常用命令参考手册

    配置 # 查看全局配置列表 git config -l # 查看局部配置列表 git config --local --list # 查看已设置的全局用户名/邮箱 git config --globa ...

  2. Git 常用命令详解

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  3. Git 常用命令2

    Git 常用命令 Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ gi ...

  4. Git 常用命令详解(二)

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  5. 【转】 Git 常用命令详解(二)----不错

    原文网址:http://blog.csdn.net/ithomer/article/details/7529022 Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如: ...

  6. git常用命令2

    一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支git branch -r ...

  7. 总结自己的Git常用命令

    总结自己的Git常用命令 使用git也有一段时间了,把自己常用的命令用自己的描述记录起来,方便自己备忘也方便其他人参考. 目录: 最基本的命令: git clone 拷贝并跟踪远程的master分支. ...

  8. sublime 集成git插件,及git常用命令

    以前用了很久的totoiseSVN,显然不够高大上,开发界的版本装x利器还得是git.然而git的命令行对没怎么用过linux的人可能觉得还不如用gitGUI,可是当你知道sublime可以集成git ...

  9. Git常用命令清单笔记

    git github 小弟调调 2015年01月12日发布 赞  |   6收藏  |  45 5k 次浏览 这里是我的笔记,记录一些git常用和一些记不住的命令,这个笔记原本是基于 颜海镜的文章增加 ...

  10. Git常用命令及软件推荐

    查看.添加.提交.删除.找回,重置修改文件 git help <command> # 显示command的help git show # 显示某次提交的内容 git show $id gi ...

随机推荐

  1. C#支持格式最多的解压缩开源库SharpCompress

    string archivePath = "path/to/"; string extractPath = "path/to/extract/folder"; ...

  2. C# NPOI导出Excel

    https://www.cnblogs.com/LukeSteven/p/14643499.html

  3. Transformer模型原理概述

      Transformer 是一种基于自注意力机制(Self-Attention)的深度学习模型,最初由 Google 在 2017 年的论文<Attention Is All You Need ...

  4. Macbook装Window后闪屏

    打开英特尔显卡控制面板 电源-使用电池 把各种模式功能全部禁用掉(记得切换模式别漏了修改). 若不生效记得重启,即可生效!

  5. 前端开发系列030-基础篇之JavaScript函数基本

    一.函数的创建和结构 函数的定义:函数是JavaScript的基础模块单元,包含一组语句,用于代码复用.信息隐蔽和组合调用. 函数的创建:在javaScript语言中,可以说函数是其最重要也最成功的设 ...

  6. ETL中Python组件的运用

    Python是一种高级.通用.解释型编程语言,以简洁.易读.易学的语法而闻名,被广泛应用于Web开发.数据科学.人工智能.自动化脚本等领域. python的特点包含 易读易学:Python的语法设计简 ...

  7. Win10系统怎么打开everyone权限的问题

    很多电脑基地的小伙伴都不知道everyone权限是什么吧?everyone是针对电脑的每个用户的权限,一旦涉及到系统权限操作务必要慎重选择,稍微不对及有可能引起系统故障.everyone权限是最高的用 ...

  8. C语言数据结构-链式栈

    1.链式栈:链表+栈 栈顶指针作用:表示整个链表内存,充当链表表头 先进后出,链表:表头法插入 (1)先写好链表的东西 (2)之后写栈

  9. SPSS插件Process 2.16.3下载附安装教程

    Process V2.16.3是一款用于 SPSS 软件中的调节效应插件,专门进行分析中介效应和调节效应,Process 主要应用于 SAS.SPSS 等传统数据统计分析软件,在 SPSS 中除了可以 ...

  10. vue.js中简单粗暴解决二进制转图片显示问题

    this.filePath = 'data:image/jpeg;base64,' + item.url <img :src="'data:image/jpeg;base64,'+it ...