Training prerequisites

Text editor

A text editor you are comfortable with. If you don’t already have a favorite, download VSCode.

If you use OSX, don’t forget to drag the downloaded icon to your Applications directory to correctly install it.

Git!

  • Linux - Your Linux distribution’s package manager can install git.

  • OSX - Homebrew is probably the best way.

  • Windows - Git for Windows includes a full set of tools for using git, including Git BASH, Git GUI, and Windows shell integration (see the official website for Git for Windows to learn more).

Note

What version do you have? Check with git --version. Try to install a version >= v2.23. If you’re using an old version of Ubuntu, use the PPA documented in the Linux install instructions above to get a current version of git.

Basic Git setup

  • Set up your ~/.gitconfig file. Example .gitconfig. You only need the [user] section to get started, but we recommend you copy and adapt this file to your needs.

  • Create a directory for all your git repositories to live in, e.g. ~/Projects.

Bitbucket

  • Create an account at https://bitbucket.org

  • Configure an SSH key for your Bitbucket account.

  • Bitbucket access to NSIDC organization. Ask any developer to add you.

  • Gain membership to the Tech training group in NSIDC Bitbucket organization. Ask any developer to add you.

Be prepared to learn something accessible but hard

Like learning to ride a bike, to swim, to ski, solder, perform long division, drive a car, or to write a TPS report, learning to use git is not trivial, but it’s also broadly accessible. It may take a few sessions, and you may feel challenged, frustration, even despair! But like any of the skills above, it’s normal to feel those things; and it won’t take long at all to reach the moment where you feel massive satisfaction and pride in a new skill which will benefit you for the rest of your career.

Don’t hesitate to ask for help from your colleagues if you feel stuck. Start in the #git Slack channel if you are on the NSIDC Slack.