0

有没有办法在 MKS 命令行界面中获取文件所在的项目?我是 MKS 的 CLI 脚本新手,找不到任何合适的结果。

我想要的只是

-> [命令] [文件名] -> [项目路径]/project.pj

任何帮助是极大的赞赏。

4

2 回答 2

1

具有特定配置的命令si locate可以返回注册文件的项目。此功能仅适用于DB 后端存储库,不适用于RCS 存储库

如果要获取该文件所在的项目,则必须确保 MKS 存储库中仅存在一个具有该名称的文件,否则,您将获取该文件所在的所有项目。

您可以使用此命令,对我来说效果很好,或者您可以根据需要进行自定义

si locate –hostname=%mks_Hostname% --port=%msk_Port% --user=%mks_User% --depth=all --devpathscope=all --exactmatch --listfields=devpath,name,project,checkpoints,dates --memberbyname="%Filename%"

si 找到帮助

Usage: si locate options... current or former member/subproject; options are:
    --[no]casesensitive  Make search case sensitive (default is --nocasesensitive for case insensitive servers)
    --depth=[current|build|all]  How much historical data should be encompassed in the search
    --devpathscope=[this|others|all]  Which devpaths should be encompassed in the search
    --distinct=[project|devpath|registeredproject]  In distinct mode, what output should be displayed
    --[no]exactmatch  Match search string exactly (default is --noexactmatch)
    --height=value  The height in pixels of the windows
    --[no]limittoactivepaths  Limit search to active projects
    --listfields=field1[:width1],field2[:width2]... where fieldn can be any of: checkpoints,configPath,dates,devpath,flatPath,name,project,registeredproject,revisions
    --memberbyname=value  The search string for Locate member by name
    --mode=[distinct|list]  Output mode
    --numberofresults=value  The maximum number of results to return
    --projectscope=[this|others|all]  Which projects should be encompassed in the search
    -r value  lookup a single revision (for members)
    --revision=value  lookup a single revision (for members)
    --subprojectbyname=value  The search string for Locate subproject by name
    --width=value  The width in pixels of the windows
    -x value  The x location in pixels of the window
    -y value  The y location in pixels of the window
    --devpath=value  The development path (to refer variant projects)
    --[no]failOnAmbiguousProject  Whether to abort when multiple projects correspond to a flat project string.
    -P value  The name of the target project
    --project=value  The name of the target project
    --projectRevision=value  The project revision (to refer build projects)
    -S value  The name of the sandbox (can be used as project redirector)
    --sandbox=value  The name of the sandbox (can be used as project redirector)
    -?  Shows the usage for a command
    --[no]batch  Control batch mode (no user interaction in batch mode)
    --cwd=value  Act as if command executed in specified directory
    --forceConfirm=[yes|no]  Specify an answer to all confirmation questions
    -g  User interaction should happen via the GUI
    --gui  User interaction should happen via the GUI
    --hostname=value  Hostname of server
    -N  Responds to all confirmations with "no"
    --no  Responds to all confirmations with "no"
    --password=value  Credentials (e.g., password) to login with
    --port=value  TCP/IP port number of server
    --quiet  Control status display
    --settingsUI=[gui|default]  Control UI for command options
    --status=[none|gui|default]  Control status display
    --usage  Shows the usage for a command
    --user=value  Username to login to server with
    -Y  Responds to all confirmations with "yes"
    --yes  Responds to all confirmations with "yes"
于 2015-08-05T13:35:36.970 回答
0

至于 si 定位:

假设您的当前目录位于已注册沙箱树的某个位置,您可以只记住

si locate filename

例如

c:\>my_sandboxes\prjA\src>si locate main.c

您可能会得到多个结果/答案,例如。如果项目有变体和/或存档在多个项目中共享,则服务器。

如果您想从 gui 中获得 Member->Locate 的所有复杂可能性,您应该阅读一些参考资料,例如。SourceCLIReference_Integrity_10_4.pdf 或已经提到的类似内容。

si locate help
于 2016-09-01T11:53:17.150 回答