P4 Blog

  • November 21, 2014

    This is part 2 of a 6-part series on Git commands.

    Some of the Git command syntax can be described (charitably) as baroque, and it’s unsurprisingly one of the roadblocks that can slow down newbies. Thankfully, Git provides an under-utilized facility to address this known as aliases. A Git alias is not dissimilar from a Bash (or other shell) alias, in that it defines a piece of text as a key that Git will recognize and expand into something else, optionally including arguments in the process.

    Posted In:
  • November 19, 2014

    working well together perforce

    This year marks the 10 year anniversary of Guerrilla Games moving all code and assets into Perforce. Back then, a project was done by 35 developers and it had about 200 GB of data in the depot. 10 years on, our last project was produced by 350 people and has a head revision that’s just shy of 2 TB. We’ve learned a lot along the way in terms of dealing with the increase in data and team sizes, as well as general complexity.

  • November 18, 2014

    version control migration

    As a relatively new Perforce employee, I’m still in the process of migrating all my old code from other tools. So this is part one of a little blog series covering the various tools in the chain I’ll be using to ultimately get all of my code into the Perforce Versioning Engine.

    Recently, I needed code from projects still in Subversion, and integrating them with the rest of my code (the majority of which is in Mercurial) seemed like a good first step. It also provided an opportunity to evaluate how well Mercurial handles imports from Subversion.

    Posted In:
  • November 14, 2014

    MERGE 2014 Laurette Cisneros

    This is part of a blog series designed to explore the stories of our Women in Tech at Perforce. It's been fun and inspiring talking to each one of these women. As they share where they've been and how they came to where they are now, it is my hope that others will be encouraged and inspired too.

    Laurette Cisneros is one of our Perforce veterans. She's familiar with many departments here, ranging from Tech Support to Training to Build & Release. She is a supporter of Girls Inc. and facilitates office participation in Operation Letters to Santa every year.

    Posted In:
  • November 13, 2014


    This is part 1 of a 6-part series on Git commands.

    The development of intellectual property typically features processes that generate “artifacts”, meaning files important for development that shouldn’t themselves be versioned. In software, for example, this can include precompiled headers, object code, library files, etc. Like many version control systems, Git has an “ignore file” feature. That is, if a file named .gitignore is found in the local folder, its contents will be used to determine which files/folders to ignore when executing Git commands.

    Posted In:
  • November 12, 2014

    Jeppessen MERGE 2014

    At MERGE 2014, Daniel Anolik, a solutions architect of airborne navigation systems at Jeppesen, a Boeing Company, explained how Jeppesen built their own versioned cloud storage system using the Perforce Versioning Engine. This system powers the global distribution of navigation data to most of the world’s pilots. Jeppesen realized early on that hand-rolling their own solution would essentially be re-inventing the Content Management System wheel, yet their survey of existing services proved lacking. It turns out that today’s giant hard-drive-in-the-sky services do a good job of preserving arbitrary amounts of data safely and (sometimes) securely, but none of them can meet all of Jeppesen's requirements out of the box.

    Posted In: