在生产服务器上,我创建了一个裸仓库和一个工作目录。 这是为了在工作目录为“公共”时在不寻常的地方保存历史记录。即使我正在考虑误解“裸”并使用它而不是“吞咽”的东西,一切似乎都很好。
但是我看到结合使用“裸仓库”和“子模块”的git的奇怪行为。
显然,子模块不在git repo中。 但是,在每次将部署签出到选定的提交之后,它们都可以正常工作。 但是,由于无法跟踪它们,因此我无法检查它们的状态。
git status
On branch web
Your branch is up to date with 'origin/develop'.
nothing to commit, working tree clean
但是...如果我对模块运行相同的命令:
git submodule status
fatal: git-submodule cannot be used without a working tree.
这正常吗?
这使我开始考虑解散所有设置并创建一个标准的非裸仓库(可能是depth=1
的轻量级)。
我是否还误解了其他东西? 我的设置是好的安全实践还是没有用的工作?