Code Monkey home page Code Monkey logo

9-things's Introduction

9 things I learned about GitHub after becoming a GitHubber

CodeMash 2017 Sponsor Session Talk

Impostor Syndrome has plagued me for 15 years and counting. Having no idea what I was suffering from, I retreated from technical responsibilities until one day there was nothing left to run from. That’s when I told myself, “This ends now.” Becoming a GitHubber has forced me to ask the most basic (and not so basic) questions about using GitHub. In this talk, you’ll walk away with my top 9 lightbulb moments from my first year working at GitHub.

BTW

Check out my daily Git(Hub) Tip of the Day series at https://saraford.net already in progress!

1. Pull Requests are the start of a conversation; not a final submission

  • You can have discussions like you have on Issues called Conversation
  • You can comment on any line and have discussions on that line
    • You can still edit your code submissions to a pull request by updating the branch.

Demo

2. GitHub.com Keyboard Shortcuts

Demo

  • Press '?' and enjoy!

3. How to not check in your email in your commits (Part 1)

  • First, you'll need to tell GitHub to keep your email address private in Settings - Email - Keep my email address private
  • Next, you'll need to tell Git to keep your email address private. There are two ways to go about this: First is via Command Line

Demo

  • Go to Settings - Email - Keep my email address private
  • Go to command line and set the git config --global user.email "[email protected]"

4. GitHub Desktop (How to not check in your email in comments Part 2)

  • GitHub Desktop is your new best friend of the day.
  • it handles 2FA
  • it handles authentication using your favorite shell (cmd, Git Bash, PowerShell) via Git Shell
  • Offers a GUI for github repositories, but you don't have to use it. However, you do want to use Git Shell, which opens your favorite shell.

Demo

  • Launch GitHub Desktop opened to a repo that has at least one branch to show visualization
  • Go to Gear - Options to set your email and your shell preference
  • Launch Git Shell

5. Readmes display at the bottom of a repo, aka you can use the GitHub UI for editing, creating branches, etc.

  • Readmes come from files called Readme, not special UI provided by GitHub.
  • You can click "Add new file", type in readme, commit file by adding to a branch (or directly on master).
  • By adding to a branch you can preview your readme under the repo list of files and/or issue a PR for others to review
  • P.S. A Pull Request is also how you do a merge if you are the only developer on a repo

Demo

  • Click "Add new file", type in readme, commit file by adding to a branch (or directly on master).

6. How to add a license

  • In many open source ecosystems, the metadata about projects is contained in the files themselves.
  • For longest time I was looking for an "Add License" button on GitHub.com

Demo

  • Add new file - type in License and you'll see options on the far right dropdown to use existing or template
  • or you can ignore the dropdown and write whatever you want in the license

7. GitHub Pages

Demo

8. Gists

  • Share code snippets publicly or privately (via link)

Demo

9. Visual Studio plugin

  • We have a GitHub Extension for Visual Studio - https://visualstudio.github.com/
  • We're pulling in (no pun intended) pull requests workflows inside VS (okay small pun intended)

Demo

  • Open a cloned project, e.g. let's go meta and open the VS extension itself, since it is open source https://github.com/editor-tools/VisualStudio
  • Show Pull Requests tab
  • Click a pull request link
  • and there was much rejoicing!

9-things's People

Contributors

saraford avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.