GitHub完美适配Visual Studio-05 解决冲突

视频教程观看地址:http://study.163.com/course/courseMain.htm?courseId=1003857005

 

在上节课中,我们已经把一些更改从master分支合并到我们的分支,但假如你们团队中的成员在master分支上修改了一个文件,恰巧你在SecondBranch分支上也对同一个文件进行了修改,这就会导致冲突的发生。不要担心,发生冲突很正常。我们来详细的讲解。

现在我们来制作冲突的场景。

来到master分支,然后修改如下代码:

图 1.5‑1

然后提交并同步。

图 1.5‑2

然后来到SecondBranch分支,我们的主函数已经有了一行代码,现在合并这两个分支

图 1.5‑3

然后点击合并:

图 1.5‑4

你看,我们有一个冲突的提示,

图 1.5‑5

我们必须在我们提交前解决它。所以点击“冲突“

图 1.5‑6

我们可以使用点击“比较文件”

图 1.5‑7

这里是我们的两个版本。左边是主分支版本,右边是我们的分支。注意到,在两个版本的同一文件的同一行上都有变化。那么哪一个是正确的呢?Github肯定不知道,所以最好要和在主分支上进行更改的人沟通,并确保他同意最终结果。实际上,我们有三个情况。我们可以通过单击采用源来让主版本覆盖我们的更改,我们也可以通过点击“保持目标”,来保留我们的分支版本.再或者,我们可以使用合并工具来手动解决冲突.这里,我们使用合并工具来手动合并,点击merge.

图 1.5‑8

它又弹出了一个窗口,master分支在左边,我们的分支在右边。代码行现在突出显示,并且在每个代码旁边都有复选框。最终结果将保留我们检查的任何行。我们可以把这2个复选框都选上,您可以在底部看到,改变会实时的显示在结果中。

图 1.5‑9

但是,因为现在我们不知道该不该保留主分支的代码,所以我们要找到修改主分支的那个人,那么,我们如何确定谁改变了主分支的代码呢?我们可以看看这个文件提交的历史,但还有一个更快捷的功能,它能够让我们查看文件的每一行在提交时是谁修改的,这个功能被称为批注.

所以,让我们的转换到主分支,为了做到这一点,我们需要暂时中止我们的合并,.但是别担心,我们可以回来的,

图 1.5‑10

现在我们切换到主分支,然后它会弹出这个窗口,我们选择“是”。

图 1.5‑11

然后右键点击program.cs,并选择“批注”

图 1.5‑12

在左边,你可以看到提交ID,以及做出更改的贡献者的用户名和提交的日期。

通过这个操作,现在我们就可以联系到和我发生冲突的那个人。然后我们可以再次使用合并工具。所以,更改到我们的分支,并从master分支合并,你看,再次发生冲突。

图 1.5‑13

我们将单击“合并”,然后点击:合作工具。

图 1.5‑14

因为在这里,始终就我一个人在操作,所以这里我就保留SecondBranch分支上的版本,因此,我们将选中代码行旁边的框。

图 1.5‑15

注意到,在顶部的箭头可以帮助您导航更改或者冲突。假如我们有一个非常大的文件有很多冲突,我们可以使用这些中间的箭头从一个冲突跳到下一个。

图 1.5‑16

现在我们改好了,因此我们点击“接受合并”:

图 1.5‑17

现在它说,没有剩余的冲突。

图 1.5‑18

如果由于某种原因我们需要撤消我们的合并操作,我们可以点击这里的“撤消合并”,

图 1.5‑19

但我们对一切感到满意,所以让我们“提交合并”.

图 1.5‑20

它需要提交消息:Merge from master branch。接着,我们提交并同步。现在就没有冲突了。

图 1.5‑21

这就是关于冲突的解决,还有一些我想告诉你的建议。有时你可能会遇到问题或高级场景,需要使用到命令行。所以,你最好安装命令行工具。比如,git for windows,如果你碰到解决不了的问题,不用担心。有很多人使用GIT,他们可能遇到相同的问题,你都可以通过Google搜索到,.如果你不能使用Google,不要忘记我们的虚幻账号,你可以联系我的私人微信oxoxwork购买。如果你对github不算特别清楚,你也可以关注我们的另一门课程,Github全面详解。相信现在你已经可以使用Github在Visual Studio中共享你的代码和协作了。我通过和其他人合作学习了很多Git知识,所以行动起来,这样进步才最快最明显。

更多精彩内容尽在视频中!

本文固定链接:http://www.oxox.work/web/github-visualstudio/resolve-conflict/ | 虚幻大学

查看原文:http://www.oxox.work/web/github-visualstudio/resolve-conflict/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
APM2.0硬件指南 ArduPilotMega(APM)是市面上最强大的基于惯性导航的开源自驾仪(并且是最便宜的之一!) 特性包括: · 免费开源固件,支持飞机(“ArduPlane”),多旋翼(四旋翼,六旋翼,八旋翼,十旋翼 等),直升机(的“ArduCopter”) 和地面车辆(的“ArduRover”)! · Arduino 开源编译开发环境 · 完全可视化操作的任务规划器(含中文和多国语言) · 可以支持上百个三维航点 · 使用强大的MAVLink 协议,支持双向遥测站和飞行大全 - 宜配网控制命令ţ · 多种免费地面站,包括APM PLANNER ,HK HCS, · 跨平台,支持在Windows,Mac,甚至手机安卓系统,和Linux。在的Windows 下使用图形任务规划设定工具 (苹果下可用模拟器)Arduino 的编程环境,也是完全跨系统的。 · 可实现 自动起飞,降落 航点 航线飞行 返航 等多种自驾仪特性 · 完整支持Xplane 和飞行半硬件仿真(HIL) · 硬件包括: o 三轴陀螺仪 MPU600 o 三轴加速度计MPU600 o 测量高度的高精度数字空气压力传感器-MS-5611 o 10Hz 的GPS 模块 MTK 3329 o 16MB 板上数据记录存储器,日后会支持TF 卡扩展。任务数据自动记录,并可以导出为KML 的格式 o 三轴磁力计 o (可选)OSD 视频叠加硬件,实现回传实时图像 姿态 模式 位置等重要数据 o (可选)空速传感器 o (可选)电流传感器 o (可选)超声波传感器 o (可选)光流定点传感器 o (可扩展)更多I2C SPI 设备

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

虚坏叔叔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值