我正在审查一些用Perl编写的ClearCase触发器.我注意到在一些正则表达式中,变量既可以直接传递,也可以用大括号中的名称传递.
例如,我在触发器中有以下代码行:
if ($baseline !~ /^${component}_(|.*_)$phase\.\d+(|[a-z]|-\d+|${automateddigit})$/ &&
$baseline !~ /^${project_root}_$phase\.\d+(|[a-z]|-\d+|${automateddigit})$/)
Run Code Online (Sandbox Code Playgroud)
$component,$phase,$automateddigit,$project_root都是变数.
为什么有些像正则表达式$variable一样传递${variable}了?
它是否来自它们的初始化方式?
以下是初始化它们的代码行:
($project = $ENV{CLEARCASE_PROJECT}) =~ s/\@.*$//;
($component = $ENV{CLEARCASE_COMPONENT}) =~ s/\@.*$//;
($project_root, $phase) = ($project =~ /^(.*)_(R\d+.*)$/);
exit(0) if (! $phase);
$phase .= ".0" if ($phase =~ /^R\d+$/);
$automateddigit = '';
$istream = `cleartool desc -fmt "%[istream]p" project:$ENV{CLEARCASE_PROJECT}`;
$componentlist = `cleartool desc -fmt "%[components]Cp" stream:$ENV{CLEARCASE_STREAM}`;
$componentsnbr = split(',', $componentlist);
if ($componentsnbr > 1) {
$automateddigit .= …Run Code Online (Sandbox Code Playgroud) 我想知道在尝试删除已提交的更改列表时可能有什么意义,因为提交的更改列表不应该为空.
但后来我正在使用教程库,并在整个分支上使用obliterate命令,我可以看到有一种情况,你可以最终得到空的已提交的更改列表(需要使用-f标志删除).
但是,我不知道如何使用命令行找到它们,因为我不知道如何查找没有与之关联的文件的更改列表.
有一个简单的方法吗?
谢谢,
托马斯
在我看来,在提交集成后,保持Perforce中的"分支"对象可能不是完全必要的.
即"真正的"分支,实际上是一个文件夹路径,即使您删除为执行集成而创建的分支对象,文件夹路径仍然有效,并且此路径中的所有文件仍然存在(重新启动版本控制)从#1等...).
让我感到困惑的是,当我尝试编辑分支(对象)名称时,它会创建一个新分支,它是前一个分支的新分支.但如果我删除前一个,似乎没有造成任何伤害(乍一看).
Perforce中的分支对象实际上只是一个方便的工具机制,可以随意销毁和重新创建,只要它描述的映射保持相同?
托马斯
Skype HotKeys真的很烦人,因为它们无法从Skype本身禁用.最令人讨厌的是Ctrl+ R,如果选择了联系人,则会与您的任何联系人进行Skype通话.最近由Ctrl+ Alt+ 取代了R.
见http://community.skype.com/t5/Windows-desktop-client/Disable-CTRL-R-on-windows/td-p/2877763
不幸的是,在我看来,我得AltGr+ R作为"è"字符的映射键(使用microsoft keybord creator).因此,在我的所有应用程序中,我可以使用美式键盘快乐地用法语写作,一直使用AltGr+ r作为我的"è"角色.现在除了Skype之外.
阅读上面的链接,我创建了一个AutoKey脚本,以禁用Skype的热键:
#IfWinActive, ahk_exe Skype.exe ; utilizes this script for Skype only
!^r:: ; replace [ctrl][alt][r] with nothing
#If ; closes IfWinActive condition, needed if more code comes after this
Run Code Online (Sandbox Code Playgroud)
但是,虽然这会禁用Skype热键,但它会阻止我在Skype讨论中正常输入"è"字符.这么好,但不是最好的,因为我的打字现在在Skype中被破坏了.
我尝试了其他选择,但无济于事:
#IfWinActive, ahk_exe Skype.exe ; utilizes this script for Skype only
!^r::
Send è
return
#If ; closes IfWinActive condition, needed if more code …Run Code Online (Sandbox Code Playgroud) 我是Perforce的新手.
您会在视图/分支方面考虑P4最佳实践.
你会创建一个可以访问许多分支的视图,还是会创建一个视图/分支?
我不确定Perforce中的视图/劣化空间之间的切换是否容易.
谢谢,
托马斯
我是Perforce的新手.我们当前的服务器似乎存在配置错误,因为任何人都可以更改其他人的工作区选项.
有谁知道如何快速解决这个问题?
谢谢,
托马斯