git - 克隆本地 git 存储库,就像我从远程克隆一样

标签 git

我有一个从远程(例如 github)克隆的本地 git 存储库。其中的分支具有关联的上游,它们可以从中 pull 和推送。

我想为此存储库创建一个新的本地副本,以便我可以在本地的不同分支上同时进行开发。

我可以从远程存储库git clone ...,但这需要一段时间才能通过慢速链接。

相反,我想从本地存储库进行git克隆,但效果就像我对远程进行了git克隆。因此,新副本中的分支将从远程 pull 和推送。对于任何其他需要 Remote 的操作,它将使用原始 Remote 。

我该怎么做? …我应该cp -r repo repo-clone吗?

最佳答案

如果您实际上不想要新的克隆,而只是 checkout 不同分支的多个工作树,您也可以考虑 `git worktree'相反。


如果您确实想克隆并节省下载时间和带宽,您可以像往常一样从远程进行克隆,但添加 --reference <local repository>使用本地存储库中的 Git 对象,而不是从远程下载它们。这将使用引用存储库中的对象,而不是复制它们,因此如果您需要,某些 Git 清理可能会删除第二个克隆中所需的对象。 G。删除引用存储库中仍位于新存储库中的分支,并且在引用存储库中无法再访问提交。如果您想花费额外的磁盘空间来解决此问题,请另外使用 --dissociate实际从引用存储库复制对象。

关于git - 克隆本地 git 存储库,就像我从远程克隆一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40863567/

相关文章:

git - 使用 JGit 使现有的 Git 分支跟踪远程分支?

git - 试图理解 git fetch

Git:在 git 中克隆远程存储库时无法解决主机 github.com 错误

git - 设置对 git repo 的只读 http 访问

Git 分支没有跟踪信息

windows - GIThub 和非英文窗口?

git - 如何在 git 的 contrib 目录中正确安装工具?

git - GitHub 中的 Release 到底是什么?

git - 将 GitHub 存储库同步到 Azure DevOps

git - "git pull --rebase"导致 "Cannot rebase onto multiple branches"