Skip to main content

SVN

Continue reading this article to know what is SVN and what is SVN terminology and lifecycle. Apache Subversion is named as SVN. SVN is open source tool and it was created by CollabNet Inc. Now, it was overtake by Apache Software Foundation. 

Before continuing with this tutorial, you must have a basic understanding on easy terminologies like programming language, source code, documents, etc. as a result of exploitation SVN to handle all levels of software projects in your organization, it'll be smart if you have got a operating information of software system development and software system testing processes.

SVN Usage Diagram:
Download and installation of SVN:
        Now, get started download required latest version of Collabnet SVN to install. Then, go into that file where that located in your directory and Run/double-click on the file. That will show you the below image as

        Once extracting of main files competes, that will show the next form as like below image to start installation.
        There you just click on "Next" button to move further installation.
        In the above image represents SVN read me notes, your reading that or not it's not a problem just click on "Next" button to move further.
        In the above image represents the which directory to install SVN. By default it's shows 'CSVN' under 'C' directory. If you need to change that browse your custom directory and click "Next" button to install.
        Click "Install" button to install. That will show installation progress bar, that represents how much of installation completed.
        Once installation completed, "Next" button enabled. You can select Next button to get farther. That will open browser and asking to login in this URL: http://localhost:3343/csvn/login/auth
        Once your clicking on username one message box will show you like initial credentials, like username and password.         Once your login by using initial credentials, this is the page to show,
        This will show you to options to maintain repositories.

SVN Terminology:
Repository: Repository is the central place of every control system where developers save their work. Repository not only saves work, it also saves history. Repository accessed over network it acts as a server and version control tool acting as a client.

Trunk: The Trunk is a directory where all the main development happens and is usually checked out by developers.

Tags: The tags directory is used to store named snapshots of the project. 

Branches: Branch operation is used to create another line of development. It is useful when you want your development process to fork off into two different directions.

Working Copy: Working copy is a snapshot of the repository is shared by all the team, but people do not modify directly. Instead each developer checkout working copy. The working copy is private workplace where developer can do their work with in isolated from the rest of the team.

Commit Changes: Commit is a process of storing changes from a private workplace to central server. After commit, changes are made available to all the team.

SVN Life cycle:
Create Repository:  Repository is the central place of every control system where developers save their work. Repository not only saves work, it also saves history. Repository accessed over network it acts as a server and version control tool acting as a client.

Check out: Check out operation is used to create a working copy from repository. Working copy is a private workplace where developers will do changes and later on submit that into repository.

Update: Update operation is used to update working copy. This operation synchronizes working copy with the repository. As any changes has committed by other developers into repository that changes will get reflect into your working copy when you have used update operation.

Perform Changes: After checkout one can do various operations to perform changes. Edit is the most common operation. One has done changes in existing file content. But, immediately these changes do not part of repository they are added to the pending changes-list and become part of repository after commit operation.

Rename operation changes the file/directory name. Move operation is used to move file/directory from one place to other place in repository tree.

Review Changes: When you checkout the working copy or update working copy then your working copy completely synchronized with the repository. But as you do changes to your working copy it becomes newer than the repository. It is very good practice review your changes before committing changes into repository.

Fix Mistakes: Let us suppose I have done changes in my working copy, but now I want to throw away these changes. In this situation revert operation will helpful. 

Resolve Conflicts: Conflicts will occur at the time of merging. Merge operation handles everything that can be done safely.

Commit Changes: Commit operation is used to commit changes from working copy to repository. This operation modifies the repository and other developers can see these changes by updating their working copy.

Comments

Popular posts from this blog

Multithreading in java with example

Multithreading  is one of the most important concept in core java. In this article we will learn what is multithreading? , what is the use of it? and What is the use of Synchronization and when to use it?  with detailed examples. At a time, two or more threads are accessing the same object is called as Multithreading  in Java .  First, we will create two threads for two objects. It is also possible to run two or more threads on a single class object. In this case, there is a possibility to get unreliable results. If the two threads are perform same task, then they need same object to be executed each time. For your better understanding, take an example of any reservations like, railway, movie ticket booking,etc. Let us think only one berth is available in a train and two passengers are asking for that berth. The first person has sent a request to allocate that ticket/berth to him. At the same time, the second person also sent a request to allocate that ...

Git installation for AngularJS 2 in Windows 10

Download Git latest version from https://git-scm.com/downloads or you click on the below link to download directly for windows https://git-scm.com/download/win . Once download completes, click on executable file to start installation process and choose Yes to allow the software installation in windows 10. Click on Next button to continue further installation. Browse the isntallation directory and click on Next button to continue. Select the list of components which you want to be installed and click on Next button to proced further installation. Type the shortcut name for Start menu and click on Next button. Select how you want to use the Git and click on Next button. For Windows no need to change anything, let it be the default one. Choose the Use the OpenSSL library and click on Next button. Select how should Git treat line ending in text files and click on Next button. Select which terminal emulator to use with Git and click on Next button. Configure extr...

JNDI configuration for Tomcat 9 with Oracle

In this article, I am going to place the required source code to get data from the table by using the JNDI configuration. Below are the environment details that I have configured currently. Windows - 7 Oracle - 10g Tomcat - 9 JDK - 8 Eclipse Oxygen Ojdbc6 jar required First, we need to create the Dynamic Web Project. If you don't know how to do <Click Here>. I have faced a lot of issues before getting the output like 405, No driver class to load, etc. I am using JSP & Servlets in the current explanation. Before started writing the application logic, we need to do the below configuration in the installed tomcat directory. Place OJDBC6.jar in the Tomcat LIB directory. Add this Resource under <GlobalNamingResources> in Server.xml file which is present under the conf directory in Tomcat. < Resource name = "jdbc/myoracle" global= "jdbc/myoracle" auth = "Container" type= "javax.sql.DataSource" driverClass...