1. Technology Brief
Perforce Sandbox
Speed and Convenience of Private Local Branching Without the Isolation of a Traditional DVCS
Private Local Branching: Work Locally, Collaborate Globally
Develop on your own private copy of a project while staying informed on how work is progressing
on the central server. Perforce’s new Sandbox technology manages all the communication with the
central server, allowing you to merge changes in either direction at a time that is convenient for
you. Now you have the freedom to experiment without interfering with the more tightly managed
branching model maintained on the central server.
Work Faster, Be More Agile
Branch to your heart’s content without the worry of how your work, or that of others, will a ect
concurrency and performance. Sandbox lets you quickly start on new tasks or switch between tasks
while automatically saving pending changes in the process. With no administrative overhead, and
a shallow learning curve for new users, teams of any size can quickly adopt this new innovation in
scalable agile work ows.
Scalable Versioning for Distributed Teams
No matter where you are located, a slow or non-existent connection to the main Perforce server will
no longer prevent you from working. By o oading some work from the central server, performance
improves for everyone. Your local Sandbox has all the data necessary to let a developer continue
working, with access to all of the powerful features of Perforce. Sandbox only needs to communicate
with the central server periodically to synchronize and merge updates from both locations.
2. Balanced Goals
The administrators and product leads who design the branch model on the central server often
have di erent goals than individual developers. On the central server, security, performance, ease
of collaboration, and e cient release processes take precedence, but developers want the freedom
to create task or experimental branches. With Sandbox, these goals are no longer in con ict. The
developer can branch as much as she wants, while the central server stays optimized for the goals of
the enterprise.
Availability
The Sandbox feature will be available as part of the 2011.1 Beta Release of Perforce. If you are
interested in participating in our Closed Beta of Sandbox, please sign up using the mobile app, or
contact us at support@perforce.com.
Key Features
Sandbox provides a unique combination of local and distributed features tightly integrated with a
strong central server. Key technical features include:
Connection Independent Version Control
Sandbox uses a local Perforce repository to create a remote branch from the central Perforce server.
Users can work with their local repository and access all of Perforce’s powerful features, even if the
connection to the central server is slow (or non-existent). Communication with the central server only
occurs when data must be exchanged.
Local Branching and Work ow
Sandbox lets developers quickly and easily create private local branches. This includes private task or
feature branches can be made quickly and provide additional exibility for developers.
Speed
Sandbox improves performance for the end user in a number of ways. First, most work in the local
repository does not require communication with the central server. Second, Sandbox provides features
like just-in-time branching to make local work as fast as possible. And nally, Sandbox o oads work
from the central server, improving its performance.
Fast Context Switching
Sandbox enables fast switching between branches and tasks. Just-in-time branching facilitates
e cient workspace updates for in-place branching. Automatic shelving ensures that work-in-progress
is saved when switching between branches, making it even easier to start working on new tasks.