栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Git 基础

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Git 基础

Git 基础 git commit: 提交 HEAD当前指向的代码修改提交记录 git 分支

git 的分支非常的轻量,所以需要 “早建分支,多用分支”
因为创建再多的分支也不会造成存储空间上的额外开销,这些按逻辑分解工作到不同的分支上维护起来相当简便
使用分支相当于:我想基于这个提交以及它所有的父提交进行新的工作

  1. git branch newImage
    创建 了一个新的分支newImage
    注意,这里创建完分支后,HEAD并没有切换到这个新的分支上去,如果希望创建这个分支并转到这个分支上去,请看下面示例

  2. git checkout -b newImage
    创建 了一个新的分支newImage并将HEAD 转到 这个分支上

合并分支
  1. git merge
    将两个分支合并到主线上,相当于“我要把这两个父节点本身及它们所有的祖先都包含进来。”
    git merge bugFix:此时HEAD指向main,这句执行相当于创建一个新的提交记录,main分支指向这个新的提交记录,这个提交记录的父结点是bugFix和原本main指向的提交记录
  2. git rebase
    复制当前的提交记录,在另一个地方放进去,形成更加线性的提交历史
    git rebase main:当前HEAD指向的是bugFix,使用该命令后将会在创建一个副本提交记录到main的下面,并且bugFix指向该副本提交记录

    不过此时main并没有更新,可以切换到main后再git rebase bugFix即可
相对引用
  1. git checkout main^
    HEAD转到main的父结点上
    如果是git checkout main^^,则转到main的父结点的父结点上
    如果是git checkout HEAD^,则转到HEAD指向提交记录的父结点上

  2. git checkout HEAD~4
    从HEAD向上转4次
    如果~后面不跟数字,则默认转一次(和^作用相同)

  3. git branch -f main HEAD~3
    强制转移分支,将main分支转到HEAD的向上3次

撤销变更
  1. git reset HEAD~1 (本地分支撤销)
    通过把分支记录回退几个提交记录来实现撤销改动
    将HEAD所指向的分支向上移回到一级父结点上
    (注:在reset后, 原先的提交记录所做的变更还在,但是处于未加入暂存区状态。)

  2. git revert HEAD (远程分支撤销)
    在原先的提交记录下面新增一个提交,其中保存的是原先提交记录的父结点信息(实际上,就是保存了撤销后记录的信息)


参考:learn git branching

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/301133.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号