解决Git 变基后的合并冲突 - GitHub Docs

文章推薦指數: 80 %
投票人數:10人

当您执行git rebase 操作时,通常会移动提交。

因此,您可能会遇到引入合并冲突的情况。

这意味着您的两个提交修改了同一个文件中的同一行,而Git 不知道要应用哪个 ... SkiptomaincontentGitHubDocsAllproducts入门快速入门HelloWorldSetupGit创建仓库复刻仓库GitHubflow参与项目社交化CommunicatingonGitHubGitHub词汇表Git备忘清单Learningresources登记GettingstartedwithyourGitHubaccountGettingstartedwithGitHubTeamGettingstartedwithGitHubEnterpriseCloud了解GitHubGitHub’sproductsDocsversionsGitHub语言支持TypesofGitHubaccounts访问权限GitHubAdvancedSecurityGitHub计划的更改注册GitHubSignupforanewGitHubaccountVerifyyouremailaddressEnterpriseCloudtrialEnterpriseServer试用版使用GitHub功能预览支持的浏览器GitHubCLIGitHubDesktopGitHubMobile键盘快捷键GitHubCommandPalette连接问题在GitHub上编写开始在GitHub上写入在GitHub上编写和格式化基本格式语法使用高级格式使用表格组织的数据折叠部分创建代码块创建图表数学表达式自动链接的引用附加文件代码的永久链接在议题和拉取请求中使用关键字处理已保存回复关于已保存回复创建已保存回复编辑已保存回复删除已保存回复使用已保存回复与gists共享内容Creatinggists复刻和克隆Gist导入项目导入代码到GitHub关于GitHub导入工具使用GitHub导入工具更新作者GitHub导入工具本地导入仓库Addlocallyhostedcode代码迁移工具在GitHub上使用SubversionSubversion与Git差异Subversion客户端支持GitHub支持的属性探索项目为开源做贡献保存有星标的仓库关注他人Followingorganizations开始使用Git设置用户名缓存凭据Git密码macOSKeychaincredentialsGit工作流程Aboutremoterepositories管理远程仓库关联文本编辑器处理行结束忽略文件使用Git关于Git推送提交到远程从远程获取更改Non-fast-forwarderror拆分子文件夹关于Git子树合并关于Git变基Git变基变基后解决冲突名称中的特殊字符Customizeyourworkflow探索集成关于集成关于web挂钩AboutGitHubMarketplaceExtensions&integrations安装Marketplaceapp安装应用程序个人帐户安装应用组织GitHub上的隐私GitHub对您的数据的使用请求帐户存档ManagedatauseforprivaterepoGitHub存档计划Wepublishfrequentupdatestoourdocumentation,andtranslationofthispagemaystillbeinprogress.Forthemostcurrentinformation,pleasevisittheEnglishdocumentation.解决Git变基后的合并冲突当您执行gitrebase操作时,通常会移动提交。

因此,您可能会遇到引入合并冲突的情况。

这意味着您的两个提交修改了同一个文件中的同一行,而Git不知道要应用哪个更改。

在使用gitrebase重新排序和操作提交后,如果发生合并冲突,Git会告知您,并将以下消息打印到终端: error:couldnotapplyfa39187...somethingtoaddtopatchA Whenyouhaveresolvedthisproblem,run"gitrebase--continue". Ifyouprefertoskipthispatch,run"gitrebase--skip"instead. Tocheckouttheoriginalbranchandstoprebasing,run"gitrebase--abort". Couldnotapplyfa39187f3c3dfd2ab5faa38ac01cf3de7ce2e841...Changefakefile Ifyouprefertoskipthispatch,run"gitrebase--skip"instead. Tocheckouttheoriginalbranchandstoprebasing,run"gitrebase--abort". Couldnotapplyfa39187f3c3dfd2ab5faa38ac01cf3de7ce2e841...Changefakefile 在这里,Git告知您哪个提交导致冲突(fa39187)。

您有三个选择: 您可以运行gitrebase--abort完全撤消变基。

Git将您恢复为分支状态如同调用gitrebase之前一样。

您可以运行gitrebase--skip完全跳过提交。

这意味着将不包括由有问题的提交引入的任何更改。

您很少会选择此选项。

您可以解决冲突。

要解决冲突,可以按照从命令行解决合并冲突的标准过程操作。

完成后,您需要调用gitrebase--continue以便Git继续处理变基的其余部分。



請為這篇文章評分?