我想把我的大部分代码库从自己的SVN服务器转移到托管在远程Git服务器上。我找到了几个命令,并将它们转换为自动化shell脚本,以便更顺畅地转换这些代码库。
不过,现在当我尝试克隆Git代码库进行工作时,托管服务器会出现
因此,我尝试使用
我为错误#3创建了一个新的提交,如主题回复中所述,但是我完全没有进展... 我意识到这些错误都彼此相关,但我不明白为什么(本地)克隆存储库中没有主干,或者为什么我突然有了几个分支,而在其他存储库中只有一个
为了讲述很多次尝试的长故事更简短:
PS:我想你会知道,写命令行不是我的强项,请不要把我打死 :-)
不过,现在当我尝试克隆Git代码库进行工作时,托管服务器会出现
unexpected EOF
错误。一些大型代码库(2-10 GB)需要太长时间来导入...因此,我尝试使用
filter-branch
删除文件夹以减小代码库的大小,通过删除最大的文件夹和图形源文件。这在我的计算机上都可以正常运行,但是当我想要上传到Git服务器时(等待了很长时间后),我发现目录和文件仍然存在!
我尝试使用git repack
来确保包也更小,并将存储库克隆到一个新文件夹中,这解决了我的问题,但是当我继续使用git branch -m trunk master
时,出现了错误,例如:
1: error: refname refs/heads/trunk not found
2: fatal: Branch rename failed
3: error: src refspec master does not match any.
4: error: failed to push some refs to 'ssh://git@bitbucket.org/{username}/{projectname}'
我为错误#3创建了一个新的提交,如主题回复中所述,但是我完全没有进展... 我意识到这些错误都彼此相关,但我不明白为什么(本地)克隆存储库中没有主干,或者为什么我突然有了几个分支,而在其他存储库中只有一个
master
分支...* [new branch] origin/HEAD -> origin/HEAD
* [new branch] origin/master -> origin/master
为了讲述很多次尝试的长故事更简短:
现在我的问题是:有人有缩小存储库大小(本地和远程)并使其能够上传到我的git服务器的解决方案吗?
我使用所有历史记录对一个新文件夹(projectname)进行git svn克隆 --no-metadata -A -stdLayout
1b.我删除所有过时的文件夹和文件(根据仓库定义)
- 我在一个新的代码库中使用git init(让我们称其为projectname-copy)
- 我将一切推到一个我使用git init --bare bare-repo创建的bare仓库中
- 我尝试上传到托管服务器,但我收到错误或没有变化
PS:我想你会知道,写命令行不是我的强项,请不要把我打死 :-)