将分支重新定位到另一个分支(将 $result1 = $sql->runQuery1();
while($record1 = mysqli_fetch_array($result1))
{
$result2 = $sql->runQuery2();
echo "$record1['id'] : ";
while($record2 = mysqli_fetch_array($result2))
{
echo "$record2['id'] <br> ";
}
}
分支定位到dev
),如下所示
master
如果发生冲突,我们会看到以下选项
git checkout dev
git rebase master
现在,要解决冲突,我们要么手动编辑文件,要么跳过补丁(The copy of the patch that failed is found in: .git/rebase-apply/patch
When you have resolved this problem, run "git rebase --continue".
If you prefer to skip this patch, run "git rebase --skip" instead.
To check out the original branch and stop rebasing, run "git rebase --abort".
)以消除在重新定位时产生冲突的补丁。
但我想要的是从dev中覆盖补丁并忽略已经在master中的补丁...类似于(git rebase --skip
)
有没有这样的选择或任何其他方式这样做?
答案 0 :(得分:1)
我不确定覆盖提交而不是跳过它是什么意思。完整地应用提交,或者跳过提交。在任何情况下,您都应该能够在文件级别获得所需的控制级别。
当变基和遇到冲突时,每个冲突文件都有两个父项。如果您有一些文件path/to/file.ext
并且想要使用主版本覆盖,那么您可以使用:
git checkout --ours path/to/file.ext
git add path/to/file.ext
如果您想使用同一文件的 dev 版本,那么您可以使用它:
git checkout --theirs path/to/file.ext
git add path/to/file.ext
这个答案假定您在问题中描述的情况,即您在dev
{@ 1}}上从后一个分支重新定位:
master