Git命令参考手册

2023-11-16

git init                                                  # 初始化本地git仓库(创建新仓库)
git config --global user.name "xxx"                       # 配置用户名
git config --global user.email "xxx@xxx.com"              # 配置邮件
git config --global color.ui true                         # git status等命令自动着色
git config --global color.status auto
git config --global color.diff auto
git config --global color.branch auto
git config --global color.interactive auto
git clone git+ssh://git@192.168.53.168/VT.git             # clone远程仓库
git status                                                # 查看当前版本状态(是否修改)
git add xyz                                               # 添加xyz文件至index
git add .                                                 # 增加当前子目录下所有更改过的文件至index
git commit -m 'xxx'                                       # 提交
git commit --amend -m 'xxx'                               # 合并上一次提交(用于反复修改)
git commit -am 'xxx'                                      # 将add和commit合为一步
git rm xxx                                                # 删除index中的文件
git rm -r *                                               # 递归删除
git log                                                   # 显示提交日志
git log -1                                                # 显示1行日志 -n为n行
git log -5
git log --stat                                            # 显示提交日志及相关变动文件
git log -p -m
git show dfb02e6e4f2f7b573337763e5c0013802e392818         # 显示某个提交的详细内容
git show dfb02                                            # 可只用commitid的前几位
git show HEAD                                             # 显示HEAD提交日志
git show HEAD^                                            # 显示HEAD的父(上一个版本)的提交日志 ^^为上两个版本 ^5为上5个版本
git tag                                                   # 显示已存在的tag
git tag -a v2.0 -m 'xxx'                                  # 增加v2.0的tag
git show v2.0                                             # 显示v2.0的日志及详细内容
git log v2.0                                              # 显示v2.0的日志
git diff                                                  # 显示所有未添加至index的变更
git diff --cached                                         # 显示所有已添加index但还未commit的变更
git diff HEAD^                                            # 比较与上一个版本的差异
git diff HEAD -- ./lib                                    # 比较与HEAD版本lib目录的差异
git diff origin/master..master                            # 比较远程分支master上有本地分支master上没有的
git diff origin/master..master --stat                     # 只显示差异的文件,不显示具体内容
git remote add origin git+ssh://git@192.168.53.168/VT.git # 增加远程定义(用于push/pull/fetch)
git branch                                                # 显示本地分支
git branch --contains 50089                               # 显示包含提交50089的分支
git branch -a                                             # 显示所有分支
git branch -r                                             # 显示所有原创分支
git branch --merged                                       # 显示所有已合并到当前分支的分支
git branch --no-merged                                    # 显示所有未合并到当前分支的分支
git branch -m master master_copy                          # 本地分支改名
git checkout -b master_copy                               # 从当前分支创建新分支master_copy并检出
git checkout -b master master_copy                        # 上面的完整版
git checkout features/performance                         # 检出已存在的features/performance分支
git checkout --track hotfixes/BJVEP933                    # 检出远程分支hotfixes/BJVEP933并创建本地跟踪分支
git checkout v2.0                                         # 检出版本v2.0
git checkout -b devel origin/develop                      # 从远程分支develop创建新本地分支devel并检出
git checkout -- README                                    # 检出head版本的README文件(可用于修改错误回退)
git merge origin/master                                   # 合并远程master分支至当前分支
git cherry-pick ff44785404a8e                             # 合并提交ff44785404a8e的修改
git push origin master                                    # 将当前分支push到远程master分支
git push origin :hotfixes/BJVEP933                        # 删除远程仓库的hotfixes/BJVEP933分支
git push --tags                                           # 把所有tag推送到远程仓库
git fetch                                                 # 获取所有远程分支(不更新本地分支,另需merge)
git fetch --prune                                         # 获取所有原创分支并清除服务器上已删掉的分支
git pull origin master                                    # 获取远程分支master并merge到当前分支
git mv README README2                                     # 重命名文件README为README2
git reset --hard HEAD                                     # 将当前版本重置为HEAD(通常用于merge失败回退)
git rebase
git branch -d hotfixes/BJVEP933                           # 删除分支hotfixes/BJVEP933(本分支修改已合并到其他分支)
git branch -D hotfixes/BJVEP933                           # 强制删除分支hotfixes/BJVEP933
git ls-files                                              # 列出git index包含的文件
git show-branch                                           # 图示当前分支历史
git show-branch --all                                     # 图示所有分支历史
git whatchanged                                           # 显示提交历史对应的文件修改
git revert dfb02e6e4f2f7b573337763e5c0013802e392818       # 撤销提交dfb02e6e4f2f7b573337763e5c0013802e392818
git ls-tree HEAD                                          # 内部命令:显示某个git对象
git rev-parse v2.0                                        # 内部命令:显示某个ref对于的SHA1 HASH
git reflog                                                # 显示所有提交,包括孤立节点
git show HEAD@{5}
git show master@{yesterday}                               # 显示master分支昨天的状态
git log --pretty=format:'%h %s' --graph                   # 图示提交日志
git show HEAD~3
git show -s --pretty=raw 2be7fcb476
git stash                                                 # 暂存当前修改,将所有至为HEAD状态
git stash list                                            # 查看所有暂存
git stash show -p stash@{0}                               # 参考第一次暂存
git stash apply stash@{0}                                 # 应用第一次暂存
git grep "delete from"                                    # 文件中搜索文本“delete from”
git grep -e '#define' --and -e SORT_DIRENT
git gc
git fsck
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Git命令参考手册 的相关文章

  • 是否应该在 git 中跟踪 .history 文件夹中的文件[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 每当我进行更改时 history 文件夹中的某些文件在我的状态中都会显示为未跟踪 我将如何控制它 即 make 是自动添加或不添加这些内容 而不
  • GitLab CI - 添加标签时避免构建

    添加 git 标签时如何防止触发 gitlab ci 管道 我在本地运行此命令 而不是在 gitlab ci 作业中运行 git tag a xyz 然后推送标签 这会触发各种管道 我想排除其中一些管道的运行 我正在尝试对诸如以下问题的想法
  • Git - 显示远程分支的远程名称

    是否有一个 Git 命令可以显示远程分支的远程名称 目前 我坚持使用 shell utils 从远程分支引用中提取远程名称 例如 echo remote name branch name sed r s 1 remote name 有时出于
  • 签出现有的远程分支

    我见过不同的方法来检查现有的远程分支 假设我的朋友推送了新分支 bigbug 并且我想签出并将我的本地工作副本切换到该分支 我有以下选项 1 git checkout b bigbug origin bigbug 2 git checkou
  • 无法将 android“gen”文件夹提交到 Git

    我在 eclipse 中使用 EGit 为我正在开发的 Android 项目提供 Git 支持 问题是 将我的项目提交到本地存储库后 我意识到 gen 文件夹没有被提交 因此 当我从 Git 存储库获取最新源代码后尝试在另一台计算机上打开该
  • 在 Windows 上将 Mercurial (hg) 存储库转换为 Git (7)

    我现在真的很沮丧 我有一个现有的 hg 存储库 其中有几个月的编码历史 我想将其放入私有 Github 存储库中 以便我可以从那里对其进行处理 不幸的是我使用的是 Windows 我似乎找不到any转换我实际上可以正常工作的存储库的方法 实
  • 如何损坏 Git 存储库?

    创建损坏的 git 存储库有哪些方法 有没有有趣的方法可以永久损坏 git 存储库 你能否削弱一个 git 存储库 使其行为有些正常 但会做一些奇怪的事情 我的兴趣来自于当有人担心他们是否真的创建了不可恢复的状态时 它通常很容易修复或至少可
  • “git rm --cached”、“git Restore --staged”和“git reset”之间有什么区别

    我遇到了以下三种方法来取消暂存由命令 git add 暂存的文件 git rm cached
  • 将 svn 存储库添加到现有的 git 存储库中?

    我知道你可以使用 git svn init 来跟踪 svn 存储库 但这是为了你想创建一个全新的存储库 我的情况是 我目前已经有一个现有的 git 存储库 并且希望通过将 svn 存储库设为我当前 git 存储库中的远程分支来跟踪 svn
  • “git add”返回“致命:外部存储库”错误

    我刚刚进入 git 的奇妙世界 我必须提交我对程序所做的一系列更改 位于名为的目录中 var www myapp 我创建了一个新目录 home mylogin gitclone 从这个目录中 我做了一个git clone针对公共回购 我能够
  • git for-each-ref - 按年龄过滤结果

    我正在使用以下命令here https stackoverflow com a 39251131 5812876 git for each ref format color cyan authordate format m d Y I M
  • git 命令显示所有(轻量级)标签创建日期

    是否有一个衬垫可以向我显示所有 git 轻量级标签的创建日期 就像是 git show tags format date 我在这个发现link http osdir com ml git 2009 05 msg01404 html适合我需求
  • Git 中的“分支提示”是什么?

    我正在学习 Git 并阅读专业 Git 书籍 https git scm com book en v2 书中和 Stack Overflow 上有时会使用术语 分支提示 但我找不到它的含义 分支提示是分支上的最后一次提交或最近一次提交 基本
  • Git 在推送代码时返回错误 403 [重复]

    这个问题在这里已经有答案了 一切都工作正常 直到我创建了一个新的 GitHub 帐户 当我尝试使用新帐户第一次将代码推送到 github 服务器时 出现以下错误 remote Permission to NEW USER NEW REPO
  • 通过链接进入 git-repo,无需冗长的对话框

    In a directory I have symbolic links into a git administered directory all under Linux Every time I want to e dit such a
  • RuntimeError:模型类 django_messages.models.Message 未声明显式 app_label 并且不在 INSTALLED_APPS 中的应用程序中

    我正在尝试使用https github com arneb django messages https github com arneb django messages打包我的消息传递内容并尝试了以下操作 pip install git h
  • git checkout 到分支需要很长时间

    我使用的是 Ubuntu 17 10 并且使用 git 版本 2 14 1 每当我从 master 创建一个分支并尝试签出它 或从它签出到 master 时 都会花费大量时间 大约几分钟 有时接近 10 分钟 确实 我有几 GB 的数据 但
  • 如何在Windows上分离“Git bash”中启动的“git gui”?

    例如 我开始 git bash 我导航到某个目录 I start git gui 我关闭控制台窗口或按 Ctrl C Git gui 的窗口消失了 即使我用过git gui disown 即使当我按 Ctrl C 时它不在前台 如何正确分离
  • 如何解决 VS Code 中变基拉取的合并冲突?

    当我做一个git pull rebase 并且我的提交中存在合并冲突 我得到冲突差异视图 解决所有冲突并暂存文件 然后呢 我可以打开终端并运行git rebase continue但是 VS Code 中不应该有一个按钮来完成变基吗 只需使
  • 按时间顺序将多个文件夹提交到 git 中

    我有数百个网站备份 每个文件夹一个 我想将它们放入 git 存储库中 每个备份作为一个版本 这些变化主要涉及图像文件和每天 2 个数据库备份 大小约为 25 GB 并且不断增加 有没有办法告诉 git 获取其中一个文件夹并将其提交到存储库中

随机推荐

  • 【华为OD机试真题2023 JS】取出尽量少的球

    华为OD机试真题 2023年度机试题库全覆盖 刷题指南点这里 取出尽量少的球 时间限制 1s 空间限制 32MB 限定语言 不限 题目描述 某部门开展Family Day开放日活动 其中有个从桶里取球的游戏 游戏规则如下 有N个容量一样的小
  • 使用truss、strace或ltrace诊断软件的"疑难杂症"

    作者 李凯斌 2005 01 18 11 03 24 来自 IBM DW中国 进程无法启动 软件运行速度突然变慢 程序的 Segment Fault 等等都是让每个Unix系统用户头痛的问题 本文通过三个实际案例演示如何使用truss st
  • 安卓大作业 图书管理APP

    系列文章 安卓大作业 图书管理APP 文章目录 系列文章 1 背景 2 功能 3 源代码获取 1 背景 本次实验设计的是一个图书管理系统 系统的整体目录如下 2 功能 针对于每个java类或者Activity进行说明 1 Book java
  • 最坏的时刻已经过去,静待重新走向繁荣

    今年三 四 五 六 七月份 每周客户拜访数量一直比较低 期间和客户 友商 用户持续交流 大家普遍感受到今年特别难 难于上青天 可是 我和老家做小老板亲戚朋友沟通 他们的感受没那么明显 只是觉得今年比往年差些 没一二线城市感受那么明显 进入八
  • Cloud Native和微服务

    一 Cloud Native介绍 Cloud Native是Matt Stine提出的一个概念 它是一个思想的集合 包括DevOps 持续交付 Continuous Delivery 微服务 MicroServices 敏捷基础设施 Agi
  • linux实例显示blocked,(11)ceph 告警:1 slow ops, oldest one blocked for

    1 ceph告警提示 1 slow ops oldest one blocked for email protected ceph s cluster id 58a12719 a5ed 4f95 b312 6efd6e34e558 heal
  • Ubuntu与Windows系统之间进行远程访问和文件的传输

    Ubuntu16 04系统之间和ubuntu与Windows10之间进行SSH远程访问和文件互传 一 Ubuntu 系统之间进行文件互传 传输的是文件夹 传输的是文件 二 ubuntu与Windows10之间进行SSH远程访问和文件互传 补
  • bugku 文件包含2

    页面很正常 url里面有一个file参数 看一下源码 有一个upload php看一下 文件上传 题目是文件包含 就想到了前面做的的上传图片马 用文件包含连接 试一试 不知到哪里出问题了 看一下上传的内容
  • python 美国总统身高统计与分析

    美国总统身高统计与分析 1 安装依赖 2 下载数据集 3 数据处理 4 结果展示 1 安装依赖 pip install pandas pip install numpy pip install matplotlib 2 下载数据集 链接 h
  • PHICOMM路由器无线扩展的设置方法(吐槽一下)

    家里使用的是电信宽带 电信光纤猫有两个网口 网口1直连家里的电视 网口2连接了一部TPLINK路由器 设置了无线wifi 供家里的手机使用wifi 最近在卧室新增了一台台式电脑 用来在家里业余时间学习的 从客厅到卧室距离不长 但是因为家里面
  • 了解以及区分物理机,虚拟机(hypervisor/VMM) 和 容器(Docker)的适用场景

    了解以及区分物理机 虚拟机hypervisor VMM 和 容器Docker的适用场景 Abbreviations 物理机和虚拟机以及容器的区别 动机motivation 为什么要有虚拟机 物理机 虚拟机 容器 虚拟机的种类以及他们的本质区
  • 【Eigen】基本和常用函数

    文章目录 简介 找不到头文件 Eigen 中矩阵的定义 Eigen 中矩阵的使用方法 Eigen 中常用矩阵生成 Eigen 中矩阵分块 Eigen 中矩阵元素交换 Eigen 中矩阵转置 Eigen 中矩阵乘积 Eigen 中矩阵元素操作
  • Selenium自动化测试 —— 通过cookie绕过验证码的操作!

    验证码的处理 对于web应用 很多地方比如登录 发帖都需要输入验证码 类型也多种多样 登录 核心操作过程中 系统会产生随机的验证码图片 进行验证才能进行后续操作 解决验证码的方法如下 1 开发做个万能验证码 推荐 2 测试环境关闭验证码功能
  • Appium+Python自动化测试(一)--环境搭建

    Appium简介 Appium是一个自动化测试开源工具 支持IOS和Android平台上的移动原生应用 移动Web应用和混合应用 所谓的 移动原生应用 是指那些用IOS或者Android SDK写的应用 所谓的 移动Web应用 是指使用移动
  • VulnHub_Jangow: 1.0.1

    本文内容涉及程序 技术原理可能带有攻击性 仅用于安全研究和教学使用 务必在模拟环境下进行实验 请勿将其用于其他用途 因此造成的后果自行承担 如有违反国家法律则自行承担全部法律责任 与作者及分享者无关 主机信息 kali 192 168 31
  • Mysql超时重连解决方案3: 配置c3p0连接池(终极方案)

    前面的文章中 我介绍了修改mysql默认超时时间和配置proxool连接池的方法来解决Mysql超时重连的问题 方案1不推荐 它并没有从根本上解决问题 方案2可用 但配置相对复杂 所有才有了方案3 它既解决了关键问题 并且配置简单易懂 c3
  • Retrofit源码解析三——对接口方法参数注解的处理

    private Nullable ParameterHandler result null if annotations null for Annotation annotation annotations 核心就是这一句 实际上就是把前面
  • Firefox意外的服务器响应,WebSockets的无法解决的“意外地得到了延续帧”错误(Websockets unresolva...

    我知道了 事实证明 我当初采用的代码放在一个NULL字符后的握手响应报头的新行后 我没有注意到这一点 它看起来像一个 浏览器移动所有所接收的WebSocket消息通过离开单个NULL字符在前一次的认证响应被处理的字符缓冲区 以及b 这不是一
  • 2020美赛E题解题思路方法:淹溺在塑料中

    自20世纪50年代以来 由于塑料的用途多种多样 如食品包装 消费品 医疗器械和建筑等 塑料制造业呈指数级增长 虽然有显著的好处 但与塑料产量增加有关的负面影响也受到关注 塑料制品不易分解 难以处理 只有大约9 的塑料被回收利用 1 每年大约
  • Git命令参考手册

    git init 初始化本地git仓库 创建新仓库 git config global user name xxx 配置用户名 git config global user email xxx xxx com 配置邮件 git config