Jump to content

manu

Administrators
  • Posts

    4,599
  • Joined

  • Last visited

  • Days Won

    130

Posts posted by manu

  1. Hi @DaSHTech!

    That's an idea that has been flying around a dew times in the past.

    We initially discarded it because the diff view takes a lot of space, making the view very messy.

    On 2/26/2022 at 7:26 PM, DaSHTech said:

    That way, you could click through the branch explorer and nearly instantly see the files that were updated in that change. 

    Are you referring to only the list of changed files but not the diff op, or also the diff op?

  2. Hi Marco, the only option right now is the one Pablo mentioned up there:

    On 11/22/2019 at 10:34 AM, psantosl said:

    There's a workaround you can use, but it is not trivial: it involves cloning the full repo locally, trimming the data, pushing the new repo, and then deleting the old one.

    I'm sorry I can't offer something better.

    "Trimming the data" repository consists in running the "cm archive" repository to preserve the history but remove the data. So the steps would be:

    1. You identify the repository is very big.

    2. Pull the cloud repository to a local repository.

    3. Create a new workspace to work with the new pulled local repo, you don't need to update the workspace, just create a new one empty. Open a command line tool to the new workspace path and run the following command to remove all the files greater than 300MB that are not the HEAD revision:

    cm find "revs where size > 30000000 and parent!=-1" |  cm archive -c="volume00" --file="volume00" -

    You can obviously add a grep command in between the find and archive commands to grep certain file extensions or certain directories only.

    4. Push the local repository to a new cloud repository

    5. Delete the old-big-repository.

    6. Start using the new cloud repo until it gets big again.

    Finally. have you considered removing the baked files from the repository and bake&use them during the CI step?

    @Marco this is a way to do it, we are aware there should be a better way to do it.

  3. Hi @Marc S I have just tested it and it work fine for me:

    image.png

     

    I changed the display.options.show_parent_to_child_arrows to true at the $WKS_PATH\.plastic\plastic.branchexplorer file.

    1 hour ago, Marc S said:

    Even if it did, it wouldn't be a good solution as the people who need it the most are beginners who are also the least comfortable to edit .cfg files that could break the software.

    You are right. We didn't make it a preference because it's not that common to change the arrow direction.

    • Like 1
  4. Hi @argb32!

    if you want to use the status command in combination with the check-in command you need to use the following parameters:

    d:\wkspaces\adventure_ivan>cm status --short --compact --fullpaths
    d:\wkspaces\adventure_ivan\Assets\Animators\Environment.meta
    d:\wkspaces\adventure_ivan\Assets\Scenes\Market.meta
    d:\wkspaces\adventure_ivan\Assets\Items.meta

    d:\wkspaces\adventure_ivan>cm status --short --compact --fullpaths
    d:\wkspaces\adventure_ivan\Assets\Animators\Environment.meta
    d:\wkspaces\adventure_ivan\Assets\Scenes\Market.meta
    d:\wkspaces\adventure_ivan\Assets\Items.meta

     

  5. Hi @argb32, the problem here is the checkin command is receiving * as the list of file to be checked-in. The * will translate into every single file of the directory. Some of those are not changed and the command fails.

    If you want to let the command to find all the changed files then remove the *, the command will recursively find those for you.

    Let me give you an example:

    d:\wkspaces\adventure_ivan>cm status
    /main@adventure@catacroquer@cloud (cs:128 - head)
    
    Changed
        Status     Size          Last Modified     Path
    
        Changed     204 bytes    31 seconds ago    Assets\Models.meta
        Changed     204 bytes    27 seconds ago    Assets\Scripts\Editor.meta
        Changed    2.68 KB        8 seconds ago    Assets\Scripts\Editor\DataPersistence\DataResetterEditor.cs
    
    
    d:\wkspaces\adventure_ivan>cm ci .\Assets\ --all --applychanged
    The selected items are about to be checked in. Please wait ...
    - Checkin finished 3.08 KB/3.08 KB [##################################] 100 %
    Modified d:\wkspaces\adventure_ivan\Assets\Models.meta
    Modified d:\wkspaces\adventure_ivan\Assets\Scripts\Editor.meta
    Modified d:\wkspaces\adventure_ivan\Assets\Scripts\Editor\DataPersistence\DataResetterEditor.cs
    Created changeset cs:129@br:/main@adventure@catacroquer@cloud (mount:'/')

     

  6. Hi @Bubu101!

    I'm sorry you are facing this problem. I'm wondering if the file path is too large for windows to manage it. Although the common error for that issues is "Filename is too long". Just in case, can you please rename the "MM_VestAccessories_Modern_Military_Gun_Holister_2_Pbr_MetallicAlpha.png.meta" to something shorter? Rename also the ".png" version of the file. Then, try again to checkin.

    Can you please run the "cm support bundle" command from the command line, and attach it? I'll review it for issues.

    Best,
    Manu.

  7. Hi @Audacity

    I recommend you to use the "cm sync" command to import a P4 depot path, and all its history, to a Plastic SCM repository. We call it "p4sync".

    Please find a complete guide of the Perfoce "cm sync" command here: https://plasticscmsupport.zendesk.com/hc/en-us/articles/360023787873-P4-Sync-How-it-works

    Also, check the link below, it explains the main differences between P4 and Plastic, and why Plastic SCM is better and faster.

    https://www.plasticscm.com/alternative-to-perforce

    Best,
    Manu,

     

  8. Hi John!

    First thing is to prevent the "/main" branch modification by those users. You can right click the "/main" branch -> permissions -> Add the EXTERNAL_DEV group and deny the "ci" permission. From that moment they will not be able to touch the /mian branch.

    This example goes a little bit further: https://www.plasticscm.com/documentation/security/plastic-scm-version-control-security-guide#Preventchangesonabranch it presents more operations such us creating new branches which is too much for your case.

    You said you tried to deny all the permissions, but for which object? Can you give me more information?

  9. Hi Dale!

    I believe I answered this one using the Zendesk support, but just to let the community know my answer, here it goes:

    Quote

    Well, the VSS documentation says they can run backups even if the files are in use. I didn't try it before, so I can't share feedback, sorry.

    I can tell you we use Memory-mapped files for the Jet database files, that might help you to get more information about how VSS or Cobian can handle them, here you have dome documentation:
    https://en.wikipedia.org/wiki/Memory-mapped_file
    https://docs.microsoft.com/es-es/dotnet/api/system.io.memorymappedfiles.memorymappedfile?view=netframework-4.8


    Best,
    Manu.

  10. Hi @ScottP!

    The bad news is you can't recover a deleted changeset, it's gone.

    Good news is you have a backup of the changes, so let's do the following:

    • You mentioned you did a change on a file after removing the changeset, so you workspaces has changes, you can undo the change or shelve it to avoid losing its content.
    • Then, once you have the workspace clean, place the files you copied outside the workspace (as a backup) back inside the workspace, open the pending changes view and check the change in.

    Hope it makes sense. If you still have questions don't hesitate to contact us again!

    Best,
    Manu.

     

  11. Quote

    Greetings, Amazing People of Plastic!

    giphy.gif

     

    Quote

     

    I'm currently on a mission to seek the contents of a file, given its change set number, and dump to the stdout. I've come as far as "cm cat" being my weapon of choice, however I've run into difficulty while using it. I'd prefer the solution to be workspace agnostic (which I believe "cm cat" is).

    If you can assist, it would be greatly appreciated!

     

    Try this!

    cm cat serverpath:/Assets/_Complete-Game.meta#cs:2@UG-MK1@localhost:8087 --file=_Complete-Game.meta

    I do recommend you to use "--file" instead of dumping the stdout, you might have issues with the file encoding and strange symbols the bash can't handle and the --file parameter masters it.

  12. Hi!

    Can you share how do you have it configured in the "client.conf" file (by default at "C:\Users\<your_user>\AppData\Local\plastic4")?

    My configuration that works fine is:

    <MergeToolData>
          <FileExtensions>.scene</FileExtensions>
          <Tools>
            <string>"C:\Program Files\Unity\Editor\Data\Tools\UnityYAMLMerge.exe" merge -p "@basefile" "@sourcefile" "@destinationfile" "@output"</string>
          </Tools>
        </MergeToolData>
        <MergeToolData>
          <FileExtensions>.prefab</FileExtensions>
          <Tools>
            <string>"C:\Program Files\Unity\Editor\Data\Tools\UnityYAMLMerge.exe" merge -p "@basefile" "@sourcefile" "@destinationfile" "@output"</string>
          </Tools>
        </MergeToolData>

    Best,
    Manu.

  13. Hi @Michael Buchoff,

    I'm afraid plastic will never delete your private files but you can search them and get rid of them.

    For ignored private files you can do the following:

    @echo off
        setlocal enableextensions disabledelayedexpansion
    
        for /f "delims=" %%a in ('cm status --private --short') do del /q "%%a"

    Yes, a little tricky since the del command can't be piped (AFIK).

    You can combine the ignore and private search by using the two flags at once: --ignored --private

    Hope it helps!

×
×
  • Create New...