]> git.madduck.net Git - code/myrepos.git/blob - mrconfig

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

* Removed special case repository deletion handling code. The same
[code/myrepos.git] / mrconfig
1 # An example config file for the mr(1) command.
2
3 [DEFAULT]
4 # Teach mr how to run svn cleanup.
5 cleanup = if [ -d "$MR_REPO"/.svn ]; then svn cleanup ; fi
6 # And how to run git gc
7 gc = if [ -d "$MR_REPO"/.git ]; then git gc; fi
8 # Tests used in the skips below.
9 # - wantsrc checks whether I probably want a full source checkout (quite
10 #   large)
11 # - wantmedia checks whether I probably want various large media files
12 #   here.
13 # - private are hosts I trust private data to
14 # - mylaptop only succeeds if it's on my main development laptop, which 
15 #   gets lots of extra cruft
16 # - kite only succeeds on kite
17 lib =
18         wantsrc() {
19                 test "$(whoami)" = joey
20         }
21         wantmedia() {
22                 if [ "$(whoami)" = joey ]; then
23                         case "$(hostname)" in
24                                 kodama|dragon|dodo)
25                                         return 0
26                         ;;
27                         esac
28                 fi
29                 return 1
30         }
31         private() {
32                 if [ "$(whoami)" = joey ]; then
33                         case "$(hostname)" in
34                         wren|kodama|dragon|dodo|bluebird)
35                                 return 0
36                         ;;
37                         esac
38                 fi
39                 return 1
40         }
41         mylaptop() {
42                 test "$(hostname)" = kodama
43         }
44         kite() {
45                 test "$(hostname)" = wren
46         }
47
48 [src/mr]
49 checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/mr
50 skip = ! wantsrc
51
52 [src/linux-2.6]
53 checkout = git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
54 skip = ! mylaptop || ! wantsrc ||
55         ([ "$1" = update ] && [ $(hours_since "$1") -lt 12 ])
56
57 [src/dpkg]
58 # A merge of the upstream dpkg git repo and my own personal branch.
59 checkout =
60         git clone git://git.debian.org/git/dpkg/dpkg.git &&
61         cd dpkg &&
62         git remote add kite ssh://git.kitenet.net/srv/git/kitenet.net/dpkg &&
63         git fetch kite &&
64         git checkout -b sourcev3 kite/sourcev3
65 update = git pull origin master && git pull kite sourcev3
66 commit = git push kite
67 skip = ! wantsrc
68
69 [html/www.debian.org]
70 # Still in CVS..urk!
71 checkout =
72         CVSROOT=:ext:joeyh@cvs.debian.org:/cvs/webwml
73         cvs co -d www.debian.org webwml
74 # cvs sucks sufficiently that I prefer to run these commands by hand,
75 # and only rarely
76 update = echo "skipping cvs update (too slow)"
77 status = echo "skipping cvs status (too ugly)"
78 skip = ! mylaptop || ! wantsrc
79
80 # My home directory, which I keep in svn.
81 []
82 checkout = svn co svn+ssh://svn.kitenet.net/srv/svn/joey/trunk/home-$(hostname) joey
83 # run svnfix after each update
84 update = svn update && svnfix
85
86 [mail]
87 checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/joey/private/mail
88 skip = ! private
89
90 # Example of how to remember to delete a repo, when one mrconfig file is
91 # used on multiple systems. If you're feeling brave, use rm -rf $MR_REPO
92 # instead. This approach can also be used for renames.
93 [foo]
94 update = error "$MR_REPO is no longer used and should be deleted"
95 skip = ! test -d "$MR_REPO"