Here is just a short presentation about git and github for beginners.
If you were not on the presentation in LIVE each slide has some description here to help you understand them.
Here you can find just a brief history about the creator of git and the reason [Font: Git official page] (https://git-scm.com/book/en/v2/Getting-Started-A-Short-History-of-Git)
Some important information about why to use RCS, before jump on the GIT journey.
- more info:
- Wiki
- Patterns for Managing Source Code Branches Advanced but very important content
Git is more connected with you them you can imagine. More info
Github was one of the most important tools connecting us with our favorite open source apps. More info
Just to start, here I show the git happy path. The flow thats will always be in our git journey.
- init
- add .
- commit
- push
Life is always harder than books. Here the idea is to show some situations that could bring some complexity in our happy path. Eg: shared code, merges, finding bugs, etc.
Adding more information on the real life topic, here is where our samples start divided in some funny topics.
This topic is responsible to describe how git can help us to spot added bugs in our code. Using features like logs and diffs.
Here, we are not fixing and saving our code. But understanding the best way of doing it. With short and meaningful slots of time between commit and be clear on the commit message.
Be like a good scout and keep cleaner than before. Here, I will share the sad story of my last experience at the university, developing without git. Eg. creating different zip files of the projects with different names followed by numbers representing the version.
One of the most important aspects of versioning your code is keep your journey to commit short. Here I am comparing how hard could be a fix without this approach.
Enjoy how nice it is to work in a distributed environment, but this power brings great reponsibilities. Here we share some features like, branch, pull and merge.
Just a slide showing how could be your night if you and your team avoid following the best practices on versioning.
A bit of how nice (and important) is to work in open source projects.
Using git blame to find who is the best person to help you (in a funny way).
Some approaches to organize your repository. Eg. labeling, branch name pattern, cleaning unnecessary branches and modularization.
To conclude, how versioning can give you time to live your life and enjoy what you really love.