gpt4 book ai didi

git - 为什么我不能使用 VS Code 直接编辑 git 索引中的分阶段更改?

转载 作者:行者123 更新时间:2023-12-04 11:40:24 24 4
gpt4 key购买 nike

我正在使用 VS Code,当我在提交之前(通常在只读“(索引)”编辑器中)发现分阶段更改中的拼写错误时,我经常感到恼火。因为解决它涉及打开原始文件,找到相同的位置,进行更改,保存文件,现在打开文件的差异,暂存此更改(以及其他任何更改),然后完成提交。这对我来说似乎不必要的复杂。
我只想对索引进行编辑 - 像 VS Code 这样的智能编辑器应该能够在后台执行必要的操作。但它不会让我因为编辑器是只读的,而且我“无法在只读编辑器中编辑”
有一个GitHub issue#91065 (和 #91274#74149#15785#33681 )对此,说这“按设计”工作。但解释并没有真正向我解释:

The title of the diff says (Index) - this means you have staged the changes, and you are diffing the staged changes against the head revision.


正确,但这并不能解释为什么 VS Code 不能进行进一步的更改。

This is not the same as the working file, because you can selectively stage some parts of the file, so the stage version may look different to the working file


再次:正确,但这并不能解释为什么 VS Code 不应该先经历编辑“工作文件”的麻烦,就不能进行进一步的更改。

You cannot edit the right side because the changes are staged


这不是对我的解释。

you need to edit the working file and stage those changes as well, or unstage and edit the file


最后,再一次,我不明白为什么 VS Code 不能为我做到这一点。
但也许我忽略了一些东西。所以我的问题是,
为什么我不能直接进行更改? VS Code 应该可以吗?

最佳答案

这里唯一的答案是,找到一个与为 vim (fugitive) 或 emacs (magit) 编写的插件一样好的 VS Code 插件。两者都将索引视为不同文件系统上的另一个目录,我不知道 magit 但 Fugitive 让您编辑 :path/to/file直接,并与 :Gdiff你可以从那个或任意转速中获取差异,基本上这是 add --patch 和 reset --patch 和 checkout --patch 的强力工具版本。如果事实证明 magit 不能做到这一点,我会感到震惊。

关于git - 为什么我不能使用 VS Code 直接编辑 git 索引中的分阶段更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62810963/

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