当前位置: 首页 > news >正文

Git拉取分支、基于主分支创建新的开发分支、合并开发分支到主分支、回退上一次的merge操作

系列文章目录

第1章 Git拉取分支、基于主分支创建新的开发分支、合并开发分支到主分支、回退上一次的merge操作

文章目录

  • 系列文章目录
  • 一、拉取分支
  • 二、如何从master分支创建一个dev分支
  • 三、如何将dev分支合并到master分支
  • 四、如何回退上一次的merge

一、拉取分支

  1. 项目文件夹下,右击鼠标,选择 Git Bash Here
  2. 本地初始化一个仓库:Git init
  3. 输入要链接到码云的地址:git remote add origin 云端仓库项目地址
  4. 更新分支列表:git remote update origin --prune
    查看分支:git branch
    创建分支:git branch 分支名
    切换分支:git checkout 分支名
  5. 拉取码云上的所有文件到项目中来,git pull origin 分支名
  6. 在本地修改代码,或增加文件
  7. 将所有文件加载到列表:在命令行中继续输入代码执行 git add . (add空格后有个点别忘了)
    或将个别文件加载到列表:git add 文件名1 文件名2
  8. 添加注释,来说明自己为什么要上传,方便以后自己查阅:git commit -m “第一次上传”
  9. 提交到码云上面:git push 远程库名 分支名
    因为是第一次提交,要更改为:git push -u origin master
    第二次提交就按照上面的写法即可,不再需要加 -u

二、如何从master分支创建一个dev分支

  1. 切换到你指定的分支。如我要从master上拉一个分支,代码一模一样

    git checkout master
    
  2. 拉取master的最新代码

    git pull
    
  3. 在本地创建一个dev分支,并切换到该分支。此时执行git branch会看到该分支在本地已创建

    git checkout -b dev
    
  4. 把分支推到远程仓库。此时执行git branch -av可以看到该分支在远程仓库也有了

    git push origin dev
    
  5. 将本地分支与远程分支关联

    git branch --set-upstream-to=origin/dev dev
    

创建新分支dev完成!

三、如何将dev分支合并到master分支

  1. 在分支 dev 的工作结束,切换到分支 master
    git checkout master
    
  2. 然后把 dev 合并到 master 上
    git merge dev
    
  3. 用tortoise工具,点击提交按钮,检查红色冲突文件,手动逐个解决冲突,完成后确定“提交”。

四、如何回退上一次的merge

这一步很少遇到,实在不行需要撤销上次的merge。

在这里插入图片描述

  1. git reflog 命令查看历史的操作

    git reflog
    

    在这里插入图片描述

  2. 使用 git show 命令可以查看 commit 的详细信息

    git show 46ea33c5
    

    显示如下:
    在这里插入图片描述

    merge节点:46ea33c5
    原先的主分支节点:84a157d7
    合并过来的新分支的节点:1928b1a4

  3. revert 上一次的merge
    保留主分支,应该设置主分支为主线

    # git revert -m 主分支用“1”表示 merge节点
    git revert -m 1 46ea33c5
    

    在这里插入图片描述

    如果直接使用 git revert ,git 也不知道到底要撤除哪一条分支上的内容,这时需要指定一个 parent number 标识出"主线",主线的内容将会保留,而另一条分支的内容将被 revert。

    这里用-m指定保留的分支。-m 选项以代表这次 revert 的是一个 merge commit。 -m 选项接收的参数是一个数字,数字取值为 1 和 2,也就是 Merge 行里面列出来的第一个还是第二个。

    如上面的例子中,从 git show 命令的结果中可以看到,merge commit 的 parent 分别为 84a157d7和 1928b1a4,其中 84a157d7 代表 主要 分支(从图中可以看出),1928b1a4 代表 will-be-revert 分支。

  4. 将更改推送到远程仓库

    git push
    

    在这里插入图片描述

    revert 成功了。

http://www.lryc.cn/news/141365.html

相关文章:

  • SpringBoot实现定时任务操作及cron在线生成器
  • 数据结构(Java实现)-栈和队列
  • 毕业季如何做好IT技术面试
  • springcloud3 GateWay章节-Nacos+gateway(跨域,filter过滤等5
  • Nodejs+Typescript+Eslint+Prettier+Husky项目构建
  • 轻松正确使用代理IP
  • SpringCloud教程 | 第二篇: 服务消费者(rest+ribbon)
  • lintcode 961 · 设计日志存储系统预【系统设计题 中等】
  • windows下Qt、MinGW、libmodbus源码方式的移植与使用
  • leetcode做题笔记104. 二叉树的最大深度
  • 【Luniux】解决Ubuntu外接显示器不显示的问题
  • 【C++初阶】模拟实现list
  • 三维模拟推演电子沙盘虚拟数字沙盘开发教程第13课
  • flask中GET和POST的区别
  • 基于Spring Boot的游泳馆管理系统的设计与实现(Java+spring boot+MySQL)
  • git冲突处理(已commit但忘pull的情况)
  • 嵌入式设备应用开发(发现需求和提升价值)
  • Redis Replication
  • 软件研发CI/CD流水线图解
  • 代码随想录第五十九天
  • “yarn“、“npm“、“cnpm“和“pnpm“的区别
  • 批量将txt文件转化为excel文件
  • StringIndexOutOfBoundsException: String index out of range: 458
  • R语言主成分分析
  • 单片机学习-蜂鸣器如何发出声音
  • 利用敏捷开发工具实现敏捷项目管理的实践经验分享
  • 代码随想录训练营 贪心02
  • Linux安装NVM(简洁版)
  • vue 弹出框 引入另一个vue页面
  • 为Android做一个ShowModal窗口