learn what is version control by cblsolutions.com
DESCRIPTION
Version controlling means keeping track of a software system consisting of many versions and configurations well organized. version control is a tool for managing changes to a set of filesEach set of changes is saved as a new revision of the file.Allows users to recover old revisions reliably.Helps manage conflicting changes made by different users - PowerPoint PPT PresentationTRANSCRIPT
Version ControlAnd
TortoiseSVN
NithinNarendra
Agenda What is Version Controlling What is a Version Control Why we use it How we use it Tortoise SVN functionality
What Is Version Controlling
keeping track of a software system consisting of many versions and configurations well organized
What Is A Version Control A tool for managing changes to a set of files Each set of changes is saved as a new revision
of the file Allows users to recover old revisions reliably Helps manage conflicting changes made by
different users Backup system
Why We Use It works like ‘Save As’ function Enables parallel development Brings collaboration between developers Maintains history of the whole project Enables reversibility
How We Use? Every time we make significant changes to
the existing files, we save the ‘revision’ Each revision is associated to a description
and a date It is a good practice to update before we
commit to avoid possible conflicts If a conflict arise, we can compare the files to
resolve it
Tortoise SVN Tortoise SVN is an easy to use version control
software for Windows Based on Apache Subversion Free of cost Can be used with any development tool All the features are directly accessed from the
windows explorer, it acts like a plug-in
The Repository Also referred to as the a “depot” or “root” The repository holds information including
dates, labels, branches, versions, etc., The repository saves the changes between
versions every time but not the whole project there by saves space
Version Management In TortoiseSVN All code resides in trunk Code versions are detached in branches Snapshots for releases are tagged
Trunk? Trunk is the location where the stable code
resides It always have the latest version We never directly make/commit changes to
the trunk
Branch In SVN terms, a branch is just a copy of a
current files Branch is copy of trunk on which the changes
are to be made After making changes to the branch it is
updated back to the trunk
Tags Tags are snapshots/pictures Usually made on version branches Can also be made on trunk Are used to keep track what’s happened b/w
change log
How do we use subversion
We can easily download and install the Tortoise SVN from ‘http://tortoisesvn.net/’
Tortoise SVN provides all the features right in the windows explorer, you need not open any application to use it
After installation when ever you right click, the options of Tortoise SVN are readily available in the panel
To access a particular repository, Admin team will be responsible in granting access to certain developer/team
Cont..
Create an empty folder in certain location where you would like to download project/files from the repository
Right click on the newly created folder, in the menu we see the SVN Checkout option
Cont..
Clicking on SVN Checkout option as shown above pops out a configuration window
We provide the URL of the Repository where the original copy of the project is saved and click ‘ok’
Cont..
When we check out, an authentication window pops up asking username and password(if any) for accessing the repository
Provide them and check the save authentication to avoid repeating this process
Cont..
Files get synced to the folder from the repository
This will be the folder on which you work further
Revision 30 in the image indicates the current project had 29 versions previously
Cont..
Folder with green check mark indicates the folder is in proper sync with the repository and is up to date
Cont..
When we create a new file in the project, it needs to be added to the repository
We can do this by selecting the add option as shown aside
Cont..
Any kind of change occured to the file/folder can be observed with a red warning kind of sign on it
Newly added files are represented with a blue ‘+’ on it before it is checked in
Cont..
After making changes to the project it needs to be committed to reflect the changes in repository
Right click on the folder and select SVN Commit
Cont..
Select the files that need to be updated in the ‘changes made’ column of the window
Message window can take the comments related to the update made
Cont..
Unless there occurs any errors, a window pops up as shown reflecting the changes applied to the repository
Cont..
It is a good practice to update every time before you start working on a copy/commit your changes
This avoids most of the conflicts
Summary Manageable file change history Better collaboration b/w developers Clearer release management More then one version of same code base Easier to rollback in case of emergency