Search code examples
plasticscm

Is there any way to clone only particular folder/files in the plastic SCM instead of entire branch?


I want to copy/clone only particular files from repo. I tried many ways using cm cmd line executable of plastic.


Solution

  • cm getfile --help Downloads the content of a given revision.

    Usage:

    cm getfile | cat <revspec> [--file=<output_file>] [--debug]
                     [--symlink] [--raw]
    
    revspec           Object specification. (Use 'cm help objectspec' to learn
                      more about specs.)
    

    Options:

    --file            File to save the output. By default, it is printed on the
                      standard output.
    --debug           When a directory specification is used, the command
                      shows all the items in the directory, its revision id
                      and file system protection.
    --symlink         Applies the operation to the symlink and not to the
                      target.
    --raw             Displays the raw data of the file.
    

    Examples:

    cm cat myfile.txt#br:/main
    (Obtains the last revision in branch 'br:/main' of 'myfile.txt'.)
    
    cm getfile myfile.txt#cs:3 --file=tmp.txt
    (Obtains the changeset 3 of 'myfile.txt' and write it to file 'tmp.txt'.)
    
    cm cat serverpath:/src/foo.c#br:/main/task003@myrepo
    (Obtains the contents of '/src/foo.c' at the last changeset of branch
    '/main/task003' in repository 'myrepo'.)
    
    cm cat revid:1230@rep:myrep@repserver:myserver:8084
    (Obtains the revision with id 1230.)
    
    cm getfile rev:info\ --debug
    (Obtains all revisions in the 'info' directory.)