我有一个关于 GitHub 流程的问题,特别是关于如何管理同时开发的多个功能的问题。
假设我们有一个简单的 CSS 文件。
.container{
height: 500px;
width: 500px;
background-color: blue;
color: white;
}
假设开发人员 A 负责将背景颜色更改为红色,而开发人员 B 负责将字体颜色更改为黑色。
开发人员 A 创建其功能分支“red-background”,更新 CSS 文件并在其分支中提交更改。“red-background”分支中的 CSS 文件现在是:
.container{
height: 500px;
width: 500px;
background-color: red;
color: white;
}
开发人员 B 创建其功能分支“black-font”,更新 CSS 文件并在其分支中提交更改。“black-font”分支中的 CSS 文件现在是:
.container{
height: 500px;
width: 500px;
background-color: blue;
color: black;
}
现在,如果审阅者将“red-background”合并到 main,然后将“black-font”合并到 main,则会出现 git-merge 冲突:
.container{
height: 500px;
width: 500px;
<<<<<<< HEAD
background-color: red;
color: white;
=======
background-color: blue;
color: black;
>>>>>>> black-font
}
在这些情况下如何避免冲突?