New Fun Blog – Scott Bilas

Take what you want, and leave the rest (just like your salad bar).

Upcoming Perforce Feature: Shelving

with 3 comments

Perforce announced on their blog that they have a new feature in beta testing called “shelve”. Great!

In short, “shelving” is taking a pending changelist and publishing it to the server without checking it into the depot.

As I mentioned in a previous post, this is one of the top features from git that was making me seriously consider checking it out. I started implementing this myself in my p4.exe wrapper, but I never gave it enough priority to get much work done. I’m excited to know that Perforce are adding it themselves. This is the first new feature I’ve seen from them in years that is worth upgrading for!

The things that interest me most about this ability are:

  • Easy trading of in-progress work in a formal, server-supported way that is done out-of-band of the depot, so it cannot break the rest of the team. Good for code reviews, small tests, moving the same pending changes among multiple machines/clients, etc.
  • Easy, incremental backup of works in progress. This is hot.
  • Easy ability to temporarily put aside a local change in order to work on something else that collides (typically as an emergency). This eliminates the main reason I needed to use several P4 clients on the same machine.

I hope Crucible will have support for this great new feature after it’s released. That would eliminate most of the need for the tool I wrote.

I’m looking forward to seeing this new feature in 2010.

December 22nd, 2009 at 1:37 pm

Posted in p4

3 Responses to 'Upcoming Perforce Feature: Shelving'

Subscribe to comments with RSS or TrackBack to 'Upcoming Perforce Feature: Shelving'.

  1. Have you had a chance to upgrade Perforce and tried shelving with Crucible? I’m hoping to get us upgraded to the latest p4 soon and try it out ourselves. We are also looking at integrating shelving in with our continuous build servers to allow automated testing prior to a submit. Should be fun! :)

    Jeff Thompson

    8 Jan 10 at 8:01 am

  2. I wish! Bungie doesn’t use Perforce so I don’t know when I’ll get a chance to try this out.

    Scott

    10 Jan 10 at 1:48 pm

  3. I have been unable to get this to work with the latest version of Crucible. There is an issue open for Crucible on this as well. You can find it at:

    http://jira.atlassian.com/browse/FE-2355

    Jeff Thompson

    25 Jan 10 at 2:48 pm

Leave a Reply

Note: This post is over 2 years old. Time moves fast on the internet and this article may be total bunk now! You may want to check later in this blog to see if there is any new information relevant to your comment.

Want to paste some code into your comment? Just wrap it in [code] [/code]. Also, please note that off-topic or overly commercial comments will likely be removed at my discretion.

Switch to our mobile site