Git 约定
仓库已有 origin 和 dev 的远程跟踪配置,继续沿用;作者身份沿用本机原有配置。不要将测试包、运行存档或本机配置提交到仓库。
.gitignore排除编译目录、IDE 缓存、artifacts/、上游审计副本、运行数据、备份、登录凭据、证书、日志和测试输出。Client/XFEWarframe.Client/Runtime/是 C# 源码,明确保留;WinUI 的Profiles/下也是源码,不能整目录忽略。Server/data/、翻译字典、项目与调试配置是构建所需资源,正常跟踪。.gitattributes约定源码使用 LF、Windows.cmd/.bat使用 CRLF、图片和压缩包按二进制处理。.editorconfig提供相同的编辑器换行约定。- 本机仓库配置
core.autocrlf=false,以.gitattributes为准;core.safecrlf=warn保留换行检查,core.longpaths=true支持 Windows 长路径,fetch.prune=true清理失效远程跟踪分支,push.default=simple推送当前对应分支。
提交前可运行:
./scripts/Check-Git.ps1
git status --short
git diff --stat
检查脚本不暂存、不提交、不推送,也不读取或输出令牌。它验证敏感/生成目录确实被忽略、必要源码不会被误忽略、没有已跟踪的忽略文件,以及修改的空白格式。
本地 .git/config 不会随克隆复制。另一台机器可以按上述约定自行设置仓库级选项;不要覆盖该机器已有的作者或远程地址。.gitignore 不会自动取消已跟踪文件;若以后发现误提交的密钥,应先撤销密钥,再处理 Git 历史。