The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 4,224 other subscribers

Undocumented Plastic “cm status –hiddenchanged” to show hidden changes like the Plastic SCM GUI does by default

Posted by jpluimers on 2021/03/16

[WayBack] Undo changes to a hidden changes item from CLI – General – Plastic SCM Community.

Maybe I should start an undocumented Plastic SCM series just like I did for Delphi. (:

As soon as you have entries in your hidden_changes.conf, then entries matching will show up in your Plastic SCM GUI, but not included in the cm status --all command.

Luckily there is an the --hiddenchanged switch (maybe to keep naming inconsistent with the hidden_changes.conf file) which is only documented in cm changed --help, not on-line).

So my new cm-show-status.bat file contains this line:

cm status --all --hiddenchanged %*

Maybe more switches can be deducted from [WayBack] Plastic SCM version control · The Plastic SCM API: GET PENDING CHANGES IN WORKSPACE:

GET PENDING CHANGES IN WORKSPACE

GET /api/v1/wkspaces/:wkname/changes

Parameters

Name Type Description
types string A comma-separated list detailing the desired change types to display in the response. Available types: addedcheckoutchangedcopiedreplaceddeletedlocaldeletedmovedlocalmovedprivateignoredhiddenchangedcontrolledchangedall

Documentation at time of writing

For my own sanity:

D:\Temp>cm status --help
Show changes in the workspace.

Usage:

    cm status [wk_path] [--changelist=name | --changelists] [--cutignored]
              [--nochanges] [--noheaders] [--nomergesinfo] [--nostatus]
              [--selector] [--short] [--symlink] [--wkconfig]
              [--dirwithchanges] [--xml[=output_file]] [--encoding=name]
              [--wrp] [--fullpaths | --fp] [search_types]


Options:
    wk_path             Path of the workspace where the search will be
                        performed.
    --changelist        Shows changes in the selected changelist.
    --changelists       Shows changes grouped in client changelists.
    --cutignored        Skips the contents of ignored directories.
                        Requires the --ignored search type.
    --nochanges         Only prints the loaded changeset.
    --noheaders         The changes group information will not be printed.
    --nomergesinfo      The merge info for changes is not printed.
    --nostatus          Only prints the modified item search result.
    --selector          Prints the changeset on the repository that should be
                        loaded. The modified item search will be omitted.
    --short             Lists only paths that contains changes.
    --symlink           Applies the operation to the symlink and not to the
                        target.
    --wkconfig          Prints the workspace configuration (current branch,
                        label or changeset where the workspace points to).
    --dirwithchanges    Shows directories that contain changes inside them
                        (added, moved, removed items inside).
    --xml               Prints the output in XML format to the standard output.
                        It is possible to specify an output file.
    --encoding          Used with the --xml option, specifies the encoding to
                        use in the XML output, i.e.: utf-8.
                        See the MSDN documentation at
                        http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
                        to get the table of supported encodings and its format,
                        (at the end of the page, in the "Name" column).
    --wrp               Print workspace root relative paths instead of
                        current directory relative paths.("--wkrootrelativepaths"
                        flag does the same).
    --fullpaths, --fp   Force printing absolute paths, overriding any other path
                        printing setting.

Search types:

    --added             Prints added items.
    --checkout          Prints checkedout items.
    --changed           Prints changed items.
    --copied            Prints copied items.
    --replaced          Prints replaced items.
    --deleted           Prints deleted items.
    --localdeleted      Prints locally deleted items.
    --moved             Prints moved items.
    --localmoved        Prints locally moved items.
    --percentofsimilarity=value     Percent of similarity between two files
                        in order to consider them the same item. Used in the
                        locally moved search. Its default value is 20%.
    --txtsameext        Only those text files that have the same extension will
                        be taken into account by the similarity content matching
                        process during the moved items search. By default any
                        text file will be processed.
    --binanyext         Any binary file will be taken into account by the
                        similarity content matching process during the moved
                        items search. By default only those binary files that
                        have the same extension will be processed.
    --private           Prints non controlled items.
    --ignored           Prints ignored items.
    --hiddenchanged     Prints hidden changed items. (Includes '--changed')
    --controlledchanged This modifier substitutes the following options:
                        '--added' '--checkout' '--copied' '--replaced'
                        '--deleted' '--moved'.
    --all               This modifier substitutes the following parameters:
                        '--controlledchanged' '--changed' '--localdeleted'
                        '--localmoved' '--private'.

Remarks:

    The status command prints the loaded changeset on a workspace and gets
    the changed elements inside the workspace.

    This command can be used to show the pending changes in a workspace; the
    type of changes that can be searched can be modified by using the command
    parameters. The default option is '--controlledchanged'; this option will
    print controlled items that are changed.

    The percent of similarity parameter '--percentofsimilarity' (-p) is used
    by the locally moved search to decide if two elements are the same item.
    The default value is 20% but it can be adjusted.

    It is possible to show workspace changes grouped by client changelists.
    The 'default' changelist includes the changes that are not included in
    other changelists. That being said, the changes the default changelist
    will show depends on the search types flags specified.

    Showing changes grouped by changelists requires showing controlled
    changes too (items with status = 'added', 'checkout', 'copied',
    'replaced', 'deleted' or 'moved'). So, the '--controlledchanged' option
    will be automatically enabled when changelists are shown.

    The default encoding for XML output is utf-8.

    By default, this command will print current directory relative paths,
    unless the '--machinereadable' or '--short' flags are specified. If
    any of them are specified, the command will print absolute paths.

    If '--xml' flag is specified, workspace root relative paths will
    be printed (unless the '--fp' flag is also specified, printing
    absolute paths instead).

Examples:

    cm status
    (The command will print the working changeset and also the items that are
    checkedout, added, copied, replaced, deleted and moved.)

    cm status --all
    (The command will print all item types changed in the workspace but not
    the ignored ones.)

    cm status --added
    (The command will only print the working changeset and the added items
    inside the workspace.)

    cm status c:\workspaceLocation\code\client --added
    (The command will only print the working changeset and the added items
    under the path specified recursively.)

    cm status --changelists --all
    cm status --changelist --all
    (The command will show all the workspace changes grouped by client
    changelists.)

    cm status --changelist=pending_to_review
    (The command will show the changes on the changelist named
    'pending_to_review'.)

    cm status --changelist=default --private
    (The command will show the changes in the 'default' changelist,
    showing private items, along with items with controlled changes, if any.)

    cm status --short --changelist=pending_to_review | cm checkin -
    (The command will check-in the changes in the changelist
    'pending_to_review'.)

    cm status C:\workspaceLocation --xml=output.xml
    (Gets the status information in XML format and using utf-8 in the file
    output.xml.)

    cm status --ignored
    (This command will show all ignored items)
    Output:
    IG src
    IG src/version.c
    IG out/app.exe

    cm status --ignored --cutignored
    (This command will show ignored files whose parent directory is not ignored
    and ignored directories -but not their contents)
    Output:
    IG src
    IG out/app.exe

–jeroen

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

 
%d bloggers like this: