gpt4 book ai didi

Git - 在主 IDE 打开时 rebase 是否安全?

转载 作者:行者123 更新时间:2023-12-01 23:28:13 24 4
gpt4 key购买 nike

我是一个经常 rebase 与功能相关的提交以修复它们的人。最近我一直担心打开主编码 IDE 是否会影响 rebase 过程中出现问题。

例如,当由于用户要执行某些操作(例如重命名某个提交)而在 rebase 过程中出现“暂停”时,是否会单击通常的“外部更改的文件,刷新它?”提示某些 IDE 提供 - 在完成 rebase 之前 - 影响 rebase 时的最终工作目录状态,而不是保持编辑器关闭?

这种担忧通常让我想知道在涉及某些更改负载的 rebase 提交之前是否应该关闭编辑器,我通常会根据当时的感觉来关闭编辑器。当然,我也很担心,因为我过去担心某些更改可能会由于这种情况而丢失(尽管在那种情况下,我也可能搞砸了一些 Git 明智的东西)。

编辑:我现在意识到,当出现类似于“文件在外部更改,刷新它?”的对话框提示时。由 rebase (对于这种情况)引起的它不应该引起任何问题,因为文件已经随着 rebase 而改变。因此,我现在想知道的是:

Q2) 如果提示“文件已从外部更改,请刷新”怎么办?您单击,以便该文件将其内容恢复为原来的内容,然后您保存该文件并继续 rebase 进程? (例如,在重命名提交的情况下关闭事件的交互式摘要选项卡,或者在解决一些冲突后执行 git rebase --continue ,不一定在外部更改的文件中)。与没有手动重新保存旧的覆盖内容相比,它会导致文件在完成 rebase 后以不同的内容结尾吗?

最佳答案

在主 IDE 打开时 rebase 是否安全?

是的¹

因为 IDE 处于打开状态,除非它以非交互方式保存文件或其他方式,否则不会影响/更改磁盘上的文件。

哪些IDE操作没问题?

任何不影响工作副本的东西,例子:

  • 在提示 file changed externally, refresh it? 时单击是
  • 加载/浏览文件
  • git log
  • git show
  • git fetch
  • 等等

哪些 IDE 操作有问题?

任何无意(根据正在进行的 git rebase )更新文件或 git 写入操作,示例:

  • 忽略打开的文件中包含 rebase 之前的内容并保存它
  • 在提示 save this file before quitting? 时单击是
  • git checkout <branch>
  • git checkout -- file
  • git commit
  • git merge
  • git pull
  • 等等

例如,如果您想使用您的 IDE 来解决冲突 - 这完全没问题,如果意图是在 rebase 期间更新文件 - 使用您的 IDE 这样做没有问题:)。


¹ - 正如 Torek 评论的那样,有或曾经有可能存在问题的 IDE/编辑器,但这种情况极为罕见,而且今天也不常见。

关于Git - 在主 IDE 打开时 rebase 是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66836464/

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