### Navigation

- index
- modules |
- next |
- previous |
- home|
- search|
- documentation »
- IPython developer’s guide »
- Working with IPython source code »
- Git for development »

# Configure git

## Overview

    git config --global user.email you@yourdomain.example.com
    git config --global user.name "Your Name Comes Here"

## In detail

This is to tell git who you are, for labeling any changes you make to the code. The simplest way to do this is from the command line:

    git config --global user.email you@yourdomain.example.com
    git config --global user.name "Your Name Comes Here"

This will write the settings into your git configuration file - a file called `.gitconfig` in your home directory.

## Advanced git configuration

You might well benefit from some aliases to common commands.

For example, you might well want to be able to shorten `git checkout` to `git co`.

The easiest way to do this, is to create a `.gitconfig` file in your home directory, with contents like this:

    [core]
            editor = emacs
    [user]
            email = you@yourdomain.example.com
            name = Your Name Comes Here
    [alias]
            st = status
            stat = status
            co = checkout
    [color]
            diff = auto
            status = true

(of course you’ll need to set your email and name, and may want to set your editor). If you prefer, you can do the same thing from the command line:

    git config --global core.editor emacs
    git config --global user.email you@yourdomain.example.com
    git config --global user.name "Your Name Comes Here"
    git config --global alias.st status
    git config --global alias.stat status
    git config --global alias.co checkout
    git config --global color.diff auto
    git config --global color.status true

These commands will write to your user’s git configuration file `~/.gitconfig`.

To set up on another computer, you can copy your `~/.gitconfig` file, or run the commands above.

## Other configuration recommended by Yarik

In your `~/.gitconfig` file alias section:

    wdiff = diff --color-words

so that `git wdiff` gives a nicely formatted output of the diff.

To enforce summaries when doing merges(`~/.gitconfig` file again):

    [merge]
       summary = true

### Navigation

- index
- modules |
- next |
- previous |
- home|
- search|
- documentation »
- IPython developer’s guide »
- Working with IPython source code »
- Git for development »