ABSTRACT

Whether the free and open source software (FOSS) project is client-oriented or community-oriented, the code base is the central object in the development process. Working with the code base as a member of a development team requires special tools and skills, many of which are not needed when working on a single programming task in isolation. In any collaborative process where a single product is being built by many

hands, the collaborators need to find a way to communicate with each other about their individual activities. They also need shared access to the code base they are constructing. Thus, developer tools can be divided into two broad categories: collaboration tools and code management tools. The former is about strategies for working as a team, while the latter is about strategies for organizing and working with the code base. This chapter describes and illustrates the key tools that FOSS developers

use when collaborating and working with the code base.