我有几个使用相同 git 存储库的进程,但他们坚持将它们视为独立的事物。这导致我在不同的本地位置拥有多个相同存储库的克隆。
是否有任何现有的 git 包装器可以确保我只有一个带有硬链接的存储库?我期望它做的是:
- On
clone
,$GIT_CLONES_PATH
如果给定的 url 已经被签出,则签入。如果它不存在,请克隆到该位置,然后硬链接克隆到请求的路径。 - 上
pull
,先拉入$GIT_CLONES_PATH
,再拉入本地。 - 上
push
,推送到远程$GIT_CLONES_PATH
(防止本地推送后冲突),然后拉入公共位置$GIT_CLONES_PATH
。
我想这里有数百个我没有考虑过的边缘案例,所以:有没有人知道一些现有的项目可以做到这一点?