合并冲突
Git 允许用户通过合并操作合并来自两个分支的提交。
除非有冲突的部分,否则文件会自动合并。
当 Git 无法自动解决两次提交之间的差异时,就会发生合并冲突。
如果代码中的所有更改发生在不同行或者不同文件中,Git 将成功合并冲突。
合并冲突的产生是因为 Git 识别出哪些代码要保留,哪些要丢弃。
撤消 git stash pop 的步骤
相应地按照以下步骤操作以获得所需的结果:
取消暂存合并冲突
通过运行带有 tail随点的 git reset 取消合并冲突:
git reset . HEAD https://www.w3docs.com/admin/dashboard#
stash
使用 git stash 保存冲突的合并:
git stash
如果存在未合并的路径,则此步骤将不起作用。
通过执行以下命令检查我们是否有未合并的路径:
git reset --mixed
添加 git stash drop 以摆脱此步骤中不需要的存储:
git stash drop
切换到master分支
使用 git checkout 返回 master:
git checkout master
拉取变更
现在使用 git fetch 或者 git merge 拉取最新的更改:
git fetch upstream
或者
git merge upstream/master
切换到新分支
通过运行以下任一命令来更正新分支:
git checkout <new-branch>
或者
git rebase master
应用暂存
使用 git stash apply 应用正确的暂存更改:
git stash apply stash@{1}
如果存在未合并的路径,则第二步将不起作用。
通过执行以下命令检查我们是否有未合并的路径:
暂存并清理
很多时候,当我们正在处理项目的一部分时,当事情处于肮脏状态时,我们可以切换分支以处理其他事情,然后返回并重新应用它们。
这可以通过 git stash 命令实现。
Stashing 将工作目录的凌乱状态保存在一堆未完成的更改中,我们可以稍后返回它们。
git stash pop 从存储中删除更改并将它们重新应用到工作副本。
另一种方法是 git stash apply 以防我们想重新应用更改并将它们保留在存储中。
如果在运行 git stash pop 时出现合并冲突和更改的干净存储丢失,那么我们可以在此代码中找到与此问题相关的任何内容。