1MGITSTATUS(1) MGITSTATUS(1)
2
3
4
6 mgitstatus – Show uncommitted, untracked and unpushed changes for mul‐
7 tiple Git repos.
8
10 mgitstatus [--version] [-w] [-e] [-f] [--no-X] [-d/--depth=2] [DIR
11 [DIR]...]
12
14 mgitstatus shows uncommited, untracked and unpushed changes in multiple
15 Git repositories. By default, mgitstatus scans two directories deep.
16 This can be changed with the -d (--depth) option. If DEPTH is 0, the
17 scan is infinitely deep.
18
19 mgitstatus shows:
20
21 · Uncommitted changes if there are unstaged or uncommitted changes on
22 the checked out branch.
23
24 · Untracked files if there are untracked files which are not ignored.
25
26 · Needs push (BRANCH) if the branch is tracking a (remote) branch which
27 is behind.
28
29 · Needs upstream (BRANCH) if a branch does not have a local or remote
30 upstream branch configured. Changes in the branch may otherwise nev‐
31 er be pushed or merged.
32
33 · Needs pull (BRANCH) if the branch is tracking a (remote) branch which
34 is ahead. This requires that the local git repo already knows about
35 the remote changes (i.e. you've done a fetch), or that you specify
36 the -f option. mgitstatus does NOT contact the remote by default.
37
38 · X stashes if there are stashes.
39
40 Since there are a lot of different states a git repository can be in,
41 mgitstatus makes no guarantees that all states are taken into account.
42
44 --version
45 Show version
46
47 -w Warn about dirs that are not Git repositories
48
49 -e Exclude repos that are 'ok'
50
51 -f Do a 'git fetch' on each repo (slow for many repos)
52
53 -c Force color output (preserve colors when using pipes)
54
55 -d, --depth=2
56 Scan this many directories deep. Default is 2. If 0, the scan
57 is infinitely deep
58
59 You can limit output with the following options:
60
61 --no-push
62 Do not show branches that need a push.
63
64 --no-pull
65 Do not show branches that need a pull.
66
67 --no-upstream
68 Do not show branches that need an upstream.
69
70 --no-uncommited
71 Do not show branches that have unstaged or uncommitted changes.
72
73 --no-untracked
74 Do not show branches that have untracked files.
75
76 --no-stashes
77 Do now show stashes
78
80 The following command scans two directories deep for Git projects and
81 shows their status:
82
83 $ mgitstatus
84 ./fboender/sla: ok
85 ./fboender/multi-git-status: Needs push (master) Untracked files
86 ./other/peewee: ok
87
88 To scan deeper (three dirs instead of two) in the current dir:
89
90 $ mgitstatus -d 3
91
92 The following command scans three levels deep in /opt/deploy/ and hides
93 repos that are 'ok'. It does not show stashes:
94
95 $ mgitstatus -e --no-stashes -d 3 /opt/deploy
96
97 To ignore a repo, set the mgitstatus.ignore git configuration option
98 for that repo to true. E.g.:
99
100 $ cd stupidrepo
101 $ git config --local mgitstatus.ignore true
102
104 Copyright 2016-2020, Ferry Boender.
105
106 Licensed under the MIT license. For more information, see the LI‐
107 CENSE.txt file.
108
110 Ferry Boender.
111
112
113
114 Jul 2019 MGITSTATUS(1)