git clone --mirror 危险吗?
Is git clone --mirror dangerous?
所以我打算将一堆存储库从 bitbucket.org 迁移到 new 内部部署 Bitbucket 服务器实例。
我无法决定是将每个存储库克隆为 --bare 还是 --mirror。
脚本化过程看起来非常简单。
从bitbucket.org获取存储库并将它们写入文件以供使用并作为日志保存。 (已经完成并开始工作)
读取文件,提取存储库,repo slug(repo 名称)并克隆它们。(已经使用 --mirror)
对于每个克隆的存储库,运行:
- git gc --auto 清理 repos
- 在 new 本地服务器
上从 slug 创建 repo
- git 远程设置-url origin ssh://on_prem_server:7999 /PROJ/REPO
- git push --all origin
- git push --tags origin
所以我实际上并不是在镜像 bitbucket.org 存储库,而是在迁移它们。我的理解是 git clone --mirror 给出了原件的 真实副本 。虽然 git clone --bare 不需要并且之后需要 至少 一次获取。这就是为什么我最初认为使用 --mirror 是最好的原因。
但是现在担心用镜子会不会有什么危险
所以我的问题是。
- 我应该注意使用 git clone --mirror 有什么危险吗?
- 我应该使用 --mirror 还是 --bare 就足够了?
--mirror
只是意味着复制所有 refs "as-is"(而不是,例如,仅复制分支并将它们映射到远程跟踪 refs)。您的用例在其预期目的范围内。
(只是为了澄清 - --bare
也 直接映射 refs 而不是从分支创建远程跟踪 refs,但它不会像 --mirror
.)
所以我打算将一堆存储库从 bitbucket.org 迁移到 new 内部部署 Bitbucket 服务器实例。
我无法决定是将每个存储库克隆为 --bare 还是 --mirror。
脚本化过程看起来非常简单。
从bitbucket.org获取存储库并将它们写入文件以供使用并作为日志保存。 (已经完成并开始工作)
读取文件,提取存储库,repo slug(repo 名称)并克隆它们。(已经使用 --mirror)
对于每个克隆的存储库,运行:
- git gc --auto 清理 repos
- 在 new 本地服务器 上从 slug 创建 repo
- git 远程设置-url origin ssh://on_prem_server:7999 /PROJ/REPO
- git push --all origin
- git push --tags origin
所以我实际上并不是在镜像 bitbucket.org 存储库,而是在迁移它们。我的理解是 git clone --mirror 给出了原件的 真实副本 。虽然 git clone --bare 不需要并且之后需要 至少 一次获取。这就是为什么我最初认为使用 --mirror 是最好的原因。
但是现在担心用镜子会不会有什么危险
所以我的问题是。
- 我应该注意使用 git clone --mirror 有什么危险吗?
- 我应该使用 --mirror 还是 --bare 就足够了?
--mirror
只是意味着复制所有 refs "as-is"(而不是,例如,仅复制分支并将它们映射到远程跟踪 refs)。您的用例在其预期目的范围内。
(只是为了澄清 - --bare
也 直接映射 refs 而不是从分支创建远程跟踪 refs,但它不会像 --mirror
.)