本篇内容介绍了“怎么解决Git合并冲突的问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
合并并不仅仅是简单的文件添加、移除的操作,Git 也会合并修改。
$ git branch* master$ cat runoob.php
首先,我们创建一个叫做 change_site 的分支,切换过去,我们将 runoob.php 内容改为:
< ?phpecho 'runoob';?>
创建 change_site 分支:
$ git checkout -b change_siteSwitched to a new branch 'change_site'$ vim runoob.php$ head -3 runoob.php< ?phpecho 'runoob';?>$ git commit -am 'changed the runoob.php'[change_site 7774248] changed the runoob.php 1 file changed, 3 insertions(+)
将修改的内容提交到 change_site 分支中。 现在,假如切换回 master 分支我们可以看内容恢复到我们修改前的(空文件,没有代码),我们再次修改 runoob.php 文件。
$ git checkout masterSwitched to branch 'master'$ cat runoob.php$ vim runoob.php # 修改内容如下$ cat runoob.php< ?phpecho 1;?>$ git diffdiff --git a/runoob.php b/runoob.phpindex e69de29..ac60739 100644--- a/runoob.php+++ b/runoob.php@@ -0,0 +1,3 @@+< ?php+echo 1;+?>$ git commit -am '修改代码'[master c68142b] 修改代码 1 file changed, 3 insertions(+)
现在这些改变已经记录到我的 "master" 分支了。接下来我们将 "change_site" 分支合并过来。
$ git merge change_siteAuto-merging runoob.phpCONFLICT (content): Merge conflict in runoob.phpAutomatic merge failed; fix conflicts and then commit the result.$ cat runoob.php # 代开文件,看到冲突内容< ?php<<<<<<< HEADecho 1;=======echo 'runoob';>>>>>>> change_site?>
我们将前一个分支合并到 master 分支,一个合并冲突就出现了,接下来我们需要手动去修改它。
$ vim runoob.php $ cat runoob.php< ?phpecho 1;echo 'runoob';?>$ git diffdiff --cc runoob.phpindex ac60739,b63d7d7..0000000--- a/runoob.php+++ b/runoob.php@@@ -1,3 -1,3 +1,4 @@@ < ?php +echo 1;+ echo 'runoob'; ?>
在 Git 中,我们可以用 git add 要告诉 Git 文件冲突已经解决
$ git status -sUU runoob.php$ git add runoob.php$ git status -sM runoob.php$ git commit[master 88afe0e] Merge branch 'change_site'
现在我们成功解决了合并中的冲突,并提交了结果。
“怎么解决Git合并冲突的问题”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!