我试图使用主分支来重新定义我的功能分支,但是在重新定位时,主分支会覆盖已更改的文件并引发合并冲突并要求我解决它们。但是由于我已经改变了很多文件,很难解决合并冲突。有没有办法使用master soo进行rebase,以便我的更改文件被强制转换为master中的现有文件?
答案 0 :(得分:1)
如果出现合并冲突,则必须解决它们。虽然有可能,但您通常不希望强制更改其他人的更改(无论您使用的是哪个版本控制系统),因为其他开发人员的工作将会丢失。
听起来好像你只是偏离了上游,因为你没有经常在本地同步/重新定位,或者你已经重构/触及了很多代码,所以冲突或多或少是不可避免的。
在团队中运行良好的工作流程是在开发功能分支期间经常进行同步和变基。例如,您的中央遥控器是origin
而您的上游分支是master
,请偶尔执行以下操作:
git fetch origin
git rebase origin/master
此外,您可以通过了解自己所做的更改来节省一些麻烦(例如,不要更改不必要的内容,例如代码格式,代码的变量/函数名称等对您补丁不重要)
将其作为一个经过深思熟虑的修复可能是一个真正的痛苦,有时在基于一个新主人的新分支中重做工作更简单(可能使用git cherry-pick
来获取旧的最重要的工作分支)。