作为程序员你是如何搭建自己的 windows 开发环境的?

124 天前
 daguaochengtang
作为程序员,如果你拿到一个新的 windows 笔记本,你会如何搭建自己的开发环境(其实不局限于开发环境,包括日常的其它工作和使用场景)?

主要是我过段时间有个新的 windows 本,想提前想好需要注意的点,我目前考虑的几个点,v 友们可以帮忙解答和补充其它的点:

1. 硬盘是否有必要分区?分区和不分区各有什么注意点?(比如我现在的电脑就没分区,但是会把 desktop 、download 文件夹等这些移动到其它盘。比如会把所有快捷方式放在一个文件夹然后放进环境变量里,通过 win+r 直接打开)
2. 考虑减少重复配置的成本,用 docker 来配置大部分的环境的可行性怎么样?比如 git,node,nginx 等都跑在一个 docker 里,本机不装这些环境,会不会有性能问题?有没有谁这样实践过的
3. windows 下你们会用包管理器嘛?用的什么?
4. windows terminal 怎么配置? wsl 你们平常会用吗(一直不懂 wsl 的使用场景,你们会直接在 wsl 上开发、写代码嘛)?
5. 。。。
4874 次点击
所在节点    Windows
57 条回复
tool2dx
124 天前
我个人是用 vhd 进行开发配置,第一尽可能用 portable 的软件,第二很多公司陈旧项目编译依赖特别多,只能通过 vhd 挂载和同步代码。

还有一些 COM 组件注册很多的程序,都被我扔到虚拟机里运行的。

别的好像也没什么,git 我用 msys ,没用 wsl ,反正常用软件来说,两者都大同小异。
murmur
124 天前
不用 wsl ,java 和前端就 win 自己就够了,真的需要 linux 开虚拟机,win 的虚拟化贼麻烦,有的要开 supervisior ,有的不能开

linux 配虚拟机挺简单的,双网卡,里面开 docker ,不开发的时候虚拟机关了就完了,也多不了几个资源,随便买都是 32g 内存的电脑
murmur
124 天前
*supervisior->hypervisor
AoEiuV020JP
124 天前
用什么装什么, 尽量优先考虑官网下载 exe 安装包,能选择安装路径的都指定到 D 盘目录里,
terminal 默认 cmd ,其他不改,
wsl 用过几年不打算再用了, 整个 hyperv 关了,改用现在免费的 vmware,
开发机也不是服务器, 和 docker 不太搭,有需要的在 vmware 里 linux 跑,git ,node 之类都是直接装,
不用包管理器,感觉 win 压根没有这个生态, 包管理器只是个 exe 下载器,
快捷方式会放在一个文件夹里,文件夹放开始菜单里,同时固定在文件管理器左边的快速访问里, 用鼠标打开,
yunv2
124 天前
楼主以前用的是 windows 吗?
到手配置开发环境,一般按文档执行一遍,就装全了。

1.没必要分区,现在笔记本两个 ssd ,都不分区,C 盘 1T ,D 盘 2T ;
2.git 和 node ( nvm )安装在本机了,nginx 是用 docker 跑;
3.没用过,日常吃饭挣钱的工具,都有安装文档。windows 官版系统安装官方软件一般不会出错,装完就不动了。仅代表个人观点。
4.windows 是图形化界面,terminal 用的很少,除非远程 linux 或者 wsl ; wsl 用来装 docker on wsl ,只用来测试运行环境;写代码还是在 windows 的 jetbrains 系列软件。
fish267
124 天前
简单,安装个 Linux 虚拟机
tool2dx
124 天前
@AoEiuV020JP "快捷方式会放在一个文件夹里"

我快捷方式是写了一个程序,常驻任务栏,用双击 Ctrl 打开跳转界面。速度快的飞起。
dobelee
124 天前
代码和开发全套都跑在 WSL 的文件系统。Win 上只有一个 Jetbrains 的壳。
非常稳健,用了五六年了。
enchilada2020
124 天前
vscode devcontainer 其他爱咋咋
gloye
124 天前
佬们太 city 了,我就下载 node,git,vscode(同步),就开始撸代码了,最多再配一个 oh-my-posh
缺什么工具就去该工具官网上找
eslizn
124 天前
包管理 chocolatey
zsxzy
124 天前
Android studio + vscode 就齐活了
clf
124 天前
git 、jetbrains 、vscode 、nvm 、jdk 、tabby terminal 、VMWare 、数据库连接工具。
ysc3839
124 天前
MSYS2 + Git for Windows 的补丁 https://github.com/git-for-windows/git/wiki/Install-inside-MSYS2-proper (非官方支持,有滚包滚炸的可能,看需求选择)
终端用 MSYS2 的 mintty ,shell 用 zsh+oh-my-zsh+powerlevel10k
Visual Studio 选择 C++ 和 C#
VSCode
用 fnm 安装 Node.js https://github.com/Schniz/fnm
用 Python 官网的安装包安装 Python
seafox
124 天前
我是先下个 vscode 再下个 visual studio 主要用 vscode 写 构建工具用用 xmake 包啊啥的看看 xmake 里面有没有 没用就用 vcpkg 还有些东西比较麻烦的还是要装个 linux 虚拟机
securityCoding
124 天前
不怎么折腾了申请了开发机 32 核 64g 云开发机, 全部 vscode remote ssh
lanytcc
124 天前
win 本?我感觉你这个有必要在 win 上吗,拿回来换 linux ,docker 在 win 下只有 50 %的效率,除非你是 win for arm
zsj1029
124 天前
@murmur 非也,win 自带的 hyper 不要太好用,吊打市面所有虚机,效率很高
lyusantu
124 天前
一个 IDEA ,一个 VM ,VM 里装 Docker ,所有环境跑在 Docker 里
ysc3839
124 天前
1. 不分区。除非哪天 Windows 能有很简单的方法把“整个 Users 文件夹”迁移到其他分区,且有类似 APFS 或 btrfs subvolume 这种多分区共享可用空间的机制,我才会考虑分区。
在 Linux 上我选择 btrfs 且使用多个 subvolume 。
2. 不如虚拟机。
3. 用。参见前一条,用 MSYS2 的 pacman 包管理。我目前不太会考虑 winget 等“软件管家”式的,没有统一包格式的包管理。
4. 默认配置。我只用 Windows Terminal 配合 cmd 和 PowerShell 用。
用 WSL1 ,使用 wslbridge 等项目在 mintty 中使用,不用 Windows Terminal 。

为什么不用 Windows Terminal ,因为 Windows Terminal 要兼容 Windows 曾经的控制台设计,实际工作模式是类似 screen/tmux 那样:程序输出,然后 Windows Console 更新一个内部 buffer ,再计算 buffer 的差异,再把差异部分用 ANSI escape sequence 输出给终端。
加了这么一层转换之后难免会引入问题,也不支持一些高级功能。曾经遇到最严重的问题是,用 Git 附带的 ssh 客户端连接服务器,按 Ctrl+C 直接把本地的 ssh 客户端结束掉了。

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

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

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

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

© 2021 V2EX