HarmonyOS鸿蒙Next中Code Genius删除了我的全部代码
HarmonyOS鸿蒙Next中Code Genius删除了我的全部代码 让他帮我转换一个swift文件到arkTS,结果好像是搞什么git操作,然后把我所有的代码都删除了。过程里面好像执行了个什么git操作,然后报错了,有通知窗口,然后我就没太关注,结果后来我的代码就都没有了。 以后无法相信华为的产品质量了。我辛苦两个月转换的ios程序,结果这一下子就都没有了。 欲哭无泪啊,提醒一下大家,不要相信code genius。


更多关于HarmonyOS鸿蒙Next中Code Genius删除了我的全部代码的实战教程也可以访问 https://www.itying.com/category-93-b0.html
JDK25中引入JDK-8370216的行为变化:https://bugs.openjdk.org/browse/JDK-8370216,建议使用DevEco Studio默认的JDK版本(JDK21版本),避免JDK25升级产生的行为变更,可以在系统环境变量里配置 JAVA_HOME = IDE安装目录\jbr\bin,或者删除环境变量中JDK25的配置,后续应该会修复。
更多关于HarmonyOS鸿蒙Next中Code Genius删除了我的全部代码的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
惨,但所有的ai都可能这样,之前cursor也出现过,
很悲惨。但是不能说cursor发生过,华为就应该发生。而且如果cursor发生过,华为更应该提前杜绝这类事情的发生。完全是产品质量把控不过关。
我意思是所有ai都会出现,因为它是自己生成的,只要训练时的参数有这些命令它就会生成,所以所有ai都不可能完全避免,但说不定以后有技术可以,
关键是连我本地的git都删除了。 我还没有远程git服务器呢。 华为的质量怎么能让人相信呢?
找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:https://www.bilibili.com/video/BV1S4411E7LY/?p=17
血的教训
好吧, 我又损失了一个项目的代码来重现这个错误,这个是测试项目,不过要code geniue做的事情都一样,就是将swift代码转换到arkTS,然后在转换过程中,执行了下面的编译命令之后,我的项目代码就没有了。
/Applications/DevEco-Studio.app/Contents/tools/node/bin/node /Applications/DevEco-Studio.app/Contents/tools/hvigor/bin/hvigorw.js --mode module -p product=default --parallel --incremental --daemon buildMode=debug assembleHap
然后可以通过附带的视频看到整个过程。
鸿蒙Next中Code Genius功能不会主动删除用户代码。该功能主要用于代码辅助生成和优化。出现代码丢失可能是由于IDE异常、项目配置问题或用户误操作导致。建议检查IDE日志文件,查看最近的项目操作记录,并确认是否启用了版本控制功能。
非常理解您代码丢失后的焦急与沮丧。从您描述的情况和截图来看,这确实是一个令人痛心的意外。
根据您提供的信息,问题很可能出在 Code Genius的“代码转换”功能与您本地Git仓库的交互环节,而不是一个单纯的删除操作。我们来分析一下关键点:
-
核心原因推测:Code Genius在进行Swift到ArkTS的转换时,很可能尝试执行了类似
git checkout或git reset --hard这样的Git命令,意图在某个临时分支或干净状态下进行代码生成。如果这个操作的目标路径错误(例如,意外地在您的主项目根目录执行),并且没有成功创建备份或遇到错误后回滚失败,就可能导致工作区的文件被Git用另一个状态(可能是空分支或初始提交)覆盖,造成“全部消失”的假象。 -
重要提示:代码很可能未被物理删除。Git是一个版本控制系统,它的设计目的就是防止数据丢失。所谓的“删除”大概率是工作目录的文件被替换为了仓库中的另一个版本(很可能是一个早期或空的版本)。您的历史提交极有可能仍然完整地保存在本地Git仓库中。
紧急恢复步骤(请立即尝试)
请勿在项目目录进行任何新的文件操作,并立即按顺序尝试以下Git命令来恢复代码:
-
检查Git状态:在项目根目录打开终端或命令行,输入:
git status查看是否有未提交的更改被移除的提示。
-
尝试Git恢复:
- 首先尝试找回最近的提交:
这会显示HEAD指针的所有变动记录。找到在Code Genius操作之前的那条记录(例如git reflogHEAD@{1}或HEAD@{2}),记下其哈希值(如abc1234)。 - 然后使用该哈希值重置您的工作区:
(请将git reset --hard abc1234abc1234替换为您在reflog中找到的正确哈希值)
- 首先尝试找回最近的提交:
-
如果
reflog不奏效,检查分支和悬空对象:- 列出所有分支(包括远程分支):
git branch -a - 尝试切换到您之前工作的分支:
git checkout 您的分支名 - 更深入地查找丢失的提交:
这会在git fsck --lost-found.git/lost-found目录中列出所有悬空的对象(包括提交),有经验的开发者可以从中尝试恢复。
- 列出所有分支(包括远程分支):
关于Code Genius与Git
Code Genius的代码转换功能在处理已关联Git仓库的项目时,其行为逻辑需要非常明确地告知用户它将进行何种Git操作,并提供明确的回滚或备份选项。当前的交互体验显然存在严重不足,未能防止用户数据被意外覆盖。
后续建议
- 立即恢复:您的首要任务是使用上述Git命令尝试恢复代码。两个月的工作成果很可能就藏在Git历史里。
- 版本控制习惯:无论使用何种开发工具,频繁提交(commit)并推送到远程仓库(如Gitee、GitHub) 是保障代码安全的最重要习惯。本地操作前确保有一个远程备份。
- 功能反馈:在恢复代码后,可以通过DevEco IDE的官方反馈渠道,详细报告此问题。提供截图和描述,有助于开发团队优化Code Genius与Git集成的安全性和交互提示,避免其他开发者遇到同样的问题。
希望您能通过Git命令成功找回所有代码。数据无价,请优先进行恢复操作。

