Use ssh.
Every time the connection blips you lose the shell.
Very annoying.
Look up how to prevent that.
Learn about tmux.
Use tmux on remote shells to keep sessions up after you log out.
Neat.
Apparently tmux has sessions and panes and stuff, I could have multiple projects open in different sessions. I could have different logs and commands running in different panes.
Neat.
Hey, this is great. I should install tmux on my personal machine.
Hey, I love having multiple sessions and panes and stuff, but now when I reboot my computer, all my tmux sessions and panes are gone.
Learn about tmux-resurrect and tmux-continuum which will save the sessions periodically and automatically reconstitute them after reboot.
Extremely neat.
~10 years later and I still have all the "same" tmux sessions open, and they all have names, saved pane layouts, and histories intact.
When i encounter repetitive/manual state i need to circle back to, ill make scripts or custom configs to replicate it (nix is fantastic for that). My workflow allows sessions to close on disconnect or shutdown which brings the benefit of not relying on remote tmux installations.
Chances are, you carry around alot of implicit state. How do you backup?
Thank you. I sometimes put off reboots longer than I should simply because I don't want to lose my local tmux sessions. Maybe I don't have to do that anymore.
i have splits for dev, splits for building and testing, splits for sandboxing -- it allows me to multi-task with more screen real estate than using something like vscode or vstudio or some other conventional IDE.