Git存储库:深层复制

时间:2019-01-29 17:02:13

标签: git

假设我有一些git仓库DB2SimpleDataSource db2DS = new DB2SimpleDataSource(); db2DS.setClientDebugInfo("xxx"); 。我想将此仓库克隆到一个名为x的新仓库中。我不想将对x-new的更改推送到x-new,而是希望将它们推送到远程x仓库。基本上,我希望x-new不知道x-new甚至存在。

在git中是否可以使用这种“深度复制”机制?我还没有找到规范的例子。也许我没有使用正确的措辞,但是“深度复制”是我认为可以描述我所需要的最佳方式。

3 个答案:

答案 0 :(得分:1)

要在不克隆存储库的情况下复制存储库,请在Github中引用this链接。

答案 1 :(得分:1)

使用本地存储库:

git clone --no-hardlinks x x-new
cd x-new
git remote rm origin

使用远程存储库:

git clone --bare /link/to/remote/x x-new
cd x-new
git push /link/to/remote/x-new --all

答案 2 :(得分:1)

“深拷贝”一词是错误的,因为-默认情况下-任何克隆都具有原始存储库的所有提交。

您想要的是“进行另一个克隆”(为什么),并将URL更改为新的远程x-new

git clone --no-local x x-new
git -C x-new remote set-url origin $URL_TO_REMOTE_X_NEW

但是:如果您同时拥有远程x和远程x-new,那么只需更改您的 local x的URL就足够了。 (可选)重命名您的本地仓库:

mv x x-new
git -C x-new remote set-url origin $URL_TO_REMOTE_X_NEW
相关问题