2006-06-22 23:06:39 +02:00
|
|
|
GIT-CFLAGS
|
2005-12-27 23:40:17 +01:00
|
|
|
GIT-VERSION-FILE
|
2005-09-09 20:55:56 +02:00
|
|
|
git
|
|
|
|
git-add
|
git-add --interactive
A script to be driven when the user says "git add --interactive"
is introduced.
When it is run, first it runs its internal 'status' command to
show the current status, and then goes into its internactive
command loop.
The command loop shows the list of subcommands available, and
gives a prompt "What now> ". In general, when the prompt ends
with a single '>', you can pick only one of the choices given
and type return, like this:
*** Commands ***
1: status 2: update 3: revert 4: add untracked
5: patch 6: diff 7: quit 8: help
What now> 1
You also could say "s" or "sta" or "status" above as long as the
choice is unique.
The main command loop has 6 subcommands (plus help and quit).
* 'status' shows the change between HEAD and index (i.e. what
will be committed if you say "git commit"), and between index
and working tree files (i.e. what you could stage further
before "git commit" using "git-add") for each path. A sample
output looks like this:
staged unstaged path
1: binary nothing foo.png
2: +403/-35 +1/-1 git-add--interactive.perl
It shows that foo.png has differences from HEAD (but that is
binary so line count cannot be shown) and there is no
difference between indexed copy and the working tree
version (if the working tree version were also different,
'binary' would have been shown in place of 'nothing'). The
other file, git-add--interactive.perl, has 403 lines added
and 35 lines deleted if you commit what is in the index, but
working tree file has further modifications (one addition and
one deletion).
* 'update' shows the status information and gives prompt
"Update>>". When the prompt ends with double '>>', you can
make more than one selection, concatenated with whitespace or
comma. Also you can say ranges. E.g. "2-5 7,9" to choose
2,3,4,5,7,9 from the list. You can say '*' to choose
everything.
What you chose are then highlighted with '*', like this:
staged unstaged path
1: binary nothing foo.png
* 2: +403/-35 +1/-1 git-add--interactive.perl
To remove selection, prefix the input with - like this:
Update>> -2
After making the selection, answer with an empty line to
stage the contents of working tree files for selected paths
in the index.
* 'revert' has a very similar UI to 'update', and the staged
information for selected paths are reverted to that of the
HEAD version. Reverting new paths makes them untracked.
* 'add untracked' has a very similar UI to 'update' and
'revert', and lets you add untracked paths to the index.
* 'patch' lets you choose one path out of 'status' like
selection. After choosing the path, it presents diff between
the index and the working tree file and asks you if you want
to stage the change of each hunk. You can say:
y - add the change from that hunk to index
n - do not add the change from that hunk to index
a - add the change from that hunk and all the rest to index
d - do not the change from that hunk nor any of the rest to index
j - do not decide on this hunk now, and view the next
undecided hunk
J - do not decide on this hunk now, and view the next hunk
k - do not decide on this hunk now, and view the previous
undecided hunk
K - do not decide on this hunk now, and view the previous hunk
After deciding the fate for all hunks, if there is any hunk
that was chosen, the index is updated with the selected hunks.
* 'diff' lets you review what will be committed (i.e. between
HEAD and index).
This is still rough, but does everything except a few things I
think are needed.
* 'patch' should be able to allow splitting a hunk into
multiple hunks.
* 'patch' does not adjust the line offsets @@ -k,l +m,n @@
in the hunk header. This does not have major problem in
practice, but it _should_ do the adjustment.
* It does not have any explicit support for a merge in
progress; it may not work at all.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-11 05:55:50 +01:00
|
|
|
git-add--interactive
|
2005-10-15 02:13:49 +02:00
|
|
|
git-am
|
2006-02-24 23:51:15 +01:00
|
|
|
git-annotate
|
2005-08-26 13:00:05 +02:00
|
|
|
git-apply
|
2005-09-09 20:55:56 +02:00
|
|
|
git-applymbox
|
|
|
|
git-applypatch
|
|
|
|
git-archimport
|
Add git-archive
git-archive is a command to make TAR and ZIP archives of a git tree.
It helps prevent a proliferation of git-{format}-tree commands.
Instead of directly calling git-{tar,zip}-tree command, it defines
a very simple API, that archiver should implement and register in
"git-archive.c". This API is made up by 2 functions whose prototype
is defined in "archive.h" file.
- The first one is used to parse 'extra' parameters which have
signification only for the specific archiver. That would allow
different archive backends to have different kind of options.
- The second one is used to ask to an archive backend to build
the archive given some already resolved parameters.
The main reason for making this API is to avoid using
git-{tar,zip}-tree commands, hence making them useless. Maybe it's
time for them to die ?
It also implements remote operations by defining a very simple
protocol: it first sends the name of the specific uploader followed
the repository name (git-upload-tar git://example.org/repo.git).
Then it sends options. It's done by sending a sequence of one
argument per packet, with prefix "argument ", followed by a flush.
The remote protocol is implemented in "git-archive.c" for client
side and is triggered by "--remote=<repo>" option. For example,
to fetch a TAR archive in a remote repo, you can issue:
$ git archive --format=tar --remote=git://xxx/yyy/zzz.git HEAD
We choose to not make a new command "git-fetch-archive" for example,
avoind one more GIT command which should be nice for users (less
commands to remember, keeps existing --remote option).
Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com>
Acked-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-09-07 15:12:02 +02:00
|
|
|
git-archive
|
2005-09-09 20:55:56 +02:00
|
|
|
git-bisect
|
2006-12-26 21:14:18 +01:00
|
|
|
git-blame
|
2005-09-09 20:55:56 +02:00
|
|
|
git-branch
|
2005-08-26 13:00:05 +02:00
|
|
|
git-cat-file
|
2005-10-17 07:41:59 +02:00
|
|
|
git-check-ref-format
|
2005-09-09 20:55:56 +02:00
|
|
|
git-checkout
|
2005-09-08 02:26:23 +02:00
|
|
|
git-checkout-index
|
2005-09-09 20:55:56 +02:00
|
|
|
git-cherry
|
2005-10-20 17:13:24 +02:00
|
|
|
git-cherry-pick
|
2006-04-05 08:00:48 +02:00
|
|
|
git-clean
|
2005-09-09 20:55:56 +02:00
|
|
|
git-clone
|
|
|
|
git-commit
|
2005-08-26 13:00:05 +02:00
|
|
|
git-commit-tree
|
2007-01-29 01:16:53 +01:00
|
|
|
git-config
|
2005-09-08 02:26:23 +02:00
|
|
|
git-convert-objects
|
2005-09-09 20:55:56 +02:00
|
|
|
git-count-objects
|
2005-11-08 03:23:10 +01:00
|
|
|
git-cvsexportcommit
|
2005-09-09 20:55:56 +02:00
|
|
|
git-cvsimport
|
2006-02-24 23:51:15 +01:00
|
|
|
git-cvsserver
|
2005-08-26 13:00:05 +02:00
|
|
|
git-daemon
|
2005-09-09 20:55:56 +02:00
|
|
|
git-diff
|
2005-08-26 13:00:05 +02:00
|
|
|
git-diff-files
|
2005-09-09 20:55:56 +02:00
|
|
|
git-diff-index
|
2005-08-26 13:00:05 +02:00
|
|
|
git-diff-stages
|
|
|
|
git-diff-tree
|
2006-01-11 07:40:33 +01:00
|
|
|
git-describe
|
2006-08-05 08:04:21 +02:00
|
|
|
git-fast-import
|
2005-09-09 20:55:56 +02:00
|
|
|
git-fetch
|
2005-08-26 13:00:05 +02:00
|
|
|
git-fetch-pack
|
2005-10-15 02:13:49 +02:00
|
|
|
git-findtags
|
2005-09-27 09:06:05 +02:00
|
|
|
git-fmt-merge-msg
|
2006-09-15 22:30:02 +02:00
|
|
|
git-for-each-ref
|
2005-09-09 20:55:56 +02:00
|
|
|
git-format-patch
|
2007-01-29 01:33:58 +01:00
|
|
|
git-fsck
|
2005-09-08 02:26:23 +02:00
|
|
|
git-fsck-objects
|
2006-12-27 08:17:59 +01:00
|
|
|
git-gc
|
2005-08-26 13:00:05 +02:00
|
|
|
git-get-tar-commit-id
|
2005-09-13 04:39:15 +02:00
|
|
|
git-grep
|
2005-08-26 13:00:05 +02:00
|
|
|
git-hash-object
|
2005-09-08 02:26:23 +02:00
|
|
|
git-http-fetch
|
2005-11-08 03:23:10 +01:00
|
|
|
git-http-push
|
2006-03-10 06:32:50 +01:00
|
|
|
git-imap-send
|
2005-10-15 02:13:49 +02:00
|
|
|
git-index-pack
|
2007-01-09 06:27:33 +01:00
|
|
|
git-init
|
2005-08-26 13:00:05 +02:00
|
|
|
git-init-db
|
2006-07-02 00:14:14 +02:00
|
|
|
git-instaweb
|
2005-09-08 02:26:23 +02:00
|
|
|
git-local-fetch
|
2005-09-09 20:55:56 +02:00
|
|
|
git-log
|
2005-11-13 11:07:02 +01:00
|
|
|
git-lost-found
|
2005-08-26 13:00:05 +02:00
|
|
|
git-ls-files
|
2005-09-09 20:55:56 +02:00
|
|
|
git-ls-remote
|
2005-08-26 13:00:05 +02:00
|
|
|
git-ls-tree
|
2005-09-09 20:55:56 +02:00
|
|
|
git-mailinfo
|
|
|
|
git-mailsplit
|
|
|
|
git-merge
|
2005-08-26 13:00:05 +02:00
|
|
|
git-merge-base
|
2005-09-08 02:26:23 +02:00
|
|
|
git-merge-index
|
2006-12-13 00:01:41 +01:00
|
|
|
git-merge-file
|
2006-02-24 23:51:15 +01:00
|
|
|
git-merge-tree
|
2005-09-09 20:55:56 +02:00
|
|
|
git-merge-octopus
|
|
|
|
git-merge-one-file
|
2005-11-02 04:34:49 +01:00
|
|
|
git-merge-ours
|
2006-08-04 01:17:51 +02:00
|
|
|
git-merge-recur
|
2005-09-13 08:22:26 +02:00
|
|
|
git-merge-recursive
|
2005-09-09 20:55:56 +02:00
|
|
|
git-merge-resolve
|
|
|
|
git-merge-stupid
|
2005-08-26 13:00:05 +02:00
|
|
|
git-mktag
|
2006-02-24 23:51:15 +01:00
|
|
|
git-mktree
|
2005-10-27 12:03:43 +02:00
|
|
|
git-name-rev
|
|
|
|
git-mv
|
2005-11-10 00:16:13 +01:00
|
|
|
git-pack-redundant
|
2005-08-26 13:00:05 +02:00
|
|
|
git-pack-objects
|
2006-09-18 09:34:38 +02:00
|
|
|
git-pack-refs
|
2005-09-09 20:55:56 +02:00
|
|
|
git-parse-remote
|
2005-08-26 13:00:05 +02:00
|
|
|
git-patch-id
|
|
|
|
git-peek-remote
|
2005-09-09 20:55:56 +02:00
|
|
|
git-prune
|
2005-08-26 13:00:05 +02:00
|
|
|
git-prune-packed
|
2005-09-09 20:55:56 +02:00
|
|
|
git-pull
|
|
|
|
git-push
|
2006-05-22 15:46:25 +02:00
|
|
|
git-quiltimport
|
2005-08-26 13:00:05 +02:00
|
|
|
git-read-tree
|
2005-09-09 20:55:56 +02:00
|
|
|
git-rebase
|
2005-08-26 13:00:05 +02:00
|
|
|
git-receive-pack
|
2006-12-26 20:08:08 +01:00
|
|
|
git-reflog
|
2005-09-09 20:55:56 +02:00
|
|
|
git-relink
|
2007-01-09 06:27:33 +01:00
|
|
|
git-remote
|
2005-09-09 20:55:56 +02:00
|
|
|
git-repack
|
2005-11-24 11:36:01 +01:00
|
|
|
git-repo-config
|
2005-09-09 20:55:56 +02:00
|
|
|
git-request-pull
|
2006-02-07 18:21:02 +01:00
|
|
|
git-rerere
|
2005-09-09 20:55:56 +02:00
|
|
|
git-reset
|
|
|
|
git-resolve
|
2005-08-26 13:00:05 +02:00
|
|
|
git-rev-list
|
|
|
|
git-rev-parse
|
2005-09-09 20:55:56 +02:00
|
|
|
git-revert
|
2006-02-22 00:04:51 +01:00
|
|
|
git-rm
|
2006-09-08 10:05:34 +02:00
|
|
|
git-runstatus
|
2005-09-17 05:40:12 +02:00
|
|
|
git-send-email
|
2005-08-26 13:00:05 +02:00
|
|
|
git-send-pack
|
2005-09-09 20:55:56 +02:00
|
|
|
git-sh-setup
|
2005-10-27 12:03:43 +02:00
|
|
|
git-shell
|
2005-09-09 20:55:56 +02:00
|
|
|
git-shortlog
|
2006-02-06 01:42:49 +01:00
|
|
|
git-show
|
2005-08-26 13:00:05 +02:00
|
|
|
git-show-branch
|
|
|
|
git-show-index
|
2006-09-18 09:35:07 +02:00
|
|
|
git-show-ref
|
2005-09-08 02:26:23 +02:00
|
|
|
git-ssh-fetch
|
2005-09-15 23:56:37 +02:00
|
|
|
git-ssh-pull
|
|
|
|
git-ssh-push
|
2005-09-08 02:26:23 +02:00
|
|
|
git-ssh-upload
|
2005-09-09 20:55:56 +02:00
|
|
|
git-status
|
2005-08-26 13:00:05 +02:00
|
|
|
git-stripspace
|
2006-07-06 09:14:16 +02:00
|
|
|
git-svn
|
2005-10-18 20:35:17 +02:00
|
|
|
git-svnimport
|
2005-09-30 23:26:57 +02:00
|
|
|
git-symbolic-ref
|
2005-09-09 20:55:56 +02:00
|
|
|
git-tag
|
2005-08-26 13:00:05 +02:00
|
|
|
git-tar-tree
|
|
|
|
git-unpack-file
|
|
|
|
git-unpack-objects
|
2005-09-08 02:26:23 +02:00
|
|
|
git-update-index
|
2005-09-27 09:06:05 +02:00
|
|
|
git-update-ref
|
2005-08-26 13:00:05 +02:00
|
|
|
git-update-server-info
|
2006-09-07 15:12:05 +02:00
|
|
|
git-upload-archive
|
2005-08-26 13:00:05 +02:00
|
|
|
git-upload-pack
|
|
|
|
git-var
|
|
|
|
git-verify-pack
|
2005-09-09 20:55:56 +02:00
|
|
|
git-verify-tag
|
|
|
|
git-whatchanged
|
2005-08-26 13:00:05 +02:00
|
|
|
git-write-tree
|
2005-09-24 20:19:07 +02:00
|
|
|
git-core-*/?*
|
2006-08-06 12:47:33 +02:00
|
|
|
gitweb/gitweb.cgi
|
2005-11-08 03:23:10 +01:00
|
|
|
test-date
|
|
|
|
test-delta
|
2006-04-24 05:20:25 +02:00
|
|
|
test-dump-cache-tree
|
2006-03-09 17:24:19 +01:00
|
|
|
common-cmds.h
|
2005-09-24 20:19:07 +02:00
|
|
|
*.tar.gz
|
|
|
|
*.dsc
|
|
|
|
*.deb
|
|
|
|
git-core.spec
|
2005-09-29 08:22:02 +02:00
|
|
|
*.exe
|
2006-03-27 09:41:22 +02:00
|
|
|
*.[ao]
|
2006-01-05 17:38:58 +01:00
|
|
|
*.py[co]
|
2006-02-07 18:21:02 +01:00
|
|
|
config.mak
|
2006-07-03 01:56:48 +02:00
|
|
|
autom4te.cache
|
2006-09-07 14:30:06 +02:00
|
|
|
config.cache
|
2006-07-03 01:56:48 +02:00
|
|
|
config.log
|
|
|
|
config.status
|
|
|
|
config.mak.autogen
|
2006-08-08 22:42:35 +02:00
|
|
|
config.mak.append
|
2006-07-03 01:56:48 +02:00
|
|
|
configure
|