630 字
3 分钟
服务器使用笔记:tmux 与 Git 基础工作流
这篇笔记主要是给自己看的随手查,用于记录一些零散的简单操作
核心原则
最重要的规则只有一条:
所有需要长期保留的数据,只放在
/root和/share。
因为这两个目录是容器里唯二挂载到宿主机数据盘的位置;其它目录不能保证持久性,重建容器时至少会丢失。
关于宿主机菜单与重建容器
宿主机对普通用户屏蔽了 shell,登录后只看到菜单选项。
其中“重建私⼈容器”非常危险:重建后 /root、/share 之外内容会重置,所有非系统进程会终止。
tmux
目标:SSH 断开/电脑合盖/网络波动,都不影响训练继续跑。
安装
apt-get update && apt-get install -y tmux会话操作
tmux new -s work # 新建会话 worktmux ls # 列出会话tmux attach -t work # 进入会话tmux detach # 脱离会话tmux kill-session -t work # 结束会话快捷键
Ctrl+b d:detach(离开会话,任务继续跑)Ctrl+b c:新建窗口(window)Ctrl+b n / p:下一个/上一个窗口Ctrl+b ,:重命名窗口Ctrl+b %:左右分屏(pane)Ctrl+b ":上下分屏Ctrl+b o:在 pane 间切换Ctrl+b x:关闭当前 paneCtrl+b [:进入复制/滚动模式(看历史输出),按q退出
TIP我常用的组合:
tmux new -s proj→ 一个窗口跑训练,一个窗口看日志(tail -f),一个窗口做 git/小改动。
Git:远程绑定与基础操作
这一部分目标是: 在服务器上 clone / 修改 / 提交 / 推送 / 同步别人更新 都能无脑操作。
1)远程绑定(remote add / set-url)
先看当前远程:
git remote -v情况 A:本地已有代码,想推到远程(新仓库)
git initgit add -Agit commit -m "init"
git remote add origin <REMOTE_URL>git branch -M maingit push -u origin main情况 B:已经有 origin,但要换远程地址
git remote set-url origin <NEW_REMOTE_URL>git remote -v2)最常用命令清单
查看状态/差异
git statusgit diffgit diff --stagedgit log --oneline --decorate -n 20提交
git add -Agit commit -m "your message"新建分支并推送
git checkout -b feat-xxxgit push -u origin feat-xxx拉取远程更新
git fetch origingit pull --rebase3)同步某个分支的更新
假设你本地在 train-time-implement,有人也在这个分支更新了:
git checkout train-time-implementgit fetch origingit pull --rebase origin train-time-implement如果你在别的分支,但想把对方分支的更新合并进来:
git fetch origingit merge origin/train-time-implement# 或者:# git rebase origin/train-time-implement 服务器使用笔记:tmux 与 Git 基础工作流
https://fuwari.vercel.app/posts/server_note/server/