1 / 25

Learn what is Version control By cblsolutions.com

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

vivekcbl
Download Presentation

Learn what is Version control By cblsolutions.com

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Version Control And TortoiseSVN Nithin Narendra

  2. Agenda • What is Version Controlling • What is a Version Control • Why we use it • How we use it • Tortoise SVN functionality

  3. What Is Version Controlling • keeping track of a software system consisting of many versions and configurations well organized

  4. 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

  5. Why We Use • It works like ‘Save As’ function • Enables parallel development • Brings collaboration between developers • Maintains history of the whole project • Enables reversibility

  6. 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

  7. 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

  8. 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

  9. Version Management In TortoiseSVN • All code resides in trunk • Code versions are detached in branches • Snapshots for releases are tagged

  10. 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

  11. 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

  12. 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

  13. 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

  14. 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

  15. 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’

  16. 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

  17. 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

  18. Cont.. • Folder with green check mark indicates the folder is in proper sync with the repository and is up to date

  19. 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

  20. Cont.. • Any kind of change occuredto 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

  21. 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

  22. 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

  23. Cont.. • Unless there occurs any errors, a window pops up as shown reflecting the changes applied to the repository

  24. 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

  25. 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

More Related