V2EX 07月18日 11:30
[程序员] cursor 撤回了我写的代码,重新应用了它生成的答辩
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文分享了在使用Cursor代码编辑器时遇到的一个棘手问题,起因于对国内模型限制的误解以及Cursor的特殊机制。作者在尝试解决模型限制时,修改了网络配置,导致代码补全变慢,Agent会话中断并输出乱码。更严重的是,在一次版本回退后,代码意外丢失,回滚至前一天的版本。经过一番探索,作者发现,在Cursor中回退检查点后,如果错误地重新点击了会话界面,Cursor会用其生成的错误内容覆盖用户已修改的代码,而此时的检查点状态可能并非用户预期。最终,作者通过重新点击“Restore Checkpoint”解决了代码恢复问题,并总结出避免此类情况的关键在于及时提交代码,并在回退检查点后立即关闭或重新开启会话。

🌐 Cursor的国内模型限制与网络配置调整:文章指出,国内用户在使用Cursor时可能会遇到claude4和o3模型无法使用的问题。作者尝试通过调整Cursor的网络配置(将HTTP compatibility mode从HTTP/2改为HTTP/1.1)和配置本地代理来解决,但发现这可能导致代码补全变慢和Agent会话不稳定,甚至出现Agent输出乱码的情况。

⚠️ 代码丢失与版本回退的复杂性:作者在解决模型问题的过程中,经历了代码意外回退到前一天的版本。即使尝试使用撤销功能也无法恢复,网上也找不到解决方案。通过Time Machine找回部分丢失的代码后,作者在重写过程中意外发现,在回退检查点后,如果误操作点击了右侧的会话界面,Cursor会用其生成的“💩”来覆盖用户实际编写的代码,并且此时的检查点状态可能并不准确。

✅ 关键解决方案与操作建议:最终,作者通过重新点击“Restore Checkpoint”成功恢复了丢失的代码。作者总结出的关键经验是,在Cursor中回退检查点后,务必立即关闭或重新开启当前的会话,以避免Cursor错误地用其生成的代码覆盖用户修改的内容。同时,频繁且及时的代码提交也是防止数据丢失的重要手段。

💡 Cursor机制的潜在风险:文章揭示了Cursor在版本回退机制上存在的一个潜在风险。即在执行回退操作后,如果用户不小心触发了会话界面的交互,Cursor可能会将内部生成的、可能不正确的代码作为“恢复”结果,替换掉用户辛辛苦苦编写的代码,并且检查点机制在此过程中可能出现失效或误导的情况。

分享刚刚使用 cursor 踩到的巨坑!!!

(我是 adhd 所以我讲故事事无巨细)

前天晚上刷小红书,看到一些人在分享,国内无法使用claude4o3模型的新闻。看到有些评论并不是针对大陆IP,而是针对注册邮箱,我想我是通过github登录的,于是没有在意。

昨天早上发现被限制了。于是找了找解决方案,cursor配置的networkhttp compatibility modeHTTP/2改成HTTP/1.1vs code配置的proxy配置本地代理。后发现tab补全有些慢,agent稍长的会话会中断。

agent坚持输出💩(使用的claude-4-sonnet),在某次中断后放弃,点击restore checkpoint回退到之前的版本,然后开始自己写。

写到今天早上 10:40 左右完成,开始愉快的调试。

某次浏览器刷新后发现代码回退,回退到昨天下午的版本。

撤销没用,网上搜不到解决方案,万念俱灭。

time machine 里面找回 10:04 的代码,丢掉中间半小时左右的内容。打算硬着头皮重写。

重写过程中,突然发现右侧的会话界面是亮着的(而非restore checkpoint后的灰显状态),尝试重新点击一次 restore checkpoint,结果您猜怎么着?

我的代码回来了!

也就是说,在回退检查点以后(不小心?)点击了右侧的界面,cursor会重新应用自己生成的💩来替换掉你写的内容,这个时候检查点是替换前的,而不是开启会话前的。

总结

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Cursor 代码编辑器 版本回退 AI开发 开发者经验
相关文章