有没有这么一个 MacOS 软件,可以快速切换工作环境

2024-06-03 16:22:54 +08:00
 SuperBig

最近任务交叉进行开发,经常在开发 A 任务的时候,B 任务有点问题要改或者需要优化。

这个时候需要切换分支,重新编译,然后重新打开页面开始开发。

但是有的任务是单项目,有的任务是多项目,这么一套流程下来手速快一点慢倒是不慢,就是单纯的感觉在浪费时间。

所以我在想有没有这么一个东西,可以直接把当前系统打开的应用/浏览器页面以及位置和窗口大小都给保存下来,有点类似 VMware 的快照,除此之外还可以来回切换,像 git 的分支管理那样,切到 B 任务快照开发完提交后可以继续切回主时间线或者其他快照继续开发。

我现在的实现思路是设置一个工作区。

1 、每次新建快照都把这个区域复制一份,这个复制操作可以滞后到切换快照时再进行。(或者可能可以用 git 签出新分支来做?)

2 、然后利用下面主题里的 Hammerspoon 来存储打开过的窗口,这里打算整个配置,在配置内的应用才会存储,一般就是 IDE ,像聊天软件就不用存了。

3 、当切回这个快照时,使用 Hammerspoon 打开所有保存的所有软件信息,并把涉及到工作区的路径都替换成复制后的路径,或者使用 git 切换分支。

看了下之前的主题 https://global.ex.noerr.eu.org/t/203090 但是我看了半天感觉没满足我的需求。

不知道有没有类似的软件推荐或者我这条路是否行得通。

2549 次点击
所在节点    macOS
22 条回复
SuperBig
2024-06-03 16:29:33 +08:00
想了下 还是程序员分区比较合适
SuperBig
2024-06-03 16:39:26 +08:00
兄弟们难道没有这方面的需求吗?
flowerains
2024-06-03 16:41:12 +08:00
你需要两台电脑,然后一台远程链接过去。

轻松又惬意
xieym
2024-06-03 16:42:09 +08:00
spaces 2
lululau
2024-06-03 16:43:04 +08:00
cp -r project_a project_a2
viayie
2024-06-03 16:51:16 +08:00
新建一个或多个用户,快速切换用户
xR13zp0h67njQr2S
2024-06-03 16:51:28 +08:00
两个文件夹不就好了,不够再来一个
notproblem
2024-06-03 16:53:06 +08:00
使用 git worktree 解决
davin
2024-06-03 16:58:31 +08:00
之前待在技术团队人数比较多公司的时候,大约 10 个人,就是有一台单独的 iMac ,用来给大家临时处理任务的。特别是那种可能就几分钟的任务,走过去座位上一顿敲键盘就完事儿了,回到自己座位该干啥干啥
Moyyyyyyyyyyye
2024-06-03 17:00:33 +08:00
一般来说,我会直接复制一个文件夹🤔,或者本地常备 2 个文件夹,特别分支多的时候,一个主 feature ,一个备用 hotfix 或者 feature2 ,不够就再来几个
SuperBig
2024-06-03 17:35:59 +08:00
@flowerains 我并不富有

@xieym 哥 这个是啥啊 搜了下没搜到

@lululau
@78786381
@Moyyyyyyyyyyye
手动复制文件夹也可以,但是总感觉不太优雅。

@viayie 切换用户就算了。让我输密码我更顶不住。

@davin 这个目前不适用于我。项目太多了,都打开估计电脑得死机。

@notproblem 多分支管理有点屌,但是本质还是复制文件夹。https://blog.didispace.com/git-worktree-2/ 看了这篇结合 bare repo 的,并行开发能力更强了,但还是感觉不满足我的需求。 我得再研究下,看能不能同时管理多 repo 。
oaa
2024-06-03 17:41:09 +08:00
linux 上面我现在的解决方案是
1. 多 workspace ,gnome 可以用 [space-bar]( https://extensions.gnome.org/extension/5090/space-bar/). 可以在 title bar 上显示每个 workspace 的名字
2. 每个 workspace 只建一个浏览器窗口。
3. 每个 workspace 一个 tmux session
然后多任务就是切 workspace 了
oaa
2024-06-03 17:43:13 +08:00
至于同一个项目多个分支。。。我一般是简单粗暴的直接 cp -r 把整个 repo 负责一份。。然后那个文件夹只切到那个分支。任务完成推上去 merge 掉,就把本地的删了。。
Moyyyyyyyyyyye
2024-06-03 17:51:47 +08:00
@SuperBig #11 不是什么都要优雅,复制文件夹心智负担最小,半年不写,半年回来还记得是什么鬼东西🤣
xxiaowangwang
2024-06-03 19:00:19 +08:00
liyafe1997
2024-06-03 19:27:19 +08:00
所以我直接用 VMware ,各种快照一键拍摄一键恢复一键切换真的很方便
yukinotech
2024-06-03 19:37:04 +08:00
单项目多分支直接克隆一个一模一样的到不同文件夹,最简单好用
ihwbunny
2024-06-04 08:57:16 +08:00
为什么没有想多个用户呢?多用户切换还算是不太麻烦的呀
Edwardlyz
2024-06-04 09:58:11 +08:00
单项目多分枝推荐 git worktree ,比直接复制一份好一点(官方说是硬链接)
Davic1
2024-06-04 10:00:11 +08:00
yabai macOS 上的 window manager

多个工作区用多个 desktop ,或者 tmux 多 session

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

https://ex.noerr.eu.org/t/1046409

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

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

© 2021 V2EX