I did previously operate in a business where I’d no choice but to make use of PVCS for version control for those projects. I still appreciated how lengthy it required to commit all changes or to look at a task from PVCS. Resumes ended up being brought to my team and I saw some improvement nevertheless it still had some weak points. For instance, a couple are carrying out changes simultaneously along with a change conflict happens. Within this situation, some files may have been up-to-date, while some been declined, which leaves the repository within an unstable condition. Resumes was however utilized in my team for some time until Subversion was introduced. Subversion is most likely among the best free version control systems because it is built to overcome the shortfalls of Resumes. Resumes monitors individual file versions. In Resumes, whenever you commit some changes, each modified file is up-to-date individually. Subversion, by comparison, monitors revisions. A revision is really a representation from the repository structure and contents in a given time. Upgrading the Subversion repository is a little like upgrading a relational database using transactions. Either all your changes are up-to-date within the repository, or they are not if there’s a conflict. Should you hate Resumes, consider Subversion. I’ll describe a step-by-step instruction to setup a Subversion system on the local machine.
1. Install Subversion server * Install Subversion on Ubuntu:
Open a Terminal and execute the next command: $ sudo apt-get install subversion libapache2-svn Or while using Synaptic Package Manager: Visit System -> Administration -> Synaptic Package Manager Type subversion in Quick search and choose subversion checkbox. Click on the Apply button around the plugin and accept all of the default
* Install Subversion on Home windows:
Get Home windows binaries from Choose CollabNet and download CollabNet Subversion Server and Client v1.6.6 (for Home windows) You have to create a merchant account with CollabNet before you download the installer file
2. Establishing a Subversion Repository: You will find 2 different storage systems for Subversion repository: Berkeley DB database and flat filesystem referred to as FSFS. To produce a Subversion repository, you utilize svnadmin create command. Automatically, this can setup an FSFS repository in the specified location.
* $ svnadmin create /home/vietma/svn_repository/dev_repos (Linux)
* C:>svnadmin create D:svn_repositorydev_repos (Home windows)
You should use –fs-type choice to specify a Berkeley DB: $ svnadmin create –fs-type bdb /home/vietma/svn_repository/dev_repos
3. Produce a new Java project You produce a new Java project inside your usual way. Within this example, I personally use Maven 2 You are able to download Maven 2 (apache-maven-2.2.1-bin.zip) from and extract the file in a listing of your decision on Home windows OS. If you are using Ubuntu, you should use the Synaptic Package Manager to set up maven2 much like subversion as referred to in step one above. Switch to a brief folder where one can temporarily produce the project.
* $ compact disc /home/vietma/tmp (Linux)
* $ mvn archetype:create -DgroupId=com.example.myproject -DartifactId=myproject (Linux)
* D:tmp>mvn archetype:create -DgroupId=com.example.myproject -DartifactId=myproject (Home windows)
4. Initial import from the produced project directory into Subversion:
* $ svn import myproject file:///home/vietma/svn_repository/dev_repos/myproject/trunk -m “Initial import of myproject” (Linux)
* D:tmp>svn import myproject file:///d:/svn_repository/dev_repos/myproject/trunk -m “Initial import of myproject” (Home windows)
5. Remove the temporary project myproject from /home/vietma/tmp or D:tmp
6. Browse the clean project from Subversion. You should use TortoiseSVN to look into the source code however i would rather make use of the command line
* $ compact disc /home/vietma/projects (Linux)
* $ svn checkout file:///home/vietma/svn_repository/dev_repos/myproject/trunk myproject (Linux)
* D:projects>svn checkout file:///d:/svn_repository/dev_repos/myproject/trunk myproject (Home windows)
For additional particulars check out