1 / 21

(Sub)Version Control

(Sub)Version Control. Keep large teams working on the same code Back up your work so you don't lose it all Compare changes to previous versions Revert if you broke everything. Version Control is Important. Approaches to Version Control. Ignore the problem, work on your own.

hollis
Download Presentation

(Sub)Version Control

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. (Sub)Version Control

  2. Keep large teams working on the same code Back up your work so you don't lose it all Compare changes to previous versions Revert if you broke everything Version Control is Important

  3. Approaches to Version Control Ignore the problem, work on your own

  4. Approaches to Version Control Ignore the problem, work on your own Email everything back and forth

  5. Approaches to Version Control Ignore the problem, work on your own Email everything back and forth Use Dropbox/AFS/some outside storage

  6. Approaches to Version Control Ignore the problem, work on your own Email everything back and forth Use Dropbox/AFS/some outside storage Use SVN

  7. Why SVN is Great SVN stores all your code somewhere the whole team can edit and download it.

  8. Why SVN is Great SVN stores all your code somewhere the whole team can edit and download it. Every time someone makes a change, SVN stores that change in case you want to see it later

  9. Why SVN is Great SVN stores all your code somewhere the whole team can edit and download it. Every time someone makes a change, SVN stores that change in case you want to see it later We are at version 1849.

  10. Why SVN is Great SVN stores all your code somewhere the whole team can edit and download it. Every time someone makes a change, SVN stores that change in case you want to see it later We are at version 1849. It even helps you sync your files and see conflicts when two people try to edit the same file at the same time.

  11. Using SVN: Operating Systems Linux/Mac use command line Windows uses a program called TortoiseSVN Same commands, just a graphical interface.

  12. Using SVN: Simple commands SVN checkout: Downloads a copy of the repository to your computer. SVN update: Executed within an SVN folder, downloads only the non-conflicting changes to your computer. SVN commit: Uploads your changes to the repository

  13. TortiseSVN Usage:

  14. Using SVN: Flashy stuff Branching: allows users to commit changes and test them without breaking other parts of the repository. Changes are then merged in.

  15. Using SVN: Flashy stuff Branching: allows users to commit changes and test them without breaking other parts of the repository. Changes are then merged in. Conflicts: SVN warns you when you and another user changed the same file. If it can't gracefully merge, it won't commit or replace anything.

  16. Using SVN: Caveats Local changes vs. committed changes

  17. Using SVN: Caveats Local changes vs. committed changes When you add/delete/move files, you run the risk of moving them on your machine but not in the repository.

  18. Using SVN: Caveats Local changes vs. committed changes When you add/delete/move files, you run the risk of moving them on your machine but not in the repository. Use the svn commands add/delete/move rather than your normal filesystem commands!

  19. Using SVN: Caveats Local changes vs. committed changes When you add/delete/move files, you run the risk of moving them on your machine but not in the repository. Use the svn commands add/delete/move rather than your normal filesystem commands! Local changes are useful, though.

  20. SVN in Lab 2 For lab2, we have a separate SVN repository you can check out and make changes to. Experiment a bit and get comfortable with SVN here. After the labs, you'll be working in the main Colony repository.

  21. Questions?

More Related