CVSNT 2.5.03 Installation on Windows 2003 Notice: This Guide Is Written As an Installation Help for CVSNT 2.5.03 and Higher on Windows 2003 Server

Total Page:16

File Type:pdf, Size:1020Kb

CVSNT 2.5.03 Installation on Windows 2003 Notice: This Guide Is Written As an Installation Help for CVSNT 2.5.03 and Higher on Windows 2003 Server Collected by Khaled Al-Sham’aa (www.ar-php.com) CVSNT 2.5.03 Installation on Windows 2003 Notice: This guide is written as an installation help for CVSNT 2.5.03 and higher on Windows 2003 server. Most of the discussion is also valid for installation on Windows XP-Pro (see below for an important setting). NOTE! You cannot use XP-Home for CVSNT! Installation of the CVSNT server File system type: Make sure your system is only using the NTFS file system! Also make sure you are logged on as an administrator of the PC (using an account with administrative priviliges). And most important: Use the local disk on the CVSNT server! IMPORTANT for XP-Pro users: You MUST switch off Simple File Sharing, which is the default for XP (as recommended by Microsoft to make XP somewhat compatible with Win95-98-ME)! You do this by opening a Windows Explorer and then use the menu command Tools/Folder Options. Select the View tab and scroll down to the bottom where you find this item. Uncheck it now! Page 1 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Now for the actual installation and configuration: Get the latest release of CVSNT Download the latest CVSNT installation from http://www.cvsnt.org Create CVS directories Create two directories on the target machine, c:\cvsrepos (for the repository, which will contain modules, which will contain your files) and c:\cvsrepos\cvstemp (for temporary scratch files used by CVSNT internally). If you have a separate disk partition to spare for CVS then use that instead. The important point here is that the disk where the repository is located on is NTFS. Directory security and permissions Give c:\cvsrepos\cvstemp security settings that allows full control for all accounts including SYSTEM. Important: The cvstemp directory must NOT be located in either c:\WINNT\Temp or anywhere in the "C:\Documents and Settings" tree because these locations have imposed restrictions on user access! Notice that on XP-Pro out of the box from Microsoft the permissions cannot be set like this until "Simple File Sharing" is switched off (see above). So you must do this if you use XP-Pro. XP-Home is totally unsuitable for CVSNT! If you have a separate disk partition to spare for CVS then use them instead, e.g. f:\cvsrepo and f:\ cvsrepos\cvstemp. It is okay to use subdirectories for these key locations, example: d:\AppsData\cvsrepo e:\temp\cvstemp Important: Avoid spaces in the path leading to your repository. Give c:\cvstemp security settings that allows full control for all accounts including SYSTEM (remember: SYSTEM is not included in Everyone). Page 2 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Install CVSNT Windows XP and 2003 Note : On some machines the WMI service may cause an access denied error. To prevent this you must stop the WMI service before the install and then restart the service after the install completes. Run the downloaded CVSNT setup file and make sure to change the installation path to c:\programs\cvsnt (I am paranoid about removing any spaces in paths used by cvs!) Start screen: Page 3 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) License agreement: Setup Type (Choose Custom to select install directory): Page 4 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Installation component selection screen: Note: I strongly recommend that you install CVSNT to a path that does NOT contain any embedded spaces. Ready To Install! Page 5 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Install Progress: Installation Done! Page 6 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Reboot You must reboot after installing CVSNT for the first time for all NT/Win2000/XP installations. If you do not restart, you will get a "Repository initialization failed" error when you try to create a repository. Note that it is not necessary to reboot the server if you are merely upgrading CVSNT. This is necessary because services will not see the updated system path until after the system is restarted. Page 7 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Configuring the CVSNT server and repository CVSNT Control Panel configuration Open Control Panel and look for the CVSNT applet (the green fish): Start the applet with this icon: Page 8 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) CVSNT is configured from the CVSNT Control Panel, which can be reached via the shortcut link placed under the Start menu during installation. Now open the CVSNT control panel applet and do the following: Page 9 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Shut down the CVSNT service Check that the CVSNT Service is not running (Start button is enabled). This is the initial screen showing that both services are running: If it is started then stop it. You can leave the Lock Service running. Page 10 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Repository creation The tab will initially look like this: Add repository Now you will add a repository to the server. This is done using the "Add" button. When you click this a dialogue shows up where you will define your repository. Page 11 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Repository folder Click the ellipsis button for Location to bring up the folder browser. Now you can browse to the location you want for your repository and add a new folder here. NOTE: I strongly advice NOT to use paths with embedded spaces for CVS! Name repository Now fill in the description and the name of the repository as well. NOTE: Do NOT accept the suggested name, which is the same as the folder path! Instead only use the bare folder name with a leading / like this: Page 12 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Initializing the repository When you click the OK button there will be a dialog where CVSNT offers to initialize the new repository. When you click Yes then the new folder will be converted to a real repository: First repository added! Now the list of repositories has been populated with the first repository: You can add as many as you like (almost) but please do not fall for the temptation to use one repository for each and every project! There are a lot of possibilities to streamline the development process using CVSNT, but many of these use the virtual modules concept and this is only possible within a single repository. Page 13 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Server Settings Now go on to the Server Settings tab. Here the default settings are all right for now, except the Temporary Directory setting. NOTICE about Domains: You can set the Default domain entry to either the CVSNT server PC name (as in the example above) or the domain name to which the CVSNT server belongs. CVSNT will strip the domain part from all accounts that log on using the default domain before processing. All other logons will be processed using their complete names (DOMAIN\username). The result of this is that all users that "belong" to the domain specified in this box will be logged using only the account name, likewise these usernames will be supplied to the administrative scripts without the domain name. All others will have a domain name added. This must be accounted for in any admin script used. The CVSROOT/users file is one such admin file that needs to be handled with care concerning domain and non-domain entries. Temp dir: Use the ellipsis button to browse for the folder prepared for this purpose above: Page 14 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Compatibility On the next tab (Compatibility Options) there is nothing you need to change for now: Page 15 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Plugins and protocols The Plugins tab define a lot of the extra features of CVSNT including some aspects of the connection protocols. The screen list the available plugins and when you select a line you will be able to configure this plugin by clicking the configure button: Sserver configuration Here is the configuration window for the SSERVER protocol plugin. Please set it like this: Page 16 of 33 Collected by Khaled Al-Sham’aa (www.ar-php.com) Advanced settings The final tab on the Control Panel deals with advanced configuration settings and you need not change anything here. Apply configuration changes Now click the Apply button! This is really important , nothing will happen unless you do this! Note that after you have done this the Apply button is disabled. Start the CVSNT service Go back to the first tab and click the Start button . After a few moments the Stop button will be highlighted. Now CVSNT runs (success!) Restart the server In order for you to be able to use the command line cvs you need to have the path variable set to include the location of the cvs.exe just installed (c:\programs\cvsnt). Since the installer will have put this into the system path variable it will work if you restart the server. You can check this by going to a command window and typing the command: cvs --ver If this results in an error message then you should restart the server PC before continuing.
Recommended publications
  • Version Control 101 Exported from Please Visit the Link for the Latest Version and the Best Typesetting
    Version Control 101 Exported from http://cepsltb4.curent.utk.edu/wiki/efficiency/vcs, please visit the link for the latest version and the best typesetting. Version Control 101 is created in the hope to minimize the regret from lost files or untracked changes. There are two things I regret. I should have learned Python instead of MATLAB, and I should have learned version control earlier. Version control is like a time machine. It allows you to go back in time and find out history files. You might have heard of GitHub and Git and probably how steep the learning curve is. Version control is not just Git. Dropbox can do version control as well, for a limited time. This tutorial will get you started with some version control concepts from Dropbox to Git for your needs. More importantly, some general rules are suggested to minimize the chance of file losses. Contents Version Control 101 .............................................................................................................................. 1 General Rules ................................................................................................................................... 2 Version Control for Files ................................................................................................................... 2 DropBox or Google Drive ............................................................................................................. 2 Version Control on Confluence ...................................................................................................
    [Show full text]
  • Cvs Latest Version Download Cvs Latest Version Download
    cvs latest version download Cvs latest version download. cvs (Concurrent Versions System) command in Linux is used to store the history of a file. Whenever a file gets corrupted or anything goes wrong “cvs” help us to go back to the previous version and restore our file. Syntax: –allow-root=rootdir : Specify repository on the command line. It also specify legal cvsroot directory. See ‘Password authentication server’ in the CVS manual. -d, cvs_root_directory : It uses cvs_root_directory as the directory path name of the repository. It also overrides the $CVSROOT environment variable. -e, editor-command : It uses the editor command specified for entering log information. It also overrides $CVSEDITOR and $EDITOR environment variables. -f : It does not read the. CVS Commands: add : Add a new file/directory to the repository. admin : Administration front-end for RCS. annotate : Shows the last revision where each line was modified. checkout : Checkout sources for editing. commit : Check files into the repository. diff : Show differences between revisions. edit : Get ready to edit a watched file. editors : See who is editing a watched file. export : Export sources from CVS, similar to checkout. history : Show repository access history. import : Import sources into CVS, using vendor branches. init : It create a CVS repository if it doesn’t exist. log : Print out history information for files. rdiff : Create ‘patch’ format diffs between revisions. status : Display status information on checked out files. tag : It adds a symbolic tag to checked out version of files. unedit : Undo anedit command. update : Bring work tree in sync with repository. version : Show current CS version(s).
    [Show full text]
  • Generating Commit Messages from Git Diffs
    Generating Commit Messages from Git Diffs Sven van Hal Mathieu Post Kasper Wendel Delft University of Technology Delft University of Technology Delft University of Technology [email protected] [email protected] [email protected] ABSTRACT be exploited by machine learning. The hypothesis is that methods Commit messages aid developers in their understanding of a con- based on machine learning, given enough training data, are able tinuously evolving codebase. However, developers not always doc- to extract more contextual information and latent factors about ument code changes properly. Automatically generating commit the why of a change. Furthermore, Allamanis et al. [1] state that messages would relieve this burden on developers. source code is “a form of human communication [and] has similar Recently, a number of different works have demonstrated the statistical properties to natural language corpora”. Following the feasibility of using methods from neural machine translation to success of (deep) machine learning in the field of natural language generate commit messages. This work aims to reproduce a promi- processing, neural networks seem promising for automated commit nent research paper in this field, as well as attempt to improve upon message generation as well. their results by proposing a novel preprocessing technique. Jiang et al. [12] have demonstrated that generating commit mes- A reproduction of the reference neural machine translation sages with neural networks is feasible. This work aims to reproduce model was able to achieve slightly better results on the same dataset. the results from [12] on the same and a different dataset. Addition- When applying more rigorous preprocessing, however, the per- ally, efforts are made to improve upon these results by applying a formance dropped significantly.
    [Show full text]
  • Efficient Algorithms for Comparing, Storing, and Sharing
    EFFICIENT ALGORITHMS FOR COMPARING, STORING, AND SHARING LARGE COLLECTIONS OF EVOLUTIONARY TREES A Dissertation by SUZANNE JUDE MATTHEWS Submitted to the Office of Graduate Studies of Texas A&M University in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY May 2012 Major Subject: Computer Science EFFICIENT ALGORITHMS FOR COMPARING, STORING, AND SHARING LARGE COLLECTIONS OF EVOLUTIONARY TREES A Dissertation by SUZANNE JUDE MATTHEWS Submitted to the Office of Graduate Studies of Texas A&M University in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY Approved by: Chair of Committee, Tiffani L. Williams Committee Members, Nancy M. Amato Jennifer L. Welch James B. Woolley Head of Department, Hank W. Walker May 2012 Major Subject: Computer Science iii ABSTRACT Efficient Algorithms for Comparing, Storing, and Sharing Large Collections of Evolutionary Trees. (May 2012) Suzanne Jude Matthews, B.S.; M.S., Rensselaer Polytechnic Institute Chair of Advisory Committee: Dr. Tiffani L. Williams Evolutionary relationships between a group of organisms are commonly summarized in a phylogenetic (or evolutionary) tree. The goal of phylogenetic inference is to infer the best tree structure that represents the relationships between a group of organisms, given a set of observations (e.g. molecular sequences). However, popular heuristics for inferring phylogenies output tens to hundreds of thousands of equally weighted candidate trees. Biologists summarize these trees into a single structure called the consensus tree. The central assumption is that the information discarded has less value than the information retained. But, what if this assumption is not true? In this dissertation, we demonstrate the value of retaining and studying tree collections.
    [Show full text]
  • Bluej Teamwork Repository Configuration
    BlueJ Teamwork Repository Configuration Version 2.0 for BlueJ Version 2.5.0 (and 2.2.x) Davin McCall School of Engineering & IT, Deakin University 1 Introduction This document gives a brief description of how you might set up a version control repository for use with BlueJ’s teamwork features. It is intended mainly as a “quick start” guide and not as a complete reference – for that you should refer to the version control software documentation (i.e. the CVS manual or the Subversion manual) – but it does explain some BlueJ-specific concepts (such as how BlueJ supports the notion of student groups or teams). Setting up a repository usually requires a server to which you have “root” or administrator access. This may mean that you need to ask a Systems Administrator to set up the repository for you. Since BlueJ version 2.5.0, both Subversion and CVS are supported version control systems. BlueJ version 2.2.x supports only CVS. BlueJ versions prior to 2.2.0 did not support teamwork features. Chapters 2 and 3 explain how to set up and test a repository using CVS. Chapter 4 then covers the equivalent steps for using Subversion. 2 Setting up a simple single user CVS repository for testing the BlueJ teamwork features 2.1 Setting up the repository server On Unix / Linux / MacOS X: You must have the CVS software installed on the machine you intend to use as a server. There is a good chance that it is already installed, but if not, your vendor or distribution provider will almost certainly provide packages that can be installed.
    [Show full text]
  • Version Control – Agile Workflow with Git/Github
    Version Control – Agile Workflow with Git/GitHub 19/20 November 2019 | Guido Trensch (JSC, SimLab Neuroscience) Content Motivation Version Control Systems (VCS) Understanding Git GitHub (Agile Workflow) References Forschungszentrum Jülich, JSC:SimLab Neuroscience 2 Content Motivation Version Control Systems (VCS) Understanding Git GitHub (Agile Workflow) References Forschungszentrum Jülich, JSC:SimLab Neuroscience 3 Motivation • Version control is one aspect of configuration management (CM). The main CM processes are concerned with: • System building • Preparing software for releases and keeping track of system versions. • Change management • Keeping track of requests for changes, working out the costs and impact. • Release management • Preparing software for releases and keeping track of system versions. • Version control • Keep track of different versions of software components and allow independent development. [Ian Sommerville,“Software Engineering”] Forschungszentrum Jülich, JSC:SimLab Neuroscience 4 Motivation • Keep track of different versions of software components • Identify, store, organize and control revisions and access to it • Essential for the organization of multi-developer projects is independent development • Ensure that changes made by different developers do not interfere with each other • Provide strategies to solve conflicts CONFLICT Alice Bob Forschungszentrum Jülich, JSC:SimLab Neuroscience 5 Content Motivation Version Control Systems (VCS) Understanding Git GitHub (Agile Workflow) References Forschungszentrum Jülich,
    [Show full text]
  • Colors in Bitbucket Pull Request
    Colors In Bitbucket Pull Request Ligulate Bay blueprints his hays craving gloomily. Drearier and anaglyphic Nero license almost windingly, though Constantinos divulgating his complaints limits. Anglophilic and compartmentalized Lamar exemplified her clippings eternalised plainly or caping valorously, is Kristopher geoidal? Specifically I needed to axe at route eager to pull them a tenant ID required to hustle up. The Blue Ocean UI has a navigation bar possess the toll of its interface, Azure Repos searches the designated folders in reading order confirm, but raise some differences. Additionally for GitHub pull requests this tooltip will show assignees labels reviewers and build status. While false disables it a pull. Be objective to smell a stride, and other cases can have? Configuring project version control settings. When pulling or. This pull list is being automatically deployed with Vercel. Best practice rules to bitbucket pull harness review coverage is a vulnerability. By bitbucket request in many files in revision list. Generally speaking I rebase at lest once for every pull request I slide on GitHub It today become wildly. Disconnected from pull request commits, color coding process a remote operations. The color tags option requires all tags support. Give teams bitbucket icon now displays files from the pull request sidebar, colors in bitbucket pull request, we consider including a repo authentication failures and. Is their question about Bitbucket Cloud? Bitbucket open pull requests Bitbucket open pull requests badge bitbucketpr-rawuserrepo Bitbucket Server open pull requests Bitbucket Server open pull. Wait awhile the browser to finish rendering before scrolling. Adds syntax highlight for pull requests Double click fabric a broad to deny all occurrences.
    [Show full text]
  • Create a Pull Request in Bitbucket
    Create A Pull Request In Bitbucket Waverley is unprofitably bombastic after longsome Joshuah swings his bentwood bounteously. Despiteous Hartwell fathomsbroaches forcibly. his advancements institutionalized growlingly. Barmiest Heywood scandalize some dulocracy after tacit Peyter From an effect is your own pull remote repo bitbucket create the event handler, the bitbucket opens the destination branch for a request, if i am facing is Let your pet see their branches, commit messages, and pull requests in context with their Jira issues. You listen also should the Commits tab at the top gave a skill request please see which commits are included, which provide helpful for reviewing big pull requests. Keep every team account to scramble with things, like tablet that pull then got approved, when the build finished, and negotiate more. Learn the basics of submitting a on request, merging, and more. Now we made ready just send me pull time from our seven branch. Awesome bitbucket cloud servers are some nifty solutions when pull request a pull. However, that story ids will show in the grasp on all specified stories. Workzone can move the trust request automatically when appropriate or a percentage of reviewers have approved andor on successful build results. To cost up the webhook and other integration parameters, you need two set although some options in Collaborator and in Bitbucket. Go ahead but add a quote into your choosing. If you delete your fork do you make a saw, the receiver can still decline your request ask the repository to pull back is gone. Many teams use Jira as the final source to truth of project management.
    [Show full text]
  • Change Management
    Enterprise Architect User Guide Series Change Management Managing change in a model? Sparx Systems Enterprise Architect has many tools to maintain data, such as Version Control, milestone Baselines, change Auditing, Project Transfer for backups, Validation, Integrity Checking and role-based User Security. Author: Sparx Systems Date: 16/01/2019 Version: 1.0 CREATED WITH Table of Contents Change Management 4 Version Control 5 Introduction 6 Version Control Usage 8 Version Control of Model Data 9 Version Control and Reference Data 10 Version Controlling Packages 11 Applying Version Control in a Team Environment 12 Version Control Nested Packages 14 Add Connectors To Locked Elements 15 Project Browser Indicators 16 Offline Version Control 17 Version Control Branching 19 Version Control Product Setup 20 System Requirements 22 Create a Subversion Environment 24 Create a new Repository Sub-tree 26 Create a Local Working Copy 27 Verify the SVN Workspace 28 Subversion Under Wine-Crossover 29 Preparing a Subversion Environment Under Wine 30 TortoiseSVN 32 Create a TFS Environment 33 TFS Workspaces 35 TFS Exclusive Check Outs 37 Verify the TFS Workspace 38 Create a CVS Environment 39 Prepare a CVS Local Workspace 41 Verify the CVS Workspace 42 TortoiseCVS 43 Create an SCC Environment 44 Upgrade at Enterprise Architect Version 4.5, Under SCC Version Control 46 Version Control Set Up 47 Re-use an Existing Configuration 48 Version Control Settings 49 SCC Settings 51 CVS Settings 53 SVN Settings 55 TFS Settings 57 Use Version Control 59 Configure Controlled
    [Show full text]
  • INF5750/9750 - Lecture 1 (Part III) Problem Area
    Revision control INF5750/9750 - Lecture 1 (Part III) Problem area ● Software projects with multiple developers need to coordinate and synchronize the source code Approaches to version control ● Work on same computer and take turns coding ○ Nah... ● Send files by e-mail or put them online ○ Lots of manual work ● Put files on a shared disk ○ Files get overwritten or deleted and work is lost, lots of direct coordination ● In short: Error prone and inefficient The preferred solution ● Use a revision control system. RCS - software that allows for multiple developers to work on the same codebase in a coordinated fashion ● History of Revision Control Systems: ○ File versioning tools, e.g. SCCS, RCS ○ Central Style - tree versioning tools. e.g. CVS ○ Central Style 2 - tree versioning tools e.g. SVN ○ Distributed style - tree versioning tools e.g. Bazaar ● Modern DVCS include Git, Mercurial, Bazaar Which system in this course? ● In this course we will be using GIT as the version control system ● We will use the UIO git system, but you can also make git accounts on github.com or bitbucket for your own projects ● DHIS2 uses a different system: Launchpad/Bazaar How it works Working tree: Local copy of the source code Repository: residing on the Central storage of developer’s the source code at computer (a client) a server synchronize synchronize Commit Commit locally Centralized De-centralized The repository Central ● Remembers every change ever written to it (called commits) ● You can have a central or local repository. ○ Central = big server in
    [Show full text]
  • Opinnäytetyö Ohjeet
    Lappeenrannan–Lahden teknillinen yliopisto LUT School of Engineering Science Tietotekniikan koulutusohjelma Kandidaatintyö Mikko Mustonen PARHAITEN OPETUSKÄYTTÖÖN SOVELTUVAN VERSIONHALLINTAJÄRJESTELMÄN LÖYTÄMINEN Työn tarkastaja: Tutkijaopettaja Uolevi Nikula Työn ohjaaja: Tutkijaopettaja Uolevi Nikula TIIVISTELMÄ LUT-yliopisto School of Engineering Science Tietotekniikan koulutusohjelma Mikko Mustonen Parhaiten opetuskäyttöön soveltuvan versionhallintajärjestelmän löytäminen Kandidaatintyö 2019 31 sivua, 8 kuvaa, 2 taulukkoa Työn tarkastajat: Tutkijaopettaja Uolevi Nikula Hakusanat: versionhallinta, versionhallintajärjestelmä, Git, GitLab, SVN, Subversion, oppimateriaali Keywords: version control, version control system, Git, GitLab, SVN, Subversion, learning material LUT-yliopistossa on tietotekniikan opetuksessa käytetty Apache Subversionia versionhallintaan. Subversionin käyttö kuitenkin johtaa ylimääräisiin ylläpitotoimiin LUTin tietohallinnolle. Lisäksi Subversionin julkaisun jälkeen on tullut uusia versionhallintajärjestelmiä ja tässä työssä tutkitaankin, olisiko Subversion syytä vaihtaa johonkin toiseen versionhallintajärjestelmään opetuskäytössä. Työn tavoitteena on löytää opetuskäyttöön parhaiten soveltuva versionhallintajärjestelmä ja tuottaa sille opetusmateriaalia. Työssä havaittiin, että Git on suosituin versionhallintajärjestelmä ja se on myös suhteellisen helppo käyttää. Lisäksi GitLab on tutkimuksen mukaan Suomen yliopistoissa käytetyin ja ominaisuuksiltaan ja hinnaltaan sopivin Gitin web-käyttöliittymä. Näille tehtiin
    [Show full text]
  • This Book Doesn't Tell You How to Write Faster Code, Or How to Write Code with Fewer Memory Leaks, Or Even How to Debug Code at All
    Practical Development Environments By Matthew B. Doar ............................................... Publisher: O'Reilly Pub Date: September 2005 ISBN: 0-596-00796-5 Pages: 328 Table of Contents | Index This book doesn't tell you how to write faster code, or how to write code with fewer memory leaks, or even how to debug code at all. What it does tell you is how to build your product in better ways, how to keep track of the code that you write, and how to track the bugs in your code. Plus some more things you'll wish you had known before starting a project. Practical Development Environments is a guide, a collection of advice about real development environments for small to medium-sized projects and groups. Each of the chapters considers a different kind of tool - tools for tracking versions of files, build tools, testing tools, bug-tracking tools, tools for creating documentation, and tools for creating packaged releases. Each chapter discusses what you should look for in that kind of tool and what to avoid, and also describes some good ideas, bad ideas, and annoying experiences for each area. Specific instances of each type of tool are described in enough detail so that you can decide which ones you want to investigate further. Developers want to write code, not maintain makefiles. Writers want to write content instead of manage templates. IT provides machines, but doesn't have time to maintain all the different tools. Managers want the product to move smoothly from development to release, and are interested in tools to help this happen more often.
    [Show full text]