温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Git工具 conflict冲突问题怎么解决

发布时间:2020-10-30 23:35:15 来源:亿速云 阅读:168 作者:Leah 栏目:开发技术

这期内容当中小编将会给大家带来有关Git工具 conflict冲突问题怎么解决,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

git这种版本控制工具有什么好处

  第一个,方便可以多人协同开发同一个项目或系统

  第二个,当你系统开发到一个稳定版本后为了开发新的功能,肯定要把开发好后的系统代码进行备份保存起来,不然万一那个不懂事的小程序猿删的代码你咋整呢

而代码仓库可以为你解决这个问题,而使用git仓库的项目,就需要用到git工具

版本控制工具git或svn使用方式来说,一种命令行,一个是使用可视化工具进行操作。

git的可视化工具有很多,大部分原理都想通。(间接调用命令行进行操作。)

简单的clonerepository克隆仓库,openlocal repository打开本地仓库,什么的就不说的

这里以SourceTree界面来举例

Git工具 conflict冲突问题怎么解决

一般我们从远程仓库上克隆代码到本地仓库后,我们的操作一般就是,

  1、pull 拉取远程仓库上的代码

  2、修改本地代码,

  3、然后commit,commit时候选择你要提交的你修改过的文件填写提交的作者,日期,说明信息。这样你本地仓库代码已经提交完成了,

  4、将本地仓库和远程仓库进行同步,使用push命令推送到远程仓库

上面的四个步骤是理想化状态下的一般步骤,当单人使用的时候不会出错,两个人可能也不会有问题,但随着人数增多,肯定会遇倒这样那样的问题。

问题情况1:如从远端拉取到正式版本后,我增加的文件,或修改的代码,然后在将修改或增加的代码同步到远端,但在我push之前,有另一个人也从远端拉取得代码

    并且更新完成代码,并push到远程仓库的。这个时候我commit没有问题,但是我push不成功,还有一个就是我也正在修改代码,然后不能将代码pull下来

问题原因:很明显,远程仓库已经被修改的,所以不能推送我们的更改

截图看的更清晰:

我在不同文件夹下拉取的相同的远程仓库一个是在D:/Source_code/MergeRepo 另一个在D:/Source_code/New/MergeRepo

Git工具 conflict冲突问题怎么解决

我先将其中一个仓库增加一个文件 “测试push文件时冲突问题.txt”

常规操作,commit push,完成

Git工具 conflict冲突问题怎么解决

我们可以看到文件已经上传到远程分支上的

Git工具 conflict冲突问题怎么解决

再接着看另一个本地仓库,可以看到下图,pull按钮有一个提示,远程仓库已经更新的,但这个时候我们可能还在开发新的功能,

Git工具 conflict冲突问题怎么解决

可能这个工具没有显示远程有更新可以拉取,我们想要将写好的功能提交到远程仓库

执行,commit ,push,然后就,,出现错误,远程仓库已经更新的,不能推送。

Git工具 conflict冲突问题怎么解决

这需要先将远程代码pull下来,但是可能也拉取不成功

因为新功能会存在修改我们拉取下来的项目的文件,所以我们当前就不能将远程更新的代码拉取下来,会提示我们先stashsave我们修改过的代码,

然后再pull更新远程代码,最后再将我们存放到栈里面的开发新功能代码修改弹出栈,stashpop

解决办法:所以我们要先把远程仓库的代码拉取下来,但是会存在拉取不下来的问题。

我们需要将我们的更改存放到栈内存中,也就是使用stash save命令,然后在拉取服务器端更新过的代码,然后在使用stashpop命令将我们之前的修改取出来合并到本地代码仓库中去。

当然上面的stash pop弹出改变的内容时会有conflict问题出现,我们找到发生冲突的文件,讲我们需要的文件内容保留下来就可以啦

最后冲突解决完成的,我们再按照常规流程走,commit,push

情况2:需要在正式发布好的产品上添加新的功能,不可能在主分支上开发新功能,比如我们正式版本是在master分支上,

解决方法:我们就需要在复制一份本地仓库中的master版本,取新的名字,在这个新的名字分支上开发新的功能,然后我们将新的版本提交到我们远程仓库分支上上。

提交完成后,我们将本地仓库切换到master分支,在选中我们开发的新功能分支,右键点击merge合并选中的分支到当前分支中。

上述就是小编为大家分享的Git工具 conflict冲突问题怎么解决了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI