informal intro.to version control systems
TRANSCRIPT
![Page 1: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/1.jpg)
Version Control Systems
Effective Collaboration for Software Developers
By : Muhammad Yaseen
![Page 2: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/2.jpg)
Motivation
Scott Hanselman(www.hanselman.com)
“There are a finite number of keystrokes left in your hands
before you die”
![Page 3: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/3.jpg)
Agenda
• What is “Version”
• The “Pain”
• The “Aspirin” – a VCS
• What’s in the box ?
• Ok..! But how do I use it ?
• Conclusion
![Page 4: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/4.jpg)
What is “Version” ?
“Difference of contents of a file at two different times”
Different content, Different version
![Page 5: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/5.jpg)
The “Pain”• No way of knowing which lines of code have changed
since last hour ?
• Who changed the code and why ?
• How do I get the old code back ? Delete all the newly added lines manually ?
![Page 6: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/6.jpg)
…and a bit more “Pain”
• The inconvenience of sending files through Emails, Dropbox, blah blah blah…
• Want to add an experimental feature?
Code base at risk!
• No issue tracking; “Yaar masla to tha kahiN… par yaadni arha!”
![Page 7: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/7.jpg)
The “Aspirin”
Q: What is a VCS?A: Simply, a system that solves above problems and more.
Q: Ok, I need VCS. But ermm… Which one?A: GitHub FTW!
Q: Now what is GitHub?A: VCS platform based on Git, excellent for
social coding.
Q: Umm... What is “Git”? OTLA: Glad you asked! Git is the best VCS. It has a
CLI, and was created by Linus Torvalds . I am just that awesome
![Page 8: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/8.jpg)
“Read instructions before use”
• How it works ?
• “Ray-pozi-tory”?Repository = Your Files
+ Project Version History+ Git Data
![Page 9: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/9.jpg)
How does it help me ?
• See exactly “what” was changed and “where”.
![Page 10: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/10.jpg)
How does it help me?
• Know who changed what, and why ?
• Revert to older code base? Easy!
Just ‘Pull in’ the older commit! One click!Tight Integration with IDEs. (not Turbo C of course)
![Page 11: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/11.jpg)
How does it help me?
• “One Click to Update them all!” no need sending files
• Want to add a feature? Use branching.
• Code is separate until you merge!
![Page 12: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/12.jpg)
How does it help me?• Fantastic Issue tracking
• Comments attached to code lines
![Page 13: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/13.jpg)
How does it help me?
• Comment on issues
![Page 14: Informal intro.to Version Control Systems](https://reader034.vdocument.in/reader034/viewer/2022042723/5875ce6f1a28ab8f438b4c6b/html5/thumbnails/14.jpg)
Conclusion• VCS is a tool; use it wisely
• Get a hang of it, it’s great!
• Happy Coding and Committing
Thank You!