头几天脑袋短路,git reset --hard 把代码都干了。
最后 PHPStorm 的 local history 文件历史记录完整恢复了回来。
我其实是从 VSCode 转到 PHPStorm ,这几天又想转回 VSCode ,毕竟是真的丝滑(虽然我 32 内存 XD )
产生的疑问:
PS:上文第 2 点我已经买了 PHP Intelephense ( https://marketplace.visualstudio.com/items?itemName=bmewburn.vscode-intelephense-client ) 这个插件,但依然没有 IDE 功能强大。
1
zhangchongjie 2022-05-24 12:01:02 +08:00 8
vscode 真的问题太多,大而全,但是难做到小而精,用习惯 JetBrains 家的,再去用 vscode ,就感觉很难受,从补全到 git 等功能,之前我还有想过把 c++和 java 迁移到 vscode ,但用了一段时间,真的受不了了
|
2
olaloong 2022-05-24 12:01:24 +08:00 via Android 1
local history 这个真的是平时用不上,关键时候能救命的东西
|
3
lscexpress 2022-05-24 12:03:05 +08:00
那你应该坚持 phpstorm 的
|
4
Jakarta 2022-05-24 12:05:04 +08:00 4
1 、vscode 在 March 2022 (version 1.66)更新中引入了 local history 功能。https://code.visualstudio.com/updates/v1_66#_local-history
2 、不清楚。 |
5
yuancoder 2022-05-24 12:05:21 +08:00
用 vim 没有这个烦恼
|
6
wdssmq 2022-05-24 12:06:23 +08:00 2
Local History - Visual Studio Marketplace
https://marketplace.visualstudio.com/items?itemName=xyz.local-history 有插件 |
7
zeyexe 2022-05-24 12:14:49 +08:00 14
git reset --hard 也能救回来,用 git reflog
|
8
selca 2022-05-24 12:15:38 +08:00
我是做 Java 开发的,vscode 在 Java 这边也处于刚起步,插件装上后性能比 idea 都还要差一些,而且由于是用爱发电,插件相关的支持也比不上商业化的家伙。
|
11
Kamiyu0087 2022-05-24 12:29:31 +08:00
我也被 IDEA 的历史记录救过命 XD
|
12
yunyuyuan 2022-05-24 12:32:42 +08:00
vscode 有 TIMELINE 啊,不过完全没有 jetbrains 的 local history 强大
|
13
lovedebug 2022-05-24 12:33:21 +08:00
用惯了 IDEA ,生产力工具么,只要好用就行了
|
14
duanguyuan 2022-05-24 12:37:16 +08:00 1
也尝试过 VSCode 写 Java 和 Python ,折腾了一段时间,放弃了!
我现在的理念是,用就用最好的,别浪费时间折腾生产力工具。别的不说,Java 开发,IDEA 就是第一。所以没理由不用。 |
15
wangyzj 2022-05-24 12:38:55 +08:00
我要在 VScode 里面装那么多东西
我看还是算了 用 jet 各干各的 |
16
tunzao 2022-05-24 12:39:53 +08:00
我被 TimeMachine 救过
|
17
dcsuibian 2022-05-24 12:44:01 +08:00
我被坚果云的 webdav 救过
|
18
wzxlovesy 2022-05-24 12:47:45 +08:00 via Android
git reflog 不能救吗?
|
19
learningman 2022-05-24 12:49:04 +08:00
@wzxlovesy 看着是还没 add ,救不了
|
20
SMGdcAt4kPPQ 2022-05-24 12:49:09 +08:00 via Android
JB 的 IDE 在 2022.2 升级到了 JBR17 很流畅
|
21
SSang 2022-05-24 13:35:09 +08:00
git reflog
|
22
77alex 2022-05-24 13:39:19 +08:00
被 local history 救过两次
|
23
TomatoYuyuko 2022-05-24 13:43:55 +08:00
vscode 有 local history 的插件但是性能有点差,会堆很多垃圾文件
|
24
TomatoYuyuko 2022-05-24 13:45:37 +08:00
定义跳转有啊,我不知道是哪个插件实现的,反正全装上就完事了,这是很基本的功能
|
25
luin 2022-05-24 13:48:29 +08:00
前些日子正好遇到类似情况: https://twitter.com/luinlee/status/1522233390464139264
VSCode 的 local history 挺好用 |
26
iluckypig 2022-05-24 13:53:23 +08:00
我也被 idea 的 local history 救过
|
27
nicevar 2022-05-24 14:07:01 +08:00
毕竟 Idea 是 IDE ,vscode 只是个编辑器,用来当 IDE 用虽然也没太大问题,一旦上大项目,只能说差 Idea 太多了,Idea 买个全家桶用几年还是很划算的,买个大版本隔几年续费一次。
|
28
yxisenx 2022-05-24 14:15:51 +08:00
刚入职没啥用 git 的经验的时候 idea 的 local history 救了我好多次
|
30
misaka19000 2022-05-24 14:57:11 +08:00
vscode 也是有历史文件的
|
31
lookStupiToForce 2022-05-24 15:11:00 +08:00
不是,vscode 有大内存也卡啊?我就没有遇到过不会卡的 electron 应用啊😂?
|
32
pota 2022-05-24 15:15:34 +08:00
vscode 现在对文件 local history 也放在 history 里了啊
|
33
yohole 2022-05-24 15:18:17 +08:00
两年前,我也尝过鲜,vscode 装齐各种支持 java 开发的插件,如 maven ,springboot 等一大堆,确实不够流畅,而且还是不够智能化,而且小问题不断,整个体验还是不如 idea ,又毫不犹豫切回去了
|
34
whitehack 2022-05-24 15:21:55 +08:00
被 webstorm 和 goland 的 local history 救过几次
|
35
seanzxx 2022-05-24 15:34:15 +08:00
git 只要你不是去 rewrite log ,是不会丢数据的
git reflog 呀,肯定能救回来 |
37
hk3475 2022-05-24 15:42:10 +08:00 15
同事让我帮他 debug ,他用 vscode ,我用 webstorm 一打开就有一行下面是黄线,装作看了一分钟帮他解决了,他对我崇拜的五体投地🐶
|
38
ngn999 2022-05-24 15:49:52 +08:00
我从 vs code 换走是因为他到现在还没修单行 if, 不写{时, 缩进不对.
|
40
ychost 2022-05-24 16:58:31 +08:00
idea 比 vscode 强太多了,vsc 看着很轻,很多插件一安装比 idea 卡多了
|
41
07ly 2022-05-24 17:01:55 +08:00
目前 vscode 我只会用来刷 Leetcode ,真干活的时候还是 IDEA 稳
|
42
FrankAdler 2022-05-24 18:03:43 +08:00
现阶段只能说,如果 ide 还卡就老实升级机器吧,基本上就是个内存条的事,比痛苦的改习惯收益大。
|
43
tlerbao OP |
44
MightyLu1994 2022-05-24 22:41:52 +08:00
放下执念,vscode 能拿来正经干活吗?
怎么追代码?有没有 PHPstorm 的各种提示? 比如可能使用了未定义的变量? 或者是是变量定义了却未使用? 或者是重复代码有没有提示可以抽取方法? 使用了不合适的函数会不会提示你并提供替换的操作? 自动补全有没有 PHPstorm 智能? 就算费劲通过各种插件把这些功能都实现了,那为什么不直接用 PHPstorm ? 32G 内存用 PHPstorm 还卡?是不是标压 cpu ?是不是固态硬盘?如果以上条件都满足,一个小小的 PHPstorm 不可能会卡。 |
45
ragnaroks 2022-05-24 23:29:30 +08:00
vscode 只适合写 js/ts 项目,配合拓展 c/cpp 勉强也能用吧,其它的 go\java\csharp\python 真别折腾了
|
46
magichan 2022-05-24 23:32:23 +08:00
是不是代码管理的习惯不好。
虽然最终可能展示出来的是一个庞大的 commit ,但在开发过程中,总是分阶段完成的,每一个阶段都应该提交到本地 git 仓库中,要不然开发过程中的 git diff 内容就没有办法看了。 (我个人是因为主线工作经常被打断处理其他问题,随时可能需要 checkout 到历史分支上对历史版本的行为,每次 checkout 都要提交一个临时的 commit ,反而被动拆解了 commit (不会有人不知道 git rebase 的交互命令,可以实现 commit 的删除,交换,合并等操作吧 |
48
christin 2022-05-24 23:58:46 +08:00
歪个楼问一下,git stash 在 webstorm 上的中文翻译是哪个?
是贮藏变更和取消贮藏吗?那变基是啥?提取又是啥?这翻译的啥也看不懂。 另外如果我想直接在页面上点击切换分支应该怎么做?![img]( https://imgur.com/a/nBKdv7u) |
49
zinplus 2022-05-25 00:12:05 +08:00
个人经验 VScode 只适合写 javascript&typescript ,因为前端新东西多,很多新的框架的 vsc 插件都是原作者在同步维护,语法糖什么的支持得比 jb 自己的插件要更及时。其他像是 python/go/java 还是上 jb 要更好,bug 少,更智能,心智上也更放松。简单来说 vsc 像是骑机车上路,jb 像是开小轿车。
|
50
teddybun 2022-05-25 00:21:31 +08:00
术业有专攻,IDEA 搞 IDE 都多少年了,VSCode 我只用来编辑文本和平时看看小文件
|
51
FrankAdler 2022-05-25 00:54:54 +08:00
@tlerbao #43 32G 还卡的话,应该就不是配置问题了,可以考虑调整下 idea 内存和禁用部分插件啥的,我 16G 内存同时 5 个项目都不卡的。
|
52
SMGdcAt4kPPQ 2022-05-25 00:59:45 +08:00 via Android
觉得 JB 卡顿先升级 2022.2 EAP 试试
|
53
SMGdcAt4kPPQ 2022-05-25 01:02:58 +08:00 via Android
@ComputerIdiot 如果还卡顿那么就需要对它进行「 JVM 调优」了,比如说可以改成 ZGC ,调整堆大小
|
54
zengmingyang96 2022-05-25 01:45:19 +08:00
曾经在有几十个待提交的工程目录 rm -fr ./
神仙难救 |
55
oneisall8955 2022-05-25 02:16:32 +08:00 via Android
被 local history 救过几次,最近一次前几天切分支,手贱把本地还在开发没有 push 上去的 feature 分支删了。用 local history 恢复,1 分钟时间不到
|
56
Kylin30 2022-05-25 02:45:09 +08:00
windows 经典界面永不过时
|
57
imycc 2022-05-25 04:18:57 +08:00
刚毕业的时候搞过一次--hard 把未保存的代码搞没了,后面加参数就非常小心了。
vim -> vscode -> ide ,开发工具的集成程度是逐渐加强的。如果习惯了 IDE ,就继续用着呗。工具从来都是哪个顺手就用哪个。 我是因为日常需要用的比较杂,bash/python/js ,用 IDE 建项目太麻烦了,而 vscode 可以一套搞定。对我来说 vsc 就是一个装插件方便的 vim ,但配置环境的过程还是少不了的。以前安利了同事去用,但他不会去调教,用了一年多还是很简陋,早知道让他用 pycharm 算了。 |
58
efaun 2022-05-25 04:28:54 +08:00
不要对文本编辑器有那么多不切实际的幻想
|
59
msg7086 2022-05-25 04:40:11 +08:00 via Android
不要随手 hard reset 就行了。
|
60
dayeye2006199 2022-05-25 06:33:33 +08:00
vscode 说这 git 的事情怎么也赖在我身上。。喵喵喵
|
61
NodeSans 2022-05-25 08:04:10 +08:00
@selca 我感觉是微软那个只能补全插件 IntelliCode 的锅,这个插件用了人工智能,使用非常的卡。关了以后不影响补全,速度能快很多
|
62
zyPro 2022-05-25 08:17:27 +08:00
webstorm 跟 vs code 各用了两年,在想 vs code 是不是大家想得那么差劲呢
|
63
focuxin 2022-05-25 08:43:51 +08:00
貌似 vscode 的官网表述也只是代码编辑器,不是 ide
|
64
StephenHe 2022-05-25 08:54:48 +08:00
vscode 没装插件肯定丝滑
|
65
mikulch 2022-05-25 09:00:55 +08:00
@zhangchongjie 确实难受,运行一个 debug 都要各种配置,太累了。
|
67
pandaPapa 2022-05-25 09:15:22 +08:00
vscoode 也有 local history 得插件,但也是特卡
|
68
ilovecqrwx 2022-05-25 09:26:10 +08:00
手动挡哪有自动挡香?日常工作当然是 JetBrains 更方便,vscode 如果需要装大一堆插件那还不如直接用 JetBrains 呢
|
69
dabai0806 2022-05-25 09:35:11 +08:00
写前端用 vscode 舒服, idea 写前端装个依赖重建索引风扇狂转
|
70
byte10 2022-05-25 09:35:42 +08:00
|
71
tlerbao OP @MightyLu1994 i5 10500 + 32G + nvme 固态 sn550 还是 750 忘记了,不是卡,是没有 vscode 丝滑哈哈。还有就是一个原因,特别喜欢 vscode 下的一个主题,phpstorm 没有哈。
|
73
tlerbao OP @luin 简单测试了一下,好像 vsc 的 local histroy 只是针对单个文件的历史记录,而非像 ide 一样一个时间节点下的更改包括文件的删除 新增和更改。
|
74
konakona 2022-05-25 09:44:42 +08:00
Vscode 做 PHP 和 Vue 、React 开发确实有些索引问题。
但在开发 Java 时则完全没有,真.丝滑无比。 |
76
CodeGou 2022-05-25 09:44:58 +08:00
上周刚被 LH 救过~
|
77
sualvin 2022-05-25 09:46:31 +08:00
@christin #48 stash 是储藏变更,变基应该是 rebase ,提取是 fetch ?页面上指的是 idea 窗口吗?我一般在窗口右下角那里切换分支
|
78
noyidoit 2022-05-25 09:47:29 +08:00
remote-ssh 是我用 VSCode 的唯一理由, 因为这个插件, VSCode 其它所有缺点我都被迫接受
|
79
hexiaowu1993 2022-05-25 09:53:51 +08:00
如果文件已经进了暂存区,reset --hard 也可以通过 reflog 恢复,如果没有的话,只能通过工具的 local history 恢复了。
|
80
GrayXu 2022-05-25 09:54:06 +08:00
@yohole 本地不需要任何依赖,ssh 上去就能和本地项目一样编辑。对于一些不方便在本地装依赖的项目来说,remote 就是刚需。
|
81
yohole 2022-05-25 09:57:12 +08:00
@GrayXu 可能我只有在公司电脑写代码的场景吧,所有本地开发用到的环境、依赖都是长期保持稳定,所以这个 remote 对我以及身边的人来说,可有可无
|
83
byte10 2022-05-25 10:14:30 +08:00
@noyidoit 赞同! 我也是的。不过我是用比较杂,nodejs ,vue 这些。所以还是 vscode 吧。统一开发体验。
@yohole vscode remote 的好处是:你买一台 5700G -64G-ITX 主机放公司里安装好虚拟机 PVE 和 ESXI ,配置好 frp+轻量云服务器,你就拥有了一台云服务器了,all in one 。你在公司,在家里,在老家,在出差,在旅行,在网吧,在高铁,都同一套开发环境。不仅仅是在这家公司,在下一家公司还是一套开发环境,可以连续用大概 5-8 年,期间你喜欢啥笔记本都可以换。不仅仅是开发,你可以配置多个硬盘,安装群晖变成 nas 云盘,下载电影,在线影院,啥都一套,这就是 remote 的体验。你只要一台丐版的 M1 或者是一台刷了 win10 的晓龙 845 手机-hdmi 连接到显示器就可以办公,或者是一台 ipad 安装一个 UTM ,这样就可以愉快的装 b 了,oh yeah 。怎么样准备迁移到 remote 了。😁 |
84
selca 2022-05-25 10:24:44 +08:00
@byte10 #70 主要是指代码提示、按住 ctrl 点各种对象、类的反应比较慢。编译都是用的 maven 或者 gradle ,没区别,另外构建速度也不算慢。
|
85
byte10 2022-05-25 10:30:35 +08:00
@yohole 即便你是公司本地开发,那么依然可以用 remote ,你本地 windows 安装一个虚拟机 linux 或者 wsl ,然后本地 vscode remote 到这个 linux 机器上进行开发。你回家之后,你依然可以远程连接到公司的 linux 机器上进行开发或者处理工作等。目前我也就是把公司的电脑安装 linux ,自己的本地远程过去搞,回家也可以连进去,搞副业的代码运行环境,全都在里面。唯一解决不了的,就是小程序开发了。。当然应该也有方案,只是没必要折腾了。我也是考虑买一个 deskmini 主机搞搞,用公司的机器还是麻烦,以后就不会再有换机器的搭建环境的顾虑。 主要是下载 maven ,nodejs 的依赖麻烦,几十个项目代码 clone 下载也麻烦。。。还有 nodejs ,go ,java 环境搭建等,虽然也就是十几分钟,半个小时,但是还是麻烦。
@selca 其实我也是有这样的感觉。。点击和跳转啥的,反应确实有区别。就像打游戏,100ms 跟 30ms 的区别。。。还是能区分开的,idea 则非常丝滑。。也可能是我用 remote 的原因把。我本地原生用 vscode 写 java 稍微好一些,但是依然有点小差距。 |
86
WillBC 2022-05-25 10:33:27 +08:00
Emacs 的插件,undo 有历史记录的保存,重启了也不影响,这个我没在哪家编辑器 /IDE 见过。
- https://github.com/emacsmirror/undo-fu-session - https://www.dr-qubit.org/undo-tree/undo-tree.txt#:~:text=Persistent%20undo%20history%3A |
87
yohole 2022-05-25 10:52:39 +08:00
@byte10 其实我用 JB 全家桶,本身也有配置云同步的,迁移和搭建环境其实也很简单,而 vscode-remote 本身只能解决它自身软件的配置问题,而本地化开发,其实还有一系列的软件和依赖,所以远程开发可能是一个伪需求,因为我近五年来基本没有远程写代码的场景,而且公司电脑是高配,至少可以战五年那种,所以 vscode-remote 可能对其他人是刚需,但是对我而言可有可无,两年前尝鲜其实算跟风体验,作为一个 java 后端可能目前还是 JB 全家桶体验好一点(可能前端就反过来?),但如果有机会还是愿意并行尝试一下
|
89
ciki 2022-05-25 14:14:38 +08:00
vscode 能把 2 解决,我毫不犹豫的抛弃 IDEA 全家桶
|
90
byte10 2022-05-25 14:31:35 +08:00
@rpish https://zhuanlan.zhihu.com/p/329951185 参考一下吧,本地安装 Remote - SSH ,其他插件在远程服务安装即可,体验一下吧,最好用局域网的机器作为远程服务,这样体验起来不会有太多延迟。记得感谢一下评论,我没有币回复你了
@yohole 是的,不要强行用 vscode 。idea 至少在 java 上的体验还是吊打 vscode 。只是远程的体验,目前 idea 确实还不行。等 JB 的 Fleet 出来没啥大问题的话,我也是会回到它那边去的。 |
91
zyzweb 2022-05-25 15:21:23 +08:00
写前端的我,平时开发只用 webstorm,vscode 被我当记事本用
|
92
GrayXu 2022-05-25 15:48:37 +08:00
@yohole 举一些例子,比如机器学习,分布式系统等对特殊硬件有很强依赖的场景下调试,就必须是在服务器上,所以就非常依赖 vscode remote 。但说实话,vscode 加持了一大堆插件后,在 debug 的时候,仍然不能让人觉得他足够智能,不过暂时也没有发现替代品。(不知道现在 fleet 进化得怎么样了)
|
93
hzxxx 2022-05-25 16:25:05 +08:00
vscode 有类似的插件,就是在项目文件夹下加一个.history 存放文件历史
|
94
daveh 2022-05-25 18:59:54 +08:00 via iPhone
@byte10 你这种 remote 开发诉求,整个远程桌面环境,体验完整的 IDE 开发功能岂不更爽?
Windows 服务器远程桌面就不用多说了吧;如果是 Linux ,安装 xrdp ,或者换为 Ubuntu 22.04 原生支持微软远程桌面协议,JB 全家桶 IDE 也完整支持 Linux 。除了 IDE 本身,还有 n 多工具能在远程桌面直接用,文件都不用下本地处理。 如要安全,远程桌面服务只开在私有网络上。 本地机器用微软的远程桌面工具去连,不管你是在公司、家里还是什么其他地方,随便找台机器连上远程桌面继续上次的工作,直接从原先中断地方开始,都不用重新恢复环境。 iPad 用微软原生 RD Client ,不比跑虚拟 UTM 还要跑个客户端畅快 1000 倍?如果远程是 Windows 服务器,还能开启平板触控模式,直接在 iPad 上体验微软那啥平板电脑来着?这 b 装的可比 UTM 卡卡卡爽多了。 另外本地机器也没有安全问题,不用担心本机不小心保存了一些服务器上的重要内容,搞丢了。 |
95
byte10 2022-05-26 10:26:02 +08:00
@daveh 远程桌面? vscode remote 对带宽要求很小。windows 远程桌面开发的话,盲猜延迟严重、体验很烂,也许大家的带宽都是很高的吧,我只有 4G 流量卡,晚上高峰 连 vscode 都卡的。另外我不喜欢”国内“windows 生态,流氓很多,搞不定。。所以我还是希望在 macos 的主机上进行浏览网页,简单办公沟通。2 者的方案相差太多了,我的是分布式,你的是 all in remote 。
|
96
daveh 2022-05-26 12:09:09 +08:00 via iPhone
|
97
kouhe3 2022-06-24 09:24:59 +08:00 via Android
我一般只用一个 IDE 。
但是真的干起活来,倒是会同时打开 JB IDE 和 VS Code. |