git svn clone [单文件]

时间:2016-06-02 16:57:39

标签: git svn git-svn

我知道我可以使用git-svn将目录克隆到新的Git Repo中,但是如何使用git-svn将 单个文件 克隆到新的Git回购?

我需要将我的SVN存储库拆分为几个GIT存储库,我需要将某些目录克隆到新的Git存储库中。使用git-svn我可以对目录使用以下命令:

git svn clone "svnRepo/folderName/" "C:/newGitRepo/FolderName"

但是当我尝试时:

git svn clone "svnRepo/folderName/style.css" "C:/newGitRepo/FolderName"

它不起作用,它给我以下输出:

Initialized empty Git repository in C:/newGitRepo/FolderName/.git/
W: Ignoring error from SVN, path probably does not exist: (160013): Filesystem has no item: '...trunk/folderName/style.css' path not found
W: Do not be alarmed at the above message git-svn is just searching aggressively for old history.
This may take a while on large repositories
Invalid filesystem path syntax: Cannot replace a directory from within at /mingw64/share/perl5/site_perl/Git/SVN/Ra.pm line 308.

是否有将单个文件克隆到新的Git Repo中?

(我正在使用此版本的GIT:https://portswigger.net/burp/

1 个答案:

答案 0 :(得分:1)

简短的回答是你不能完全按照自己的意愿去做,但有一些方法可以稍微改变一下:

如果你想要做的是从svn迁移到git,我建议你在svn 中分解你的存储库,那么你就可以在每个文件夹上使用git svn clone 。 但是你将无法从新的git repo中恢复到svn repo(使用 git svn dcommit )。

另一个解决方案是执行稀疏结帐doc,另请参阅Sparse checkout in Git 1.7.0?中的一些详细信息 。 但是你仍然需要将目录的全部内容放在新创建的git存储库中,即使你没有在工作目录中看到它。