gpt4 book ai didi

git - 当我使用 git stash 时,我最终会得到 <<<<<<< 更新的上游和文件中的其他内容

转载 作者:行者123 更新时间:2023-12-02 15:20:06 28 4
gpt4 key购买 nike

我正在使用 GitHub 桌面和 git 命令行(当我需要在另一个分支上提交时基本上存储我的代码)。我用 git stash save并保存我的代码。然后我更新另一个分支并切换回我的测试分支,我将其更新为master。然后我用以下命令取消 stash 我的代码 git stash pop

这是我运行 git stash pop 后的输出:

Auto-merging update_registration.php 
CONFLICT (content):
Merge conflict in update_registration.php
The stash entry is kept in case you need it again.

但最终我得到了

    <<<<<<< Updated upstream
//Code and whatnot
=======
<<<<<<< Updated upstream

>>>>>>> Stashed changes

在我的文件中,管理代码并从我的代码中删除所有这些行以将其上传到服务器是非常令人沮丧的。

我使用 git stash 是否错误?

谢谢

最佳答案

发生的事情是这样的:您更改了一部分(“已更新上游”),而您的更改已 stash ,并且该更改也在 stash 部分中进行了更改(“stash 的更改”)。因此,在恢复 stash 的更改时,出现了 merge 冲突。

一般建议:在不同的时间在不同的分支上执行不同的操作,或者同时在不同的工作空间中执行不同的操作。因此,如果您正在分支 A 上实现某些内容并且您需要对项目做一些不同的事情,并且您有未提交的更改,您有两种选择:

  1. 在同一个工作区中执行此操作:然后执行 git stash保存未提交的更改,使用 master 创建一个新分支(可能在 git checkout -b <new_branch> master 上)或 checkout 现有分支机构。然后继续进行修改,提交更改,最后使用 git checkout A 返回到您的工作和git stash pop 。那么更改应该干净地应用。

  2. 在不同的工作区中执行此操作:执行 git clone将您的存储库放在不同的目录中,在那里进行黑客攻击和提交。如果您想继续在另一个分支上,只需更改目录即可。

无论如何,如果你想整合你的工作,你最终必须 merge 分支。您的工作组织得越好,您就越常从上面的列表中选择选项 1。

关于git - 当我使用 git stash 时,我最终会得到 <<<<<<< 更新的上游和文件中的其他内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55366930/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com