Как я могу получить детали проекта MKS на основе имени файла?
Есть ли в любом случае получить проект, под которым файл присутствует в интерфейсе командной строки MKS? Я новичок в сценариях CLI для MKS и не смог найти должных результатов.
Все что я хочу это
-> [команда] [имя файла] -> [путь проекта]/project.pj
Любая помощь с благодарностью.
2 ответа
Команда si locate
с определенной конфигурацией, может вернуть проект / проекты, в которых зарегистрирован файл. Эта функциональность доступна только для внутреннего хранилища БД и не будет работать с хранилищем 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%"
найти помощь
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"
Что касается си найти:
При условии, что ваш текущий каталог находится где-то в дереве зарегистрированной песочницы, вы можете просто запомнить
si locate filename
например
c:\>my_sandboxes\prjA\src>si locate main.c
Вы можете получить несколько результатов / ответов, например. если проект имеет варианты и / или архив совместно используется несколькими проектами на сервере.
Если вы хотите, чтобы все сложные возможности Member->Locate из графического интерфейса, вы должны прочитать некоторые ссылки, например. SourceCLIReference_Integrity_10_4.pdf или как уже упоминалось.
si locate help