Studio target 的 Git 工作方式¶
正式工作目录是 /mnt/cvda_mnt/projects/arthoi4d。它的本地 main 从原项目已提交的
cdfdbc9 延续,所以此前提交、分支和 tag 都可用;Studio shared boundary 与 ours
integration 是其上的新提交。原目录
/DATA/intern/hoi4d/projects/zhanbaiting/ArtHOI4D 只作为历史审计来源,不能在其中写代码、
初始化 Git 或提交。
在共享 checkout 中工作¶
多人可以阅读和运行,但同一时刻只能有一个代码 writer。开始前先确认:
若 Git 提示 shared-mount ownership 检查,可对自己的账户一次性执行:
不要用 git clean、git reset --hard 或删除 output/。训练输出、checkpoint、reference
审计副本与本地 cache 已由 .gitignore 排除;它们不是代码 diff。
哪些文件是正式入口¶
- 日常 Physics 运行:
physics_usage.md ours的接口与公式合约:ours_residual_architecture.md- 生产配置:
configs/methods/physics/ours.yaml - 历史短训/A-B 配置:
configs/experiments/physics/ours_audit/;只用于复查,不能作为生产 gate。
新代码和文档应作为小而明确的 commit 进入 main。不要把 ours 的 case 产物、TensorBoard
文件、video、.pt/.pth、o/ reference snapshot 或 .tmp/ bundle 加入 Git。
子模块¶
PHC 和 InterMimic 的 Studio 适配是子模块中的独立 commit;父仓库 main 已锁定它们的
gitlink。在当前共享 checkout中无需重新初始化,直接使用即可。其他历史子模块也已经按
cdfdbc9 的 gitlink 初始化。
在把 parent main 推送给一个新的远端 clone 之前,必须先把下面两个子模块 commit 推送到
团队可写的 PHC 与 InterMimic fork,并把 .gitmodules 的 URL 改为对应 fork:
这一步需要 fork URL 与写权限,不能假设上游公共仓库允许推送。取得权限后,先分别推送子模块 分支,再从 parent 执行安全检查:
该检查会在子模块 commit 尚不可从远端取得时拒绝 parent push;不要用跳过检查的强推替代它。
现有历史和审计¶
# 新 Studio integration 相对原始已提交 main 的提交序列
git log --oneline legacy/main..main
# 确认 parent 记录的子模块 commit
git submodule status
legacy/main 是只读历史锚点,不是 runtime 依赖。运行时仍只使用当前 target 的代码与
Studio-provided 接口。