- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在尝试使用 git svn clone
命令在 Windows 7 上从 svn 切换到 git。
在我的一个存储库中,我尝试这样做:
git svn clone --stdlayout --no-metadata -A users.txt --username=/CN=john https://path/to/my/repo ./
这是我的users.txt 文件:
/CN=john = John Doe <john.doe@myself.com>
当我执行 git svn clone 时,没有任何显示,就像一切正常但没有文件被克隆一样。所以在 C:/Users/John/.suversion/servers 中,我设置了 neon-debug-mask = 256
来显示日志错误。
现在显示我的错误:Author:/CN=john not defined in users.txt file
所以我认为因为我的用户名中有一个相等的 git clone 命令无法正确解析数据。
我试过转义 /CN\=john
并引用 '/CN=john'
"/CN=john"
但没有似乎有效。
有没有人知道处理这个问题的好方法?
谢谢
最佳答案
git-svn
当前无法处理用户名中包含等号“=”的 SVN 用户。
Here is来自内部的相关代码 git-svn
:
# '<svn username> = real-name <email address>' mapping based on git-svnimport:
sub load_authors {
open my $authors, '<', $_authors or die "Can't open $_authors $!\n";
my $log = $cmd eq 'log';
while (<$authors>) {
chomp;
next unless /^(.+?|\(no author\))\s*=\s*(.+?)\s*<(.+)>\s*$/;
my ($user, $name, $email) = ($1, $2, $3);
if ($log) {
$Git::SVN::Log::rusers{"$name <$email>"} = $user;
} else {
$users{$user} = [$name, $email];
}
}
close $authors or croak $!;
}
...如您所见,用于从文件中提取用户名的正则表达式将仅考虑第一个“=”之前的文本作为 SVN 用户名的一部分。之后的所有内容都被视为 git 用户名的一部分。
这是 git-svn
中的错误.
我想到的可能的解决方法:
.+?
在那个正则表达式中应该是贪婪的,最后一个 .+
非贪婪,即 next unless /^(.+|\(no author\))\s*=\s*(.+?)\s*<(.+?)>\s*$/;
git svn
添加别名命令包括 --authors-prog
每次选项,在你的.bash_profile
?$Git::SVN::Log::rusers
或 $users{$user}
直接?关于作者姓名为 "/CN=myname"的 Git svn 克隆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16687094/
这个问题已经有答案了: JavaScript OR (||) variable assignment explanation (12 个回答) 已关闭10 年前。 我找不到这种格式背后的原因? 我认为
我编写了一个小型矩阵库,作为我正在进行的一个更大项目的一部分。零成本转换很重要,所以我使用/滥用了 union 。代码本身工作正常(在下面提供),但是当涉及到使用 Doxygen 的文档时,它结合了
我正在编写一个正则表达式,需要满足以下条件。 (name="myName".*house="myHouse"|house="myHouse".*name="myName") 名字或房子都可以放在第一位
我是 JavaScript 新手。我相信这对于有经验的人来说会很容易。 Amazon AWS SDK for Node.JS 的 SimpleDB getAttributes 函数返回如下数据数组:
是否可以更改文件扩展名而不影响输出.. 例如:http://www.cox.com/myconnection/home.cox 来自上述 URL:文件扩展名 .cox。像这样 尽快帮我。 提前致谢 最
我刚刚安装了 JAMES(Java Apache 邮件企业服务器),我正在尝试将其用作邮件服务器。 我正在尝试创建一个邮件 ID myname@localhost.com,我希望它接收来自 mail@
我试图验证我的 xcode 项目,但它导致错误“此 Mac 上未安装“我的名字”的私钥” 因为这个项目是由另一台 Mac 电脑创建的。这已经坏了。所以,我无法将这个私钥导出到我正在使用的它。 你有什么
我正在尝试在 Joomla 2.5 中构建联系表单。填写所有字段并提交表单后,我收到如下错误: The following from address failed: myname@gmail.com.
这个问题在这里已经有了答案: Why use named function expressions? (5 个答案) 关闭 8 年前。 以下两个函数声明之间是否有不同的结果(作用域等...)? va
我正计划构建 Web 应用程序,我想知道如何像 facebook 或 twitter 一样为名称“@myname”创建提及 最佳答案 使用这个正则表达式在字符串中找到它们.... $str = 'Yo
我安装了 rvm(ruby 版本管理器)并且成功了,但是我得到了 WARNING: You have '~/.profile' file, you might want to load it, to
当我输入 go env 时,它会显示路径 Users/myname/go 我可以从终端使用 go,我什至可以运行 go 文件...当我打开 GoLand 时,它说 GOPATH 是空的。我什至无法在那
每次我想使用 AWS 进行配置时,都会收到以下错误: "The config profile (myname) could not be found" 喜欢:aws 配置 我正在使用 Python 3
我尝试使用以下正则表达式匹配字符串 m-y_n.ame@myemail.edu.in: ([_A-Za-z0-9-.]+@[a-z0-9-]+[.][a-z]{2,3}[.][a-z]{2,3
所以我有以下内容 如何使名称成为“sqlQuery{loopOfIndexIHere}”并附加 i 最佳答案 就像任何其他绑定(bind)一样。在普通属性上使用 {{i}} 或在绑定(bind
关于 magit/push 的问题 我开始使用 magit,对 git 的经验很少。 我已经成功完成了 magit 手册: adding ignoring staging commiting loca
我正在尝试使用 git svn clone 命令在 Windows 7 上从 svn 切换到 git。 在我的一个存储库中,我尝试这样做: git svn clone --stdlayout --no
我正在学习 gem5 模拟器,我对 C++ 的了解很少,我正在关注 this教程指导。在构建对象期间,对于 goodbye.sayGoodbye(myName); 语句,终端显示此错误: Goodby
我正在尝试使用 PostgreSQL,以便可以部署到 Heroku。但是我不能再运行本地主机了,为什么?我收到以下消息: PG::ConnectionBad FATAL: role "Myname"
我搜索了很多,找不到答案。我刚开始使用 xcode 并有一个非常非常简单的程序,名为“Image Test”。 ---> 它有一个按钮和一个文本字段。我想在文本字段中显示我的系统主目录路径。这是我的代
我是一名优秀的程序员,十分优秀!