m-chrzan.xyz
aboutsummaryrefslogtreecommitdiff
path: root/git.md
blob: 0c512d056610b04705b3aca3349a9013a161929a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# Git tips and tricks

## Setup name and email

    git config --global user.name "Name"
    git config --global user.email "name@place.com"

## Delete remote branch

    git push -d <remote> <branch>

## `git bisect`

    git bisect start
    git bisect new
    git checkout <some commit a while ago>
    git bisect old
    git bisect run <command that returns 1 on old, 0 on new>

## Patches

    git diff > change.patch
    patch -p1 < change.patch # -p1 to remove the a/ and b/ from filepaths

## Exporting a commit

    git archive <commit>

Outputs to stdout a tar archive of the index at the given commit. Make a
directory of just the code, not a repo:

    git archive <commit> | tar --extract --directory <output dir>