The Tools of Open Source: - PowerPoint PPT Presentation

1 / 28
About This Presentation
Title:

The Tools of Open Source:

Description:

The Tools of Open Source: What you need to know to participate Ray Kimsey ADEC / NC State University Ron L. Roeber University of Nebraska - Lincoln – PowerPoint PPT presentation

Number of Views:115
Avg rating:3.0/5.0
Slides: 29
Provided by: RayKi8
Category:
Tags: bugzilla | open | source | tools

less

Transcript and Presenter's Notes

Title: The Tools of Open Source:


1
The Tools of Open Source
  • What you need to know to participate
  • Ray Kimsey
  • ADEC / NC State University
  • Ron L. Roeber
  • University of Nebraska - Lincoln

2
Successful Open Source Projects
  • Linux
  • Apache Projects
  • HTTP
  • Perl
  • PHP
  • Sendmail

3
Characteristics of successful projects
  • 1. Good programmers working on a project on which
    they want to work.

4
Characteristics of successful projects
  • 2. Communication coordination of effort
  • Generally no F2F meetings
  • Rely on technology for communications - Email is
    LCD a lot of times

5
Characteristics of successful projects
  • 3. Version management
  • Small number of core programmers
  • Large number of contributors
  • Patches
  • Features
  • Concurrent Versions System (CVS)

6
Characteristics of successful projects
  • 4. Growth ? Project management
  • Bug tracking resolution
  • Task management

7
Characteristics of successful projects
  • 5. Up-to-date web page
  • Explains what the software does
  • Provides latest project information
  • Details the licensing agreement
  • Acknowledges any special system requirements

8
CVSVersion Control Distributed Application
Development
9
What is CVS?
  • CVS stands for "Concurrent Versions System"
  • CVS records a complete history of a project
  • Centralized vs. Decentralized development
  • Team and distributed development

10
CVS Overview
  • CVS is a software development repositorty that
    facilitates the distributed development of code
    (Python, Perl, PHP, HTML)
  • CVS allows for versioning software and websites
  • CVS works best with text files but does "handle"
    graphics and other binary files

11
CVS Software
  • A CVS repository resides on a server. CVS
    commands are issued "on the server".
  • CVS is not a protocol or daemon. It is "easy" to
    set up and get running on a server.
  • Developers interact (usually) with the CVS tree
    via locally running software
  • WinCVS
  • MacCVS
  • Pharmacy or tkCVS
  • Built-in to many tools (Emacs, Quanta)

12
CVS Concept
  • Common Development Traits
  • Build Software, make it live
  • Give other people access to code
  • Developer/Designer at the center of activities
  • CVS Development
  • Repository is at the center of activity
  • Developers, designers, studentseven the live web
    site checks out its own copy.

13
How CVS works in English
  • Create an application
  • When ready for viewing or sharing, place it in
    repository
  • Login to the server
  • Checkout a working copy
  • Make changes to your copy. . .

14
How CVS works in English
  • See what others have done
  • Resolve conflicts
  • Commit the changes to the repository

15
Using CVS
  • CVS client software allows users machines to
    interact with the CVS repository by issuing the
    appropriate commands and sub-commands.
  • WinCVS
  • MacCVS
  • Pharmacy
  • tkCVS
  • Built in to Emacs/Xemacs, Quanta Gold, others

16
CVS Sub-Commands
  • import - create a repository entry
  • checkout - get a copy of the files from the
    repository
  • update - Update all changes others have made and
    refresh my working copy accordingly. Nothing
    changes in the repository
  • commit - Add your changes to the CVS repository

17
CVS Directory Files
CVS directory contain instructions for building
any previous version of the project
  • CVSROOT
  • --oursite
  • --index.html,v
  • --graphics
  • --clover.png,v

18
Time Travel
  • History files contain all the information
    required to construct the present version of each
    file.
  • Any previous version can be constructed
  • versions 1.1 or as of May 3, 2002 can be
    resurrected

19
Handling Binary Files
  • Line Feed Format Repository vs. Client
  • Keyword Substitution
  • Wrappers
  • cvs admin -kb

20
Web Access
  • Look at CVS tree in living color!
  • Browsing of a CVS repository
  • ViewCVS
  • http//viewcvs.sourceforge.net/
  • CVSweb
  • http//people.freebsd.org/fenner/cvsweb/

21
Configuration Files
  • modules - definitions of your names for
    sites/projects
  • cvswrappers - set hook for transforming files on
    the way in or out of CVS (binaries)
  • commitinfo - checks to see if a commit is allowed
    based on policies
  • verifymsg - evaluates log message

22
Configuration Files
  • editinfo - program used to edit log message
    (NIX)
  • loginfo - calls programs to run when commit is
    complete
  • cvsignore - ignore these files of mine (.BAK,
    .exe, .old, .ron)

23
Automations
  • e-mail others
  • update sites
  • check for formatting

24
What CVS is not
  • A substitute for management
  • A substitute for communication
  • Is not an automated testing program
  • Does not have a built-in process model
  • Does not have change control

25
Limitations
  • Best if you have an investment in nix
    environments
  • Designed for programmers
  • Concepts are hard to grasp
  • Alien concept to designers

26
Helper Applications
  • LXR Linux Cross Referencing Tool
    http//lxr.linux.no/
  • Bonsai Query contents of CVS archive-tree
    control http//www.mozilla.org/bonsai.html
  • TinderBox prevent things from going up in
    flames for large number of developers
    http//www.mozilla.org/tinderbox.html
  • Bugzilla bug reporting and tracking
    http//bugzilla.mozilla.org/

27
Alternatives
  • DAV - (Distributed Authoring and Versioning)
    http//www.webdav.org
  • arch - http//www.regexps.com/arch.html
  • Perforce http//www.perforce.com/

28
Demonstration
  • SourceForge http//www.sf.net
  • Bioinformatics.Org http//bioinformatics.org
  • ADEC http//savannah.ces.ncsu.edu
Write a Comment
User Comments (0)
About PowerShow.com