Linux 下程序开发的正确姿势是什么?想尽量接近 Windows 下 Visual Studio 和 TortoiseGit 这类工具的体验

2021-07-07 14:29:33 +08:00
 wudicgi
如题,以前一直是在 Windows 平台上开发。
现在有项目需要在 Linux 下进行编译和调试,想了解下正确姿势是什么。

网上搜索看到的一些回答感觉比较偏执,如果在 Linux 中开发时,图形界面程序就是都是垃圾我也就认了,老老实实地去熟悉命令行操作。如果有更方便的、能提高效率的方式,还是很想知道的。

举几个具体操作的例子,可能更清楚些:

1. 在 Visual Studio 中编译之后的警告和错误信息会统一在问题面板中列出,双击就能定位到源码中的位置。
在 Linux 中,一般是怎么做的?直接在终端中看输出的错误信息吗?还是配置一下 VS Code 之类的工具来调用编译,并且把结果按格式显示

2. 在 Linux 中一般怎么调试?如果没用 IDE 的话,就只能直接命令行 gdb 吗?
用 IDE 的话,有什么用着方便可靠的吗?

3. Windows 下我用 TortoiseGit, Linux 下图形界面的 Git 客户端有没有好用的?
SmartGit 还没试,因为定价太高了。GitKraken 刚试过,作为一个订阅费每月 $5 的软件,操作居然会卡,也远到不了 TortoiseGit 的水平
6672 次点击
所在节点    Linux
74 条回复
demobin
2021-07-07 16:51:27 +08:00
只写 Linux/C 的话我以前都是直接 vim 的,搞一下配置的话,再把 CTAGS 和 NERDTREE 之类的插件整一整,跟 IDE 也没差
angryfish
2021-07-07 17:03:57 +08:00
VS 写什么语言
jb 全家桶很多都可以满足吧?
YsHaNg
2021-07-07 17:49:07 +08:00
debug 我觉得 kdbg 比 vs 好用 watch 能自动展开宏 不会一长串看不到头的指针跳转 也会自动根据指针类型解引用
cstj0505
2021-07-07 17:53:43 +08:00
vim,eclipse,git 就命令行
libook
2021-07-07 18:34:00 +08:00
有调试需求的话肯定 GUI 会方便很多。

有些 IDE 是跨平台的,比如 JetBrain 家的,能提供像 VS 那样顶尖的 IDE 体验。

如果愿意折腾的话,Vim 和 Emacs 都可以死命装插件堆功能的。另外 Linux 下也可以用 VSCode,只不过体验跟 VS 差得多了,不知道装插件能能靠近 VS 的体验。

还有一种方案就是在 Windows 用 IDE 来连虚拟机调试,比如 VMware 就给 VS 提供了插件,我没用过,你可以了解一下。

另外如果是非底层系统开发的话 WSL 也应该可以试一试。
dingwen07
2021-07-07 18:37:05 +08:00
可以试一下 WSL2
lancelock
2021-07-07 18:53:04 +08:00
你把 linux 想象的太简陋了吧
wudicgi
2021-07-07 19:42:47 +08:00
@lancelock 也可能是我太习惯 Windows 了,但 Linux 的桌面环境感觉最近这 10 年变化都不大。
gnome, xfce 菜单栏项目在鼠标指针略过时都没变化,自带的文件管理器也一直很弱。
xfce 默认主题窗口的边框居然是 1px 宽度的,导致很难 resize, 查了下建议用按 Alt 键同时拖动鼠标右键的方法。

Debian 系和 Arch 系的几个主流系统都试了下,桌面环境可能就剩 KDE 还没试了
newmlp
2021-07-07 19:44:29 +08:00
没有,不存在,Linux 的开发体验就是乐色,比不过 Windows 的
wangxn
2021-07-07 19:56:43 +08:00
Linux 的桌面做得太烂了,写代码还是选 Windows 或者 mac 。
BrettD
2021-07-07 19:57:13 +08:00
编辑器用 Emacs 或者 Vim,自定义命令、加插件之后用着也很顺手,编译用 CMake,调试用 GDB,版本管理直接 Git 命令。这些工具用熟了之后就对 GUI 没啥刚需了。
felixcode
2021-07-07 19:59:00 +08:00
你问这个问题的时候应该意识到,v 站很多人是没有长期使用 Linux 作为主用开发环境的经验的,却在这儿扯用 Linux 开发多么不好用。
wzzzx
2021-07-07 20:07:32 +08:00
尝试过之后,我觉得正确姿势就是使用 vscode+remote ssh
iceheart
2021-07-07 20:09:02 +08:00
前几年 vscode 不太好用那会儿,我还常用 KVM 虚拟机里跑 visual studio 写代码。
这两年 vscode 越来越好用,虚拟机只用来开微信了
Frytea
2021-07-07 20:12:16 +08:00
一直做 Linux 环境软件开发,公司配的 Windows,基本上就是 vs code + remote ssh 插件连上 Linux 开发服务器,有时候直接 wsl 开发。
ym1ng
2021-07-07 20:36:27 +08:00
作为一个使用了 linux 做日常系统近十年的人,感觉最解决 lz 痛点的应该是 wsl (逃
hsfzxjy
2021-07-07 20:39:52 +08:00
@wudicgi #2 git 那个,个人常用 git add -p 一点点加,习惯了感觉挺好
jaredyam
2021-07-07 20:42:49 +08:00
其实关于 Git 的 GUI 的工具蛮多的,主要还是看自己的使用场景和偏好选择,可以看下 lazygit,是一个 Terminal 内部渲染的 Git GUI,主要还是靠快捷键。
Huelse
2021-07-07 20:51:22 +08:00
vscode git graph,体验与 jetbrains 自带的几乎一样,很好用
ScepterZ
2021-07-07 21:05:53 +08:00
1 、2:用 IDE
3:在我用 Linux 当主力开发系统的两年多里,没有
除了终端好用,Linux 没有任何一点比得上 Windows (虽然这一点很重要就是了

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

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

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

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

© 2021 V2EX