当尝试git svn dcommit
对于名称中包含空格的存储库,我收到以下错误:
Committing to http://svn.kuluvalley.com/Meet the Expert/trunk ...
http://svn.kuluvalley.com/Meet the Expert/trunk
Filesystem has no item: '/!svn/bc/7397/Meet' path not found at /usr/libexec/git-core/git svn line 592
看起来像git svn
不支持其中包含空格的目录。
我能够解决这个问题git svn
无法通过修补 git-svn 来处理包含空格的存储库。
我更新了url_path
函数:
sub url_path {
my ($self, $path) = @_;
my $url = $self->{url} . '/' . $self->repo_path($path);
if ($self->{url} =~ m#^https?://#) {
$url =~ s!([^~a-zA-Z0-9_./-])!uc sprintf("%%%02x",ord($1))!eg;
$url =~ s!^(https?)%3A//!$1://!;
}
$url
}
对于 Windows (x64) 用户,此功能可以在 Editor.pm 文件中找到,该文件位于
{Git安装文件夹}\mingw64\share\perl5\site_perl\Git\SVN\
这可确保 url 中的空格编码正确。
它似乎对我有用,但尚未经过彻底测试。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)