Sharing code with the Eclipse platform

Source: Internet
Author: User
Tags configuration settings versions

Share source code in a team project

Most of today's applications are developed by a team of many people. Even small projects involving only a few developers need to be tightly controlled for changes to the source code. This is the task of source code management software. Source version control software must support two core features:

Provides a way to reconcile changes to the source code and integrate those changes

History of the work submitted by the team

When team members complete their new work, they share their work by submitting these changes to the repository. Similarly, when they want to get the latest available work results, they can update their local workspaces based on changes in the repository. This means that the project resource pool changes frequently as team members submit new work results. In other words, the resource pool should represent the current state of the project. At any time, team members will be able to update their workspaces based on the repository and make sure they are up to date.

Maintaining history is also important so that you can compare your current work to a previous version, and revert to a previous version if necessary. Coordinate the work of the team so that there is only a unique current project status definition and include work that the team has integrated, which is also necessary for managing versioning. This coordination is likely to be the most elusive goal.

The ideal model is that any member of the team can make changes to any resources that they have permission to access. Because two team members can commit changes to the same resource, conflicts can occur and must be resolved. This model assumes the uniqueness of the conflict. Unfortunately, no source code exists in isolation; it usually contains implicit or explicit dependencies with other resources. The source code refers to artifacts that are described in other source code resources. But the job of source code management software is over, because it does not replace project management. Project managers must perform their duties: to coordinate the work of other members and to be responsible for progress, project phases and release dates. In addition, source code control is not a substitute for communication between developers.

How the Eclipse platform supports code management

The Eclipse platform provides the ability to share code and work within a software project as a team. Eclipse supports a wide range of code management solutions, thanks to its plug-in architecture (although support for CVS is now available). The Eclipse platform architecture is focused on the work space. The workspace maintains everything needed to build and test a software project. It contains objects (source code and resources). It also saves configuration settings for projects, Ides, and Plug-ins. Workspaces are maintained locally on the developer's machine, while teams collaborate through external resource pools, and the code for different developers is pooled in the repository. The resource pool can be accessed via the Internet through the client-server architecture.

The Eclipse platform provides support for team development operations directly from the workspace. This support allows developers to concurrently interact with several separate resource libraries and different versions of code or projects. Resources in the workspace allow the team to support component handling versioning and configuration management issues. Of course, a single workspace can access different types of resource libraries at the same time. The Eclipse platform does not provide its own code management solution; It always relies on external systems. The Eclipse platform provides built-in support for only one (but also most popular) source control system: Concurrent versioning Systems (Concurrent versions System,cvs). Support for Third-party code management applications is described in the section supporting other repositories using Third-party plug-ins.

What is CVS?

CVS was born in 1986 and emerged as a set of shell scripts, but it has now evolved into the most popular source-code versioning solution for software developers. CVS is an open source client/server solution for version management of code that can be used on a variety of platforms, including Linux and Windows nt/2000/xp.

Typically, the primary function of CVS is to record the history of a source file. When a group of developers work on the same project, CVS separates them from each other. Each developer works independently in his or her own directory, and then merges the work results using the CVS repository (sometimes).

Eclipse has a built-in CVS client that is tightly integrated with the Eclipse platform IDE and is implemented as a separate perspective (CVS Repository exploring perspective) for interaction with CVS. The common eclipse settings for CVS, general Eclipse settings for CVS, are located under Window-> Preferences window-> team. After you switch to the CVS Repository exploring perspective, you can use all CVS operations (go to Window-> Open perspective-> Other-> CVS Repository expl Oring menu-See Figure 1 and Figure 2.

Figure 1. Switch to CVS Repository exploring perspective

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.