我有两个分支:origin / master和origin / dev。
这就是我的流程应该如何运作:
每次创建新功能时,我都会从origin / master分支出来。测试时,我将功能分支合并到origin / dev。
如果测试成功,我将该功能合并到origin / master中。然后我使用:
重置origin / devgit checkout origin / dev git reset - hard origin / master git push -F origin / dev
如果测试不成功,我只需在功能分支上重置origin / dev和debug。
最近搞砸了一些东西,现在在运行我的程序时,我看到origin / master和origin / dev之间存在不同的行为。
两个分支当前都指向同一个提交。两个同步分支是否有可能在源代码中包含差异,而git diff无法获取它?
答案 0 :(得分:0)
不,这是不可能的。
因此,如果origin/master
和origin/dev
有不同的源代码,您应该更改重置origin/dev
分支的方式,如下所示:
git checkout origin/dev
git reset --hard HEAD~
# If you were not puch the changes after merging feature branch into origin/dev, it’s not necessary to force push
由于origin/master
和origin/dev
现在包含相同的代码,您可以单独重置或检出每个分支的正确文件。