We're back for 2015!
- Overview
- [The Challenge](#the challenge)
- [Commit to Your Skill Level](#commit to your skill level)
- Resources
- Projects
Tis the holiday season again, where we relax at home, eat loads of good food and spin driedels. This year, let's keep learning all the great stuff learned during the vBrownBag DevOps sessions.
Push yourself to use GitHub everyday throughout the holiday season so that by 2016 you're ready to share your next project. Here's how:
- Schedule time in your calendar for gitting in shape every day for 30 days between December 1st - January 1st
- Choose your skill level: Beginner, Intermediate, or Advanced
- Follow the directions under your skill level!
- Fork this repository to show that you're participating!
That's it! If you get stuck or just want to chat with others, be sure to tweet with the hashtag #vBrownBag
or visit our G+ community page. We'll be out there to help.
If you want more dynamic interaction, join our Slack team! You can get help or collaborate with others.
This year, in addition to Slack and G+, we will be running short #vBrownBag podcasts each week night for the month of December to help ramp up our beginners or dust the rust off for folks with previous exposure to GitHub.
To get access:
- Tweet @joshcoen or @mjbrender your email address and we'll invite you OR jump to http://geekspeak.heroku.com
- Once you get the invite, go to http://geekspeak.slack.com and sign in
- Log in with your email address
- Start collaborating!
You can register for the #vBrownBag podcast at https://attendee.gotowebinar.com/register/4522811764229913858
Recordings, as always, will be availabe on YouTube and iTunes
- Tuesday 12/1 - What is Git/GitHub and why should you use it? With Matthew Brender @mjbrender
- Wednesday 12/2 - Setting up Windows with Jonathan Frappier @jfrappier
- Thursday 12/3 - Setting up OSX with Timmy Carr @timmycarr
- Friday 12/4 - Git Basics - Clone, Add, Commit, & Push
- Monday 12/7 - Branching Repositories - Intro, Creating & Checking out branches
- Tuesday 12/8 - Forking Repositories and Pull Requests
- Wednesday 12/9 - Merge and Merge Conflicts
- Thursday 12/10 - Wait I screwed something up and need to roll back!
- Friday 12/11 - Rebase with Rob Nelson
- Monday 12/14 - The art of the ignore: Using .gitignore with Eric Wright
- Tuesday 12/15 -
- Wednesday 12/16 -
- Thursday 12/17 -
- Friday 12/18 -
- Monday 12/21 -
- Tuesday 12/22 -
- Wednesday 12/23 -
- Monday 12/28
- Tuesday 12/29
- Wednesday 12/30
We all have different level of expertise when it comes to GitHub.
##Beginner You're a beginner if: You're new enough to git that just the act of using it daily will be a lot of learning.
Setup:
- Create a GitHub account
- Setup Git
- Initialize your own new repository with a README
- Clone your repository to your local development system
Your challenge:
- Update the README.md file every day with something you learned that day
- Add a meaningful comment to your commit. Learn the right way to comment your commits.
- Push that commit to your GitHub repository
- Create additional repositories for scripts that you've created to do your job
- Learn how to use
git commit --amend
. - Keep your fork in sync with the original repo.
Helpful hints:
- Remember that the goal of this is to learn how to use GitHub, so focus on git, not other code you'd also like to learn
- Feel free to use the GitHub website, native apps or command line. Watch this vBB on GitHub to help you along
- Markdown is awesomely powerful, so challenge yourself to use some of the more complex syntax. You can learn it all here.
##Intermediate You're at an intermediate level if: You're comfortable with the basics of using git, have lurked around on GitHub but never contributed to a project.
Setup:
- Fork an interesting repository that you want to contribute to
- Clone your repository to your local development system
- Create a new branch to develop in
Your challenge:
- Update the repository's Master branch every day in some way
- On your new branch, work on a meaningful contribution to your fork of the repository
- Add meaningful comments to your commits when you commit on both branches
- Open a Pull Request on the original repository from your new branch by the end of the 12 days of Commitmas!
- Learn how to use
git rebase
.
Helpful hints:
- Remember, documentation is code too (especially when using Markdown)! Find a project you want to support by improving documentation. Fork it and then make your contributions during this challenge.
##Expert You're an expert if: You've managed multiple contributor repositories before, have more than 5 pull request accepted, and want to join in Commitmas to really push yourself.
Setup:
- You've done this a few times.
Your challenge:
- Open a new Pull Request on open source repositories you use every single day for the 30 days of Commitmas! Don't forget to help out your beginner and intermediate level friends!
Helpful hints:
- You really don't need any, but if you complete this challenge, please tell me (@mjbrender) and I'll definitely buy you a beer.
These projects are soliciting pull requests through Commitmas. If you'd like to participate but don't have your own ideas, take a look to see if any of these projects interest you.
-
rnelson0's powercli-modules - PowerShell/PowerCLI modules for vSphere administration.
-
pyvmomi community examples - Python library for vSphere API.
-
Couch to OpenStack - a Vagrant powered OpenStack environment thanks to your friends at vBrownBag.
-
mcowger's Python CloudFoundry - a python module for controlling cloudfoundry v2