Book Image

Getting Started with Eclipse Juno

By : Rodrigo Fraxino Araujo, Vinicius H. S. Durelli, Rafael M. Teixeira
Book Image

Getting Started with Eclipse Juno

By: Rodrigo Fraxino Araujo, Vinicius H. S. Durelli, Rafael M. Teixeira

Overview of this book

<p>Integrated Development Environments (IDEs) such as Eclipse are examples of tools that help developers by automating an assortment of software development-related tasks. By reading this book you will learn how to get Eclipse to automate common development tasks, which will give you a boost of productivity.<br /><br />Getting Started with Eclipse Juno is targeted at any Java programmer interested in taking advantage of the benefits provided by a full-fledged IDE. This book will get the reader up to speed with Eclipse’s powerful features to write, refactor, test, debug, and deploy Java applications.<br /><br />This book covers all you need to know to get up to speed in Eclipse Juno IDE. It is mainly tailored for Java beginners that want to make the jump from their text editors to a powerful IDE. However, seasoned Java developers not familiar with Eclipse will also find the hands-on tutorials in this book useful.</p> <p><br />The book starts off by showing how to perform the most basic activities related to implementing Java applications (creating and organizing Java projects, refactoring, and setting launch configurations), working up to more sophisticated topics as testing, web development, and GUI programming.</p> <p><br />This book covers managing a project using a version control system, testing and debugging an application, the concepts of advanced GUI programming, developing plugins and rich client applications, along with web development.</p>
Table of Contents (17 chapters)
Getting Started with Eclipse Juno
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
4
Version Control Systems
Index

Chapter 4. Version Control Systems

Source code management, or version control, is the practice of managing the revisions of a code with comments so that the code can be retrieved easily. The concept of version control systems (VCS) has been around for a long time. The first implementations were file-oriented, centralized, and without network access capability.

An evolution has come with Concurrent Versioning System (CVS) that was explicitly designed for collaborative development and had a merging mechanism instead of a locking-based one. The latest generation presents a major concept modification, that is, a complete decentralization.

This clearly seems more appropriate, for nowadays network-based systems are likely going to be the most used ones in the near future. A good versioning system should at least offer the following features:

  • The possibility to add, remove, rename, or delete files

  • The possibility to find which files have been altered by which user and when

  • The provision to keep track...