Visual Studio Git -是否有防止提交未暂存文件的设置

bf1o4zei  于 2023-01-19  发布在  Git
关注(0)|答案(2)|浏览(294)

在Visual Studio代码中,如果您尝试提交没有暂存文件的文件,则会出现一条警告。它警告您将先提交所有未暂存文件,然后再提交这些文件。
在Visual Studio(2017及更高版本)中是否有类似的设置或方法来执行相同的操作?
当您在没有暂存文件的情况下点击提交时,Visual Studio 2017的默认行为是静默提交所有未暂存的文件,这会经常导致问题(意外提交)。
在设置=〉源控件下,我只看到“插件选择”,没有其他选项。

g2ieeal7

g2ieeal71#

当询问我是否要提交未暂存的文件时,我不小心点击了“总是”。
我开始寻找一种方法来撤销那个“总是”的选择,所以我找到了这个线程。
不管怎么说,解决办法是:查找“Git:启用VSCode设置中的“智能提交”,然后取消选中它(设置为false

csbfibhn

csbfibhn2#

2019:Visual Studio中没有设置,如this VSCode issue中所述
在Visual Studio的情况下,当没有临时变更,但有一些变更时,提交按钮的内容为“全部提交”。因此,用户可以知道所有变更将被提交,即使没有临时变更。
latest 2019 release notes在这方面没有任何改进,因此目前似乎还没有适当的设置(如VSCode中的设置)
不过,considering the documentation似乎存在一个bug:
当你创建提交时,Git不会自动将修改过的文件添加到快照中。
你必须先暂存你的修改,让Git知道你想在下一次提交时添加哪些更新。暂存允许你有选择地添加文件到提交中,同时排除其他文件中的修改。
但是,相同的issue 15613引用VSCode 1.13 commit b31c1e1,它显示:

if (pick === always) {
                config.update('enableSmartCommit', true, true);
            } else if (pick !== yes) {
                return false; // do not commit on cancel

因此,如Aleksandaranswer所示,启用智能提交会有所帮助。
唯一的问题:issues 91472issues 51721:你需要避免在提交过程中暂存文件。
2023年更新:issues 51721已解决
这个问题现在已经得到解决,因为git扩展提供的大多数命令在提交操作运行时都被禁用。
提交输入字段也是如此。
适用于VSCode 1.75(2023年1月),或今天的VSCode insiders

相关问题