Configuring Your Windows System

1. Install command line tools

You will need to install certain tools that will be used throughout the course.

  1. Install a text editor

    Visual Studio Code can be found here and is available for all platforms, but you are free to use any code editor you choose. Popular choices include Atom and Sublime Text.

  2. Install Git

    Git is used to track the state of your code over time. GitHub has built its platform on Git technology. We will be using both Git and GitHub in this class to distribute code, submit assignments, and offer feedback. Git can be downloaded and installed from this URL.

  3. Configure Git

    Copy and paste the following two commands (separately) into PowerShell. Replace the name and email address values with your own.

    git config --global user.name "YOUR NAME"
    git config --global user.email "YOUR EMAIL ADDRESS"

    (source: GitHub)

    Next, copy and paste one of the following commands into your terminal, based on which text editor you'll be using:

    Visual Studio Code:

    git config --global core.editor "code -w"

    Sublime:

    git config --global core.editor "subl -n -w"

    Atom:

    git config --global core.editor "atom -w"
  4. Install Node

    Refer to the package installer on Node’s website. Select the "Recommended For Most Users" version (labeled "LTS"). Then just follow the set-up instructions.

  5. Configure Node

  6. Copy and paste the following command into PowerShell, then press Enter:

    notepad ~/.bashrc

    The Notepad application opens, displaying a blank document.

    Return to PowerShell, copy and paste the following command into PowerShell, then press Enter:

    npm get prefix

    Select the path value that's returned from this command, then copy it to the Clipboard (ctrl + C) to use below.

    Return to the Notepad application, then within the document you opened above, do the following:

    • Type export PATH="
    • Paste the path you copied above from PowerShell
    • Type /bin:$PATH"

    Save your changes, then close Notepad.

    When you’re done, raise your hand and ask a member of the instructional team to verify that the installation was successful. Then complete the instructions in the section 2. Setting up GitHub below.

2. Set Up GitHub Enterprise

We will be using the GitHub Enterprise service to share some of our code. We will learn about the underlying technology of GitHub known as git in the next lesson.

Note: If you already have an SSH key set up in git (for instance, for a personal or work account on github.com), use the steps in Configuring Git to use Multiple Accounts (Windows) instead of those below.

  1. Log into your account at https://git.generalassemb.ly
  2. Follow these instructions to create a new SSH Key (a special, very secure, key which allows your laptop access to your github account without having to remember your github password)
  3. Add your new SSH Key to GitHub Enterprise following these instructions
  4. Verify your key works by running the following:
    ssh -T git@git.generalassemb.ly

    You should see output similar to:

    Hi <you>! You've successfully authenticated, but GitHub does not provide shell access. Connection to git.generalassemb.ly closed.

Helpful Debugging Tips

Error installing due to permissions

Permissions issues are common when installing programs on the terminal. In order to install command line utilities, you need to be signed into a user account on your computer with administrator-level rights. If you have trouble with this, please ask a member of the instructional team for help.

Google is your friend

Even experienced programmers occasionally need to look up error messages on Google. If you experience an error, it’s likely that someone else has experienced the error, as well. To find the fix, copy and paste the error message into Google, but remove content specific to your computer to ensure the accuracy of your search. You will most likely find a reference to your specific error. StackOverflow is a trustworthy reference.

Common Issues and Fixes: