问题标签 [svnlook]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - 如何匹配 Perl 中的 svnlook 输出?
我在 Windows 服务器上运行 SVN,并且我正在使用 Perl 脚本来实现一些预提交挂钩。我从 TortoiseSVN 看到以下错误消息:
错误!!脚本错误!!无法解析行:_U path/to/files/trunk
这是脚本:
我尝试用没有成功的东西替换正则表达式/_([AUD]).\s\s(.+)$/
- 我什至尝试过/.*([AUD]).\s\s(.+)$/
。
想法?建议?
svn - 带有 unicode 输出的 SvnLook
在 Windows Vista 上,通过 VisualSvn Server 2.1.3 设置 Subversion 1.6.12,我有以下输出
代替
使用命令(在管理员模式下的 dos 或 powershell 控制台中)
我已经尝试过使用其他颠覆二进制文件分发(silksvn)并且总是同样的问题!如何告诉 windows 上的 svnlook 以 Unicode 或至少当前 windows 编码输出?
注意:我不认为这个问题与“svnlook changed”编码重复:我在 Windows 上,这不是与 Hooks 相关的问题。
谢谢...
svn - 可以在提交事务期间强制“svnlook cat”输出格式正确的文本吗?
在为 subversion 编写预提交挂钩时,我处于调用svnlook
as
导致返回的值由单个连续行组成,而不是在尝试提交中更改的正确格式的文件。这是有问题的,因为源的格式对于编译很重要。知道为什么这一切都结束在一条线上吗?我错过了什么吗?
svn - SVN命令行:svnlook history mypath,无法打开文件
我使用这个命令来显示提交的历史。
svnlook history -r 2 mypath
我明白了:
svnlook: Can't open file 'mypath/format': No such file or directory
我确信“mypath”是正确的。我还尝试进入更深的目录。我尝试了绝对路径和相对路径,我尝试了 -r 选项,但我总是得到相同的结果。
svn - “svnlook propget”有效吗?
好的,请看以下内容:
我正在使用 svnlook 命令,似乎有问题。第 1 行显示trunk
. 第 2 行显示有一个名为 的foo
属性bar
。我通过 thssvnlook proplist
命令做到了这一点。好的,到目前为止一切顺利。
第 3 行显示了propget
on property的结果foo
。它什么也不返回。如果我像第 4 行那样拼错了名称,它会告诉我找不到该属性。
我的理解是,svnlook propget
假设打印财产的价值很像svn propget
。实际上:
完全按照我的想法去做。
我是不是错过了什么。我做错什么了吗。还是命令有问题svnlook
?
我需要这个作为 Subversion 钩子,所以使用svn
代替svnlook
是不可能的。
php - svnlook 通过 php 给出一行
我有一个调用 svnlook 的简单 php exec 命令。如果我通过终端运行命令,我会得到我期望的所有输出。如果我按如下所示运行它,我只会得到最后一项。
我可以缓冲输出吗?如果有怎么办?那会有帮助吗?
svn - svn 的 svnlook 结果中的西里尔文支持
我试图通过 svnlook 使用以下方法从 SVN 获取更新/添加/删除文件的列表:
但我得到了一些奇怪的东西:
我知道这个文件名是西里尔文和 Windows-1251 编码。该文件通常保存在 SVN 本身中,因此我可以正常提交和更新它。但是我怎样才能从 svnlook 中得到正确的文件名呢?
谢谢!
PS Ubuntu 11.04 x64
svn - 批处理 FOR /F 和文件/路径名中的空间以及令牌的使用?
我正在使用批处理文件仅更新那些在我的 SVN 存储库中已更改的文件。这是我的批处理文件的一部分:
我只得到dok而不是dok version1.txt我猜那是因为空间。即使有空格,我必须如何更改代码才能获取文件名?那是因为令牌还是它在哪里削减了名字?
svnlook 的输出如下所示:
D Testprojekt/trunk/dok - Kopie (2).txt
D Testprojekt/trunk/dok - Kopie (3).txt
D Testprojekt/trunk/dok - Kopie (4).txt
所以我使用 tokens=2 只获取路径(Testprojekt/trunk/dok - Kopie (2).txt)而不是操作(例如 D=deleted)。
谢谢!
svn - 在预提交脚本中检测分支重新集成或合并
在预提交脚本中,是否有可能(如果有,如何)识别源自svn merge
?
svnlook changed ...
显示已更改的文件,但不区分合并和手动编辑。
理想情况下,我还想区分标准merge
和merge --reintegrate
.
背景:
我正在探索使用预提交挂钩来为我们的项目强制执行 SVN 使用策略的可能性。
其中一项政策规定,某些目录(如/trunk
)不应直接修改,只能通过重新集成功能分支进行更改。因此,预提交脚本将拒绝对这些目录所做的所有更改,除了分支重新集成。
有任何想法吗?
更新:
我已经探索了这个svnlook
命令,最接近的是检测和解析svn:mergeinfo
对目录属性的更改。这种方法有一些缺点:
svnlook
可以标记属性更改,但不能标记更改了哪个属性。proplist
(需要与先前版本的差异)- 通过检查 中的更改
svn:mergeinfo
,可以检测到svn merge
已运行。但是,无法确定提交是否纯粹是合并的结果。合并后手动进行的更改将不会被检测到。(相关文章:Diff transaction tree against another path/revision)
svn - 在预提交中确定事务的基本修订
我正在编写一个预提交挂钩,我想在事务之前根据文件的内容强制执行一些规则。因此,当事务开始时,我想 svnlook cat 标记任何标记为“U”、“UU”或“D”的文件的内容,而不需要挂起的更改。我是否可以安全地使用提供的事务标识符(预提交的第二个参数)并去掉破折号和它后面的任何字符并认为是“基本修订版”?有没有更好的方法来获取这些信息?