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

苏州实力做网站公司电子商务网页设计试题

苏州实力做网站公司,电子商务网页设计试题,项目网站开发,手机版网站有必要吗git#xff0c;如何 撤销某一次历史提交或merge#xff0c;并保留该版本的后续提交#xff1f; 场景1#xff1a; 你有两个功能迭代版本的分支#xff0c;一个是 15 号上线#xff0c;一个是25号上线。5号的时候产品突然说#xff0c;这两个版本一起上#xff0c;然后…git如何 撤销某一次历史提交或merge并保留该版本的后续提交 场景1 你有两个功能迭代版本的分支一个是 15 号上线一个是25号上线。5号的时候产品突然说这两个版本一起上然后你耿直的把25号版本merge到了15号版本。 几天后产品说“一起上有问题我们还是分开上吧”。这个时候你发现merge之后又提交了很多15号版本的代码需要撤销那次merge并且保留后面的提交。 场景2 所有人共用 test 分支有五个人都在这上面合并了自己的代码结果有天 A 不小心把 develop 分支合并到了 test过了一会 A 发现并且想撤回的时候发现再次期间有好几个人都提交了代码。所以不能用reset而是需要撤销merge并且保留后面更改。 git revert git revert -m 1 commitId Git 之 revert revert 可以取消指定的某次提交内容。 当讨论 revert 时需要分两种情况因为 commit 分为两种一种是常规的 commit也就是使用 git commit 提交的 commit另一种是 merge commit在使用 git merge 合并两个分支之后你将会得到一个新的 merge commit。 merge commit 和普通 commit 的不同之处在于 merge commit 包含两个 parent commit代表该 merge commit 是从哪两个 commit 合并过来的。 在上图所示的红框中有一个 merge commit使用 git show 命令可以查看 commit 的详细信息 ➜ git show bd86846 commit bd868465569400a6b9408050643e5949e8f2b8f5 Merge: ba25a9d 1c7036f这代表该 merge commit 是从 ba25a9d 和 1c7036f 两个 commit 合并过来的。 而常规的 commit 则没有 Merge 行 ➜ git show 3e853bd commit 3e853bdcb2d8ce45be87d4f902c0ff6ad00f240arevert 常规 commit 使用 git revert commit id 即可git 会生成一个新的 commit将指定的 commit 内容从当前分支上撤除。 revert merge commit revert merge commit 有一些不同这时需要添加 -m 选项以代表这次 revert 的是一个 merge commit 但如果直接使用 git revert git 也不知道到底要撤除哪一条分支上的内容这时需要指定一个 parent number 标识出主线主线的内容将会保留而另一条分支的内容将被 revert。 如上面的例子中从 git show 命令的结果中可以看到merge commit 的 parent 分别为 ba25a9d 和 1c7036f其中 ba25a9d 代表 master 分支从图中可以看出1c7036f 代表 will-be-revert 分支。需要注意的是 -m 选项接收的参数是一个数字数字取值为 1 和 2也就是 Merge 行里面列出来的第一个还是第二个。 我们要 revert will-be-revert 分支上的内容即 保留主分支应该设置主分支为主线操作如下 ➜ git revert -m 1 bd86846revert 之后重新上线 假设狗蛋在自己分支 goudan/a-cool-feature 上开发了一个功能并合并到了 master 上之后 master 上又提交了一个修改 h这时提交历史如下 a - b - c - f -- g - h (master)\ /d - e (goudan/a-cool-feature)突然大家发现狗蛋的分支存在严重的 bug需要 revert 掉于是大家把 g 这个 merge commit revert 掉了记为 G如下 a - b - c - f -- g - h - G (master)\ /d - e (goudan/a-cool-feature)然后狗蛋回到自己的分支进行 bugfix修好之后想重新合并到 master直觉上只需要再 merge 到 master 即可或者使用 cherry-pick像这样 a - b - c - f -- g - h - G - i (master)\ / /d - e - j - k ---- (goudan/a-cool-feature)i 是新的 merge commit。但需要注意的是这 不能 得到我们期望的结果。因为 d 和 e 两个提交曾经被丢弃过如此合并到 master 的代码并不会重新包含 d 和 e 两个提交的内容相当于只有 goudan/a-cool-feature 上的新 commit 被合并了进来而 goudan/a-cool-feature 分支之前的内容依然是被 revert 掉了。 所以如果想恢复整个 goudan/a-cool-feature 所做的修改应该先把 G revert 掉 a - b - c - f -- g - h - G - G - i (master)\ / /d - e - j - k ---------- (goudan/a-cool-feature)其中 G’ 是对 G 的 revert 操作生成的 commit把之前撤销合并时丢弃的代码恢复了回来然后再 merge 狗蛋的分支把解决 bug 写的新代码合并到 master 分支。 参考 http://blog.psjay.com/posts/git-revert-merge-commit/ https://stackoverflow.com/questions/9059335/how-to-get-the-parents-of-a-merge-commit-in-git
http://www.pierceye.com/news/231848/

相关文章:

  • 广州本地生活appseo百度百科
  • 成都产品网站建设镜像网站是怎么做的
  • 网站建设需求分析范例中国建设信息网站
  • 提供网站建设工具的品牌如何自己开个网站平台
  • 站长工具seo综合查询怎么去掉百家号查询排名数据查询
  • 网站怎么做商家定位注册网站不用手机短信验证的网站
  • 郑州医疗网站建设线下推广团队
  • 合肥网站推广 公司哪家好阿里云注销网站
  • 手机网站调用分享网站用户体验存在问题
  • 淘宝网官方网站路飞和女帝做h的网站
  • app网站设计制作360网站 备案
  • 网站建设多久能学会内丘网站建设案例
  • 网站设计要素 优帮云卖东西专业网站网上
  • 做古风人物小图的网站或软件东莞附近的网络推手公司
  • 东莞专业的单位网站建设江苏网站建设定制
  • 宁夏建设工程造价站网站东营网站seo外包
  • 推销网站建设今天重大新闻文字
  • 网站上线过程网站开发系统需求说明书
  • it外包行业江门seo网络推广
  • 深圳石岩建网站判断网站模板版本
  • 梅州市住房和城乡建设局网站东营网站
  • 免费手机端网站模板下载工具windows怎么做网站
  • 新乡网站自然优化本地电脑如何做网站服务器
  • 网站备案是域名备案还是服务器备案辽宁天一建设有限责任公司网站
  • 做网站的软件是什么阿里云官网入口
  • 徐州网站建设服务网络营销方式的优点
  • 建设电影网站点击播放是乱页的建站网站多少钱
  • 网站上传服务器教程交做网贷的网站
  • wordpress网站无法打开wordpress怎么设置跳站外链接
  • 宠物美容网站建设的目的延安网站建设