Category: Tips & Tricks

  • August 16, 2013

    Image: A moment from the Eclipse project via

    You're probably familiar with the very useful data visualization tools Perforce provides to mine your file history and relationships such as revision graph, time-lapse view, and folder diff. They are all great tools, but I dare say they are too useful and too pragmatic. Some days you need something useless and fun, and in my next couple blog posts I'm going to talk about a couple applications that make version control fun.

    Posted In:
  • August 14, 2013

    swarm bee

    In my last article we covered how you can have any tool in your production pipeline add events to the Swarm activity feed. However sometimes you have the opposite issue; you need to prevent events from showing up in the activity stream. A common use case for filtering out events is to prevent automated processes from flooding the activity stream.

    Swarm has a couple ways to filter events. The easiest by far is to add a user to the 'ignored_users' list in Swarm. There is a configuration parameter in Swarm that allows you to specify users you never want to see activity for. For example, Swarm ships with the Git Fusion user filtered out, but you can add your own users as well. In your Swarm installation find your config.php file in data directory and include the following block:

    Posted In:
  • August 12, 2013

    p4-identifierSince the 2013.2 release adds a new piece of file metadata that may need to be resolved when merging (charset, associated with the undoc server.filecharset setting), this seems like a good time for a quick review of all of the different things that "p4 resolve" might ask you about.

    The function of resolve, at its heart, is to take changes from a depot file and make sure you've accounted for them in your workspace file. Different commands will schedule resolves for different reasons:

  • August 08, 2013

    If you're a heavy user of branches to isolate work intended for different product versions or runtime configurations, you've probably run into this situation. You start working on a branch, make a few changes, merge some upstream work, and then find out you need to move your changes to a different branch. What you'd like to do is merge just the files you've actually modified on your branch, and not bother with the changes that originated in the upstream branch. With the 2013.1 release of Perforce, there's a new way to tackle this problem.

  • August 06, 2013


    If you do a lot of refactoring, and you notice that your life gets a little bit easier after upgrading to 2013.2 but you can't quite put your finger on why, it just might be one of these changes:

    Posted In:
  • August 01, 2013

    The topic of code line management and policy makes for some lively discussions. If you ask 10 engineers their opinion, you'll get at least 12 answers.

    Posted In: