When I think back to the days before I used Github, I'm not sure how I functioned as a web developer at all.
My name is Ryan Burnette, and I've been a Github member since August 20, 2012. I started tracking the code I was writing as I'd build WordPress sites for my clients and a few interesting things happened.
- I was more aware of the development process from start to finish
- Even though I spent time learning to use Git, I saved time because I could do things like rewind or find a commit and see my own notes about what I wrote
- Team development became possible
- I had a way to gauge my own discipline and time spent on projects
… and there are probably a lot more reasons I can't think of right now.
Learn Git, Seriously
I encourage any developer who is looking to improve their skills set to incorporate Git into their workflow. The first things any developer who is new to Git needs to read includes the first 3 chapters on the Git site. Force yourself to read it if you haven't already done so and don't have a clear understanding of the concepts behind version tracking.
Start With The GUI
Early on, it's okay to start by using the Desktop client which is most commonly used on Windows or Mac. The reason I suggest this is because learning Git on the command line can take some getting used to, especially if you aren't savvy with terminal commands on your OS. Using the GUI app allows you to focus purely on Git without having to remember commands to keep a mental model of your repository status.
Switch To Command Line
After you've gotten used to the GUI app it's time to switch to the command line. Back when I made this transition, this article about command line Git helped me a ton. Also don't be afraid to hit Stack Overflow on a regular basis until you've gotten all the usual stuff committed to memory. Even the sharpest developers have to hit the documentation sometimes though, so don't be afraid (or too lazy) to go to the source.
Always Keep Improving
Just today I learned several new Github tricks from this post about the Github workflow. We should never stop absorbing new material and implementing new processes in our workflows.