如果我想复制一个 repo,我使用它。
git clone --mirror $SRC $DST
但是这个命令不需要 repo 存在于$DST
. 通常没问题,但如果我想从多个进程同时发出 Git 命令,可能会导致一些竞争条件,因为在执行命令之前不存在可锁定的文件对象。
如果我只想跳过存在测试$DST
,我想我可以
mkdir -p $DST
cd $DST
git init --bare
git remote add origin --mirror-=fetch $SRC 2>/dev/null || true
git remote update
这会与完全相同的回购git clone --mirror $SRC $DST
吗?