I would be publishing new articles on them but a quick simplification before that. Think of git as a logbook that keeps records of your commits. Then GitHub is a place that saves your code and your logbook. Then finally netlify is an infrastructure as a service meaning you just setting up an instance of a new operating system for your code to run. Github can provide your code to netlify or You can directly deploy it to netlify from your local machine.