Jump to content

Partially applying a shelf


BDG
 Share

Recommended Posts

Hi there, loving Plastic so far, but there are a couple of operations that seem like they should be easy to accomplish but aren't immediately obvious.

Here's the scenario I currently have, and I'd like to know what the best way to go about fixing.

I made a bunch of changes a couple weeks back on a feature, but had to shelve those changes to work on something else. No problem here, the shelve feature works exactly as it should.

Yesterday one of our team members checked out a level asset, this is a pretty central asset to what we're doing right now, and they forgot to check it back in at the end of the day. It happens, not a big problem.

However, that file is in the changeset I shelved a couple of weeks ago. Now those changes I made to that level asset aren't really important and easy to recreate in the newer version of the level after my coworker checks it back in later today.

BUT, I can't seem to figure out how to selectively apply a subset of the shelve changeset, ie. everything but the level asset.

This, in my opinion, is an absolutely essential feature of any shelving/stashing functionality. Afaik shelving is still a relatively new feature for Plastic so I'm guessing this functionality hasn't been exposed to the core toolset and GUI yet?

I'd like to know if this is on any internal roadmaps, and how to achieve it non-destructively (ie. not breaking locks) in the meantime.

Link to comment
Share on other sites

Hi,

You can go to the shelves view and apply shelve in my workspace, then click on Apply changes and then select in the Pending changes view the changes you want to apply. In this case just leave everything selected but the level asset, after checking in or merging this asset will be the only change in the view and you can simply undo it.

Please let me know if this works for you.

Regards,

Rafael.

Plastic Support Team

Link to comment
Share on other sites

Hi,

I think there's been a miscommunication, the problem is that I cannot apply changes from a shelve if that shelve contains changes to a locked file, the Plastic client literally does not allow me to perform the operation, hence the need for a partial "Apply Changes" operation from the "Cherry pick from changset [...]" view.

The only way I can find to apply a shelf if one of the involved files is locked is either:

  1. get the person who checked it out to check it in, or
  2. to break the lock manually with cm, which undermines our entire workflow and creates more issues

What I'm asking how to do, or requesting if the feature does not exist, is to select a subset of the changeset in the "Cherry pick from ..." view (the view after pressing "apply shelve in my workspace") and "Apply Changes" would apply only those changes, so that I can ignore the changes to the locked file.

I imagine the operation behaving similarly to how I can select a subset of files in the pending changes view to checkin.

Link to comment
Share on other sites

I should add, that even if I take the approach labelled (1) above, in this case I didn't actually want to apply the change to that file, I believe this is a valid use case for the shelve functionality regardless of locks involved.

Link to comment
Share on other sites

Hi,

Sorry for the late response.

I am afraid that it is not possible to ignore the locked file and apply the rest of the changes in the shelve, a shelve works just as any other changeset, the only difference is that is a temporal changeset, so you won't be able to apply a shelve if some of the files are locked.

Maybe you can create a new branch and apply the shelve there, then set the locked file to its current state and merge back the branch, can you try this and let me know if it worked?

Regards,

Rafael.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...