1 file /usr/bin/git-* | grep ELF | cut -d: -f 1
4 Changing and querying the working copy:
5 3 remove Remove one or more files or directories from the repository.
6 3 mv Move/rename one or more files or directories.
7 replace Replace a token with a new value for that token.
8 Copying changes between the working copy and the repository:
9 5 unrecord Remove recorded patches without changing the working copy.
10 4 amend-record Replace a patch with a better version before it leaves your repository.
11 resolve Mark any conflicts to the working copy for manual resolution.
12 Direct modification of the repository:
13 tag Tag the contents of the repository with a version name.
14 setpref Set a value for a preference (test, predist, ...).
15 rollback Record an inverse patch without changing the working directory.
16 Querying the repository:
17 diff Create a diff between two versions of the repository.
18 2 changes Gives a changelog-style summary of the repository history.
19 annotate Display which patch last modified something.
20 dist Create a distribution tarball.
21 trackdown Locate the most recent version lacking an error.
22 query Query information which is stored by vng.
23 Copying patches between repositories with working copy update:
24 1 pull Copy and apply patches from another repository to this one.
25 unpull Opposite of pull; unsafe if patch is not in remote repository.
26 obliterate Delete selected patches from the repository. (UNSAFE!)
27 send Send by email a bundle of one or more patches.
28 apply Apply patches (from an email bundle) to the repository.
29 get Create a local copy of another repository.
30 put Makes a copy of the repository
31 Administrating repositories:
32 optimize Optimize the repository.
33 check Check the repository for consistency.
34 repair Repair the corrupted repository.
37 Make the --debug option only available when compiling as debug-build
40 * cursor help (when typing '?') seems to be hardcoded to 'revert'.
41 * test each command to honor its arguments and options.
42 * When the user does not want to accept a file rename, mark all the changes for the rest
43 of the file as impossible, and thus skipped.
46 * Also show / store file permissions in the diff and thus in revert
47 * Use pager for help :)
48 * Use $PAGER for pager
50 use git-read-tree --reset HEAD and git-update-index --refresh to implement 'check'
51 use 'prune' and 'pack' to implement optimize.
54 git ls-remote -h -t [remote] to fetch all branches.
55 allow the user to select the branches he wants to mirror.
60 use 'git whatchanged -p --unified=0 --root'
61 allow -v to show the diff.
62 We should read the diff in memory and if the user passed a filename we should only show the diffs for that file.
65 [09:31] <brad> git people: is it possible to push just a single commit to devil, or does it ineed to be a branch?
66 [09:31] <simon> brad: you can for example do: git push <remote> <sha1>:name-of-new-branch
67 [09:31] <simon> brad: and later remove the branch again with git push <remote> :name-of-new-branch
68 [09:31] <brad> ahh, cool