gpt4 book ai didi

svn - 跟踪一个从 svn 切换到 git 的大型项目

转载 作者:行者123 更新时间:2023-12-04 06:45:27 26 4
gpt4 key购买 nike

我正在跟踪一个最近从 svn 转移到 git 的项目。我有最新的 svn 代码,想开始使用 git 中的代码。有没有办法在不涉及通过慢速连接重新下载相当大的代码库的情况下做到这一点?本质上,我希望能够说“从这里开始(旧的 svn 代码)并从 git 获取更改”。

最佳答案

SVN 和 Git 可能看起来很相似,因为它们都是 SCM 工具,但在幕后,它们的实现方式非常不同,即 Git is way better .

只需从新开始,然后 git clone 即可。即使对于像 Linux Kernel 这样的大型项目,Git 的克隆速度也非常快。

您也可以使用 --depth加快速度的选项:

--depth <depth>
Create a shallow clone with a history truncated to the specified number of revisions. A shallow repository has a number of limitations (you cannot clone or fetch from it, nor push from nor into it), but is adequate if you are only interested in the recent history of a large project with a long history, and would want to send in fixes as patches.


来源: http://git-scm.com/docs/git-clone

这是一个检查存储库最新版本的示例:
git clone git://source.winehq.org/git/wine.git ~/wine-git --depth 1

来源: http://mortalpowers.com/news/speed-up-git-clone-with-shallow-clones

您可以稍后使用 --depth选项与 git pull :

--depth=<depth>
Deepen the history of a shallow repository created by git clone with --depth=<depth> option by the specified number of commits.


来源: http://kernel.org/pub/software/scm/git/docs/git-pull.html

也许,如果您输入足够大的数字(或者可能是 -1?)以获取存储库的整个历史记录,那么您将拥有普通存储库的所有功能,例如,克隆或从中取出,或 push 或 push 。

如果没有,你可以在一个单独的地方正常克隆它(也许当你有更快的连接时)并使用 git format-patch git apply 将您的提交从浅存储库移动到新的存储库中。

马特

关于svn - 跟踪一个从 svn 切换到 git 的大型项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3793470/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com