用 vscode 开发 go,有点劝退

34 天前
 nativeBoy
目前团队从 Java 转 go ,考虑到 goland 花钱且臃肿,就开始使用 vscode 来学习 go

得益于 go 的模块机制,配合 Code Runner 插件,学习过程中,运行没什么太大问题

但是项目代码一接过来,就有问题,项目需要在 linux 环境下才能编译成功,因此要搞远程开发,但 vscode 的远程开发的代码会在 linux 端,但我提交代码需要公司指定的 VPN ( linux 上基本不可用),因此陷入了死局。

反观 goland ,运行配置可以设置在远端进行编译、运行,但代码在本地,完全不需要自己操心(当然 goland 也是把代码复制一份过去再编译,但不需要自己麻烦了)。以及 IDEA 系的 git 视图确实美观,自己可能要买 goland 了

我也研究了 vscode 的运行配置,不太能用,还是放弃了
5605 次点击
所在节点    Visual Studio Code
58 条回复
rickiey
34 天前
你必须使用 windows 吗?我 6 年 go 都是在 linux 系统上
Vegetable
34 天前
dev container 和 wsl 都可以解决 vpn 的问题,都会默认走宿主机的网络。代码本地+远程 runner 的形式,要求远程并不需要依赖 vpn 的服务,比如开发数据库/基础配置分发服务之类的东西。
Serefrefee
34 天前
我没写过 Go 哈,但是从你第二段描述来看,为啥不能用 Jenkins 呢,你本地用 VSCode,传完代码用 Jenkins 去 Linux 环境编译
xcsoft
34 天前
我自己一直用的 Goland 写,student packet, Jetbrain 家的东西 很好用
shenyuzhi
34 天前
说实话还是大 JB 好用。VSC 写啥都有种凌乱感。
lsk569937453
34 天前
但是项目代码一接过来,就有问题,项目需要在 linux 环境下才能编译成功,因此要搞远程开发,但 vscode 的远程开发的代码会在 linux 端,但我提交代码需要公司指定的 VPN ( linux 上基本不可用),因此陷入了死局。
========================================================================
WSL 不能用吗?
Jinnrry
34 天前
生产力还的是 goland 。vscode 想要能用,必须得装一堆插件,当你好不容易费了老大劲把一堆插件装上去配置好以后内存 cpu 占用比 goland 还高。关键是这些插件装好也没 goland 智能好用。goland 开箱即用,效果性能都好。

唯一不好就是要钱,不过我们公司买企业订阅,无所谓
guanhui07
34 天前
goland 习惯了,提示更友好,还有快捷键 自己配了一套
Richardhtw
34 天前
@dacapoday #13 vscode 的 git graph 、git history 、GitLens 都试过,个人感觉体验还是不如 jetbrains 系的
simen513
34 天前
最简单的方法:什么都不用变,本地 git repo 再备份一个,每次手动从源头 pull 之后,就 push 到 linux 上的 repo 的一个临时 branch 上,然后 linux 再 checkout 一下这个临时 branch 。
wzy44944
34 天前
也是 go 后端,用了两年 goland ,切换到 vscode 大概 2 年,功能什么的基本没差,唯一有差的是 vscode 感觉更慢,用久了得重启下,不知道其他人有没有感受,怀疑是 gopls 的问题
hongchends1
34 天前
都用 go 了 要不考虑下 docker 部署? 本地编译好 推到 Harbor ? Linux 直接 run
poembre
34 天前
vscode 挺好用的啊, 代码也不用在本地运行。 git 提交到指定分支, linux 那边 ci 脚本 帮你打包 并且 运行起来
qiyilai
34 天前
一个 idea 搞定 java go python 前端
vx7298
34 天前
远程开发,vscode 是目前唯一战斗力的,goland 不要太垃圾,远程开发,代码本来就在远程服务器,本地提交 git 本身就是矛盾的,正常的逻辑是,开发服务器就可以提交的,vpn 连 linux 客户端都没有,啥 vpn 协议啊,貌似是不是不让配服务器啊,,
yidev
34 天前
wsl 里可以直接访问 windows 的代码啊 /mnt/d/.... git 可视化也不是问题, 都可以在 windows 下操作, 直接到 wsl 里编译就可以了.
james122333
34 天前
windows 下你只能用 wsl
使用 msys2 下的 mingw 版本 go 不支援信号功能
james122333
34 天前
什么 vpn?
smirkcat
34 天前
一看你就了解太少呀,windows 下面可以用 wsl 无缝切换到 linux ,编译运行,我已经用了很多年
bronyakaka
34 天前
拥有开源免费全家桶路过,感谢 jetbrains 的支持

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1065554

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX