Source Control Scenario Frame

From Guidance Share
Jump to navigationJump to search

Scenarios Frame – Source Control

Categories

  • Accessing Version Control
  • Administration
  • Branch / Label / Merge
  • Check-ins and Check-in Policies
  • Checkout, Get, and Lock
  • Dependencies
  • Distributed / Remote Development
  • Migration
  • Project / Workspace Management
  • Shelving

Accessing Version Control

  • Developer works offline, syncs changes when back online
  • Developer automates a common version control task
  • A developer uses Team Foundation Version Control from a MSSCCI compatible client
  • A developer uses Team Foundation Version Control using third-party integration
  • A developer creates his own integration solution to access Team Foundation Version Control
  • Developer uses Team Foundation Power Tools
  • Developer uses the version control command line interface

Administration

  • Administrator removes a developer from the project
  • Administrator adds a developer to the project
  • Administrator gives a developer access to a portion of the source tree
  • Administrator modifies source control permissions on branches
  • Administrator moves the source tree to another server

Branch / Label / Merge

  • Developer applies a label to a set of files and folders
  • Development team creates a branch to support a release
  • Development team uses a branch to maintain a release
  • Development team creates a branch to support isolated feature development
  • Development team creates a branch to isolate external dependencies
  • Development team retires an old release
  • Developer performs a forward integration merge from parent branch to child branch
  • Developer performs a reverse integration merge from child branch to parent branch
  • Developer executes a merge across branches
  • Developer resolves merge conflicts
  • Developer performs a baseless merge

Check-ins and Check-in Policies

  • Development team uses check-in policies to enforce coding standards prior to check-in
  • Development team uses check-in policies to enforce unit tests at check-in
  • Developer creates a custom check-in policy
  • Developer overrides a check-in policy
  • Development lead is notified of a check-in policy override
  • Developer checks-in a change set
  • Developer needs to undo a previous check-in they made
  • Developer needs to undo another developer’s check-in
  • Developer resolves a conflict at check-in
  • Automatic conflict resolution fails to resolve a check-in
  • Developer avoids conflicts with other developers

Checkout, Get, and Lock

  • Developer gets the latest version of the source tree
  • Developer gets the latest version of a sub-set of the source tree
  • Developer checks-out a file for editing
  • Developer is making major changes to a file and needs to lock out other developers
  • Development team needs to reorganize their source tree and must lock it down until done
  • Development team needs to lockdown before shipping their application

Dependencies

  • Development team manages web service dependencies
  • Development team manages database dependencies
  • Developer uses project references to reference dependencies in the same solution
  • Developer uses file references to reference dependencies in another solution

Distributed / Remote Development

  • Remote developers access TFS over the internet – no proxy
  • Remote office accesses TFS over the internet – using proxy
  • Partner accesses TFS over the internet
  • Untrusted users access TFS over the internet
  • Remote office sets up TFS Version Control Proxy
  • Remote office optimizes TFS Version Control Proxy performance

Migration

  • Administrator migrates source from VSS to TFS
  • Administrator migrates source from ClearCase to TFS
  • Administrator migrates source from PVCS to TFS
  • Administrator migrates source from StarTeam to TFS
  • Administrator migrates source from PerForce to TFS
  • Administrator migrates source from an open source solution (GNU-RCS, CS-RCS, GNU, CVS, SVN) to TFS
  • Administrator creates a custom migration solution with TFS Migration and Synchronization Toolkit to migrate source from a source control system that does not yet have a migration solution
  • Development team wants to move from one TFS server to another

Project / Workspace Management

  • Development team sets up a new project with MSF Agile or MSF CMMI
  • Development team sets up a new project with customized process guidance
  • Development team creates a new project based on existing code
  • Development team chooses one team project vs. multiple team projects
  • Developer defines workspace mappings
  • Developer creates a local workspace to unshelve another developers changes
  • Developer creates a local workspace to look at a bug in isolation
  • Developer creates a local workspace to isolate high risk code changes
  • Development team structures their source control tree to support branching and merging

Shelving

  • Developer shelves a changeset to backup pending changes to focus on higher priority work or to back up at the end of the day
  • Developer shelves a changeset to share pending changes for a buddy test, to hand off work, or to get a code review
  • Developer unshelves their own changeset