git整理纷乱的历史合并记录
https://github.com/Epix37/Hearthstone-Deck-Tracker
以上面版本库的master分支为例
父节点1
SHA-1: a21142968282ae49720cf30a0f18290b2ce74b3a
* remove hotkey from config if action could not be found, fix hotkey menu item name
父节点2
SHA-1: 86a824e8f46005db91f334dfc57b6bb58b85ceed
* fix effigy logic
合并后的节点
SHA-1: abc0e44f72a4f73523a202c9ee77c8622c1e9fbc
* Merge branch 'master' into joshtab-feature-SecretDeduction
Conflicts:
Hearthstone Deck Tracker/GameEventHandler.cs
Hearthstone Deck Tracker/Hearthstone/GameV2.cs
======新的版本库,自己进行整理的=====
在进行代码整理的时候,遇到了冲突
现在chucklu_master分支指向这个commit
SHA-1: 88fa1ee9263402626d85b5a4362e1b620935953f
* remove hotkey from config if action could not be found, fix hotkey menu item name
temp1分支指向这个commit
SHA-1: 86a824e8f46005db91f334dfc57b6bb58b85ceed
* fix effigy logic
现在执行,rebase操作。
首先切换分支到temp1
然后执行git rebase chucklu_master
$ git rebase chucklu_master
First, rewinding head to replay your work on top of it...
Applying: proof of concept: secret deduction via game rules
Applying: add hooks: spell cast, minion play, minion death
Using index info to reconstruct a base tree...
M Hearthstone Deck Tracker/GameEventHandler.cs
M Hearthstone Deck Tracker/IGameHandler.cs
M Hearthstone Deck Tracker/LogReader/Handlers/PowerGameStateHandler.cs
M Hearthstone Deck Tracker/LogReader/Handlers/TagChangeHandler.cs
<stdin>:110: trailing whitespace.
if (actionEntity.HasTag(GAME_TAG.CONTROLLER) &&
warning: 1 line adds whitespace errors.
Falling back to patching base and 3-way merge...
Auto-merging Hearthstone Deck Tracker/LogReader/Handlers/TagChangeHandler.cs
Auto-merging Hearthstone Deck Tracker/LogReader/Handlers/PowerGameStateHandler.c
s
Auto-merging Hearthstone Deck Tracker/IGameHandler.cs
Auto-merging Hearthstone Deck Tracker/GameEventHandler.cs
Applying: add remaining paladin secret tracking
Applying: remove click-to-gray, respect setting
Applying: changed GameEventHandler.HandlePlayerAttack to consider attacker and d
efender,
Using index info to reconstruct a base tree...
M HDTTests/HDTTests.csproj
M Hearthstone Deck Tracker/GameEventHandler.cs
M Hearthstone Deck Tracker/IGameHandler.cs
M Hearthstone Deck Tracker/LogReader/Handlers/TagChangeHandler.cs
<stdin>:301: trailing whitespace.
warning: 1 line adds whitespace errors.
Falling back to patching base and 3-way merge...
Auto-merging Hearthstone Deck Tracker/LogReader/Handlers/TagChangeHandler.cs
Auto-merging Hearthstone Deck Tracker/IGameHandler.cs
Auto-merging Hearthstone Deck Tracker/GameEventHandler.cs
CONFLICT (content): Merge conflict in Hearthstone Deck Tracker/GameEventHandler.
cs
Auto-merging HDTTests/HDTTests.csproj
Failed to merge in the changes.
Patch failed at 0005 changed GameEventHandler.HandlePlayerAttack to consider att
acker and defender,
The copy of the patch that failed is found in:
d:/SourceCode/GitHub/Hearthstone-Deck-Tracker/.git/rebase-apply/patch
When you have resolved this problem, run "git rebase --continue".
If you prefer to skip this patch, run "git rebase --skip" instead.
To check out the original branch and stop rebasing, run "git rebase --abort".
遇到冲突后,rebase暂停,CONFLICT (content): Merge conflict in Hearthstone Deck Tracker/GameEventHandler.cs
找到原始的版本库的合并节点SHA-1: abc0e44f72a4f73523a202c9ee77c8622c1e9fbc
双击GameEventHandler.cs文件
所以,可以换种处理方式,前面冲突的话,全部用temp1本身的的。
Administrator@LUJUNTAO /d/SourceCode/GitHub/Hearthstone-Deck-Tracker/Hearthstone
Deck Tracker (temp1|REBASE 5/16)
$ git rebase --continue
Applying: changed GameEventHandler.HandlePlayerAttack to consider attacker and d
efender,
Applying: SecretTests: added more SingleSecret tests, simplified secret verifica
tion
Applying: SecretTests: fix minion CARDTYPE
Applying: refactor HandlePlayerAttack, fix misdirection
Using index info to reconstruct a base tree...
M Hearthstone Deck Tracker/GameEventHandler.cs
M Hearthstone Deck Tracker/Hearthstone/GameV2.cs
Falling back to patching base and 3-way merge...
Auto-merging Hearthstone Deck Tracker/Hearthstone/GameV2.cs
Auto-merging Hearthstone Deck Tracker/GameEventHandler.cs
CONFLICT (content): Merge conflict in Hearthstone Deck Tracker/GameEventHandler.
cs
Failed to merge in the changes.
Patch failed at 0008 refactor HandlePlayerAttack, fix misdirection
The copy of the patch that failed is found in:
d:/SourceCode/GitHub/Hearthstone-Deck-Tracker/.git/rebase-apply/patch
When you have resolved this problem, run "git rebase --continue".
If you prefer to skip this patch, run "git rebase --skip" instead.
To check out the original branch and stop rebasing, run "git rebase --abort".
这样处理完之后,temp1拼接在了chucklu_master分支后面,此时切换到chucklu_master分支
合并的时候,不会产生冲突
所以在合并的时候,需要选择不提交 no commit。
然后再去手动将本应该冲突的文件修改为之前的合并结果中的文件,进行提交
把合并结果abc0e44f72a4f73523a202c9ee77c8622c1e9fbc中的文件内容全部复制出来,作为冲突合并的结果。完全复制到冲突的那个文件中替换掉。
最后一次才用最终的合并结果
补充说明,重新尝试了一次,虽然冲突
但是使用tortoisegit进行对比的时候,发现向下浏览的冲突按钮next confilict,是无效的
直接save,并且标记冲突为解决
git整理纷乱的历史合并记录的更多相关文章
- 『现学现忘』Git基础 — 24、Git中查看历史版本记录
目录 1.查看详细的历史版本记录 2.简化显示历史版本记录 3.历史版本记录常用操作 (1)指定查看最近几次提交的内容 (2)以简单图形的方式查看分支版本历史 (3)翻页与退出 4.查看分支相关的版本 ...
- git删除所有历史提交记录,只留下最新的干净代码
git删除所有历史提交记录,只留下最新的干净代码 1.Checkout git checkout --orphan latest_branch 2. Add all the files git add ...
- Git 删除所有历史提交记录方法
Git 删除所有历史提交记录方法 切换分支 git checkout --orphan latest_branch 添加所有文件 git add -A 提交更改 git commit -am &quo ...
- GIT入门笔记(8)-- 查看历史提交记录/根据版本号回到过去或未来
在Git中,用HEAD表示当前版本,也就是最新的提交版本, 上一个版本就是HEAD^, 上上一个版本就是HEAD^^, 往上100个版本写100个^比较容易数不过来,所以写成HEAD~100. Git ...
- git 仓库中删除历史大文件
git 仓库中删除历史大文件 在git中增加了一个很大的文件,而且被保存在历史提交记录中,每次拉取代码都很大,速度很慢.而且用删除 提交历史记录的方式不是很实际. 以下分几个步骤介绍如何减小.git文 ...
- Git 分支 (二)合并
分支的新建与合并 让我们来看一个简单的分支新建与分支合并的例子,实际工作中你可能会用到类似的工作流. 你将经历如下步骤:1. 开发某个网站.2. 为实现某个新的需求,创建一个分支.3. 在这个分支上开 ...
- Git 初始化项目、创建合并分支、回滚等常用方法总结
就在刚才查看资料时候, 看见一句话, 写的特别好: 当我的才华撑不起我的梦想的时候, 应该安静下来学习 配上我最喜欢动漫的一个角色: 红莲 1. Git 初始化项目 1). 创建新的知识库 echo ...
- git log 查看提交历史
文章出处http://blog.csdn.net/wh_19910525/article/details/7468549 git log 查看 提交历史 在提交了若干更新之后,又或者克隆了某个项目 ...
- git入门五(分支合并冲突和衍合)
分支合并冲突的处理 合并分支的冲突时在不同的分支中修改了同一个文件的同一部分,程序无法把两份有差异的文件合并,这时候需要人为的干预解决冲突.当前处于master 分支,当dev 分支和master ...
随机推荐
- linux 学习笔记2
vi 编辑命令并查看 i 插入 esc 转换模式 shift + : x 保存并退出 q 不保存 !强制保存 五个查看命令 cat / less / more / tail / hea ...
- sizeof的用法的一些归纳
1 sizeof 是运算符,不是函数 2 sizeof 不能求得void类型的长度,能求得 void*类型的指针的长度 sizeof(void) 会导致编译错误.因为声明一个变量的最重要的作用就是告诉 ...
- Python垃圾回收机制详解
一.垃圾回收机制 Python中的垃圾回收是以引用计数为主,分代收集为辅.引用计数的缺陷是循环引用的问题. 在Python中,如果一个对象的引用数为0,Python虚拟机就会回收这个对象的内存. #e ...
- 在iframe结构中,如何使弹出层位于所有框架的上方(-)
在做后台管理页面的时候,经常用到iframe.虽说这东西有些过时,也不利于SEO,但是后台就是后台,不需要考虑那么多东西,综合来说,用iframe还是很适合后台管理界面的. 但是在遇到弹出层时,出现了 ...
- OFBiz进阶之HelloWorld(五)创建新实体
参考文档 https://cwiki.apache.org/confluence/display/OFBIZ/OFBiz+Tutorial+-+A+Beginners+Development+Guid ...
- 拉链法解决Hash节点冲突问题
<?php /* * hash::拉链法解决hash节点存储冲突问题 * ::2014-07-02 * ::Small_Kind */ class small_hash { private $s ...
- hdu 4722 Good Numbers(规律题)
http://acm.hdu.edu.cn/showproblem.php?pid=4722 [题意]: 找GoodNumbers一个数N,如果它每一个位数字之和可以整除10,那么它就是GoodNum ...
- 【规范】javascript 变量命名规则(转)
匈牙利命名法 语法 变量名 = 类型 + 对象描述 类型指变量的类型 对象描述指对象名字全称或名字的一部分,要求有明确含义,命名要容易记忆容易理解. 通过在变量名前面添加相应小写字母的符号标示作为前缀 ...
- 构建第一个Java程序
- 过长文字自动换行的技巧 Word-Break Word-Wrap
在很多时候,为了防止内容过长把表格或容器撑破, 我们都需要为容器加上自动换行的功能. 实现自动换行,用CSS来实现,通常有两种方式: word-break: 取值为 normal, break-all ...