git-commit-vandalism/builtin
Nguyễn Thái Ngọc Duy b6312c27a0 checkout: reorder option handling
checkout operates in three different modes. On top of that it tries to
be smart by guessing the branch name for switching. This results in
messy option handling code. This patch reorders it so that

 - cmd_checkout() is responsible for parsing, preparing input and
   determining mode

 - Code of each mode is in checkout_paths() and checkout_branch(),
   where sanity checks are performed

Another slight improvement is always print branch name (or commit
name) when printing errors related ot them. This helps catch the case
where an option is mistaken as branch/commit.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-09-11 11:49:31 -07:00
..
add.c Merge branch 'ar/clone-honor-umask-at-top' into maint 2012-07-22 13:04:05 -07:00
annotate.c
apply.c Merge branch 'pg/maint-apply-remove-unused-variable' 2012-08-22 11:51:33 -07:00
archive.c
bisect--helper.c
blame.c Merge branch 'jk/maint-null-in-trees' 2012-08-27 11:54:28 -07:00
branch.c
bundle.c
cat-file.c Merge branch 'jk/maint-null-in-trees' 2012-08-27 11:54:28 -07:00
check-attr.c
check-ref-format.c
checkout-index.c
checkout.c checkout: reorder option handling 2012-09-11 11:49:31 -07:00
clean.c
clone.c Merge branch 'ar/clone-honor-umask-at-top' into maint 2012-07-22 13:04:05 -07:00
column.c
commit-tree.c Merge branch 'kk/maint-commit-tree' 2012-07-23 20:55:54 -07:00
commit.c Merge branch 'jk/maint-commit-check-committer-early' 2012-07-24 14:05:18 -07:00
config.c
count-objects.c
credential.c
describe.c
diff-files.c
diff-index.c
diff-tree.c
diff.c Merge branch 'jk/maint-null-in-trees' 2012-08-27 11:54:28 -07:00
fast-export.c
fetch-pack.c
fetch.c
fmt-merge-msg.c
for-each-ref.c
fsck.c
gc.c
grep.c grep: add a grep.patternType configuration setting 2012-08-03 09:58:02 -07:00
hash-object.c
help.c
index-pack.c
init-db.c
log.c
ls-files.c
ls-remote.c
ls-tree.c
mailinfo.c
mailsplit.c
merge-base.c
merge-file.c
merge-index.c
merge-ours.c
merge-recursive.c
merge-tree.c
merge.c Merge branch 'tr/void-diff-setup-done' 2012-08-22 11:52:27 -07:00
mktag.c
mktree.c
mv.c
name-rev.c
notes.c
pack-objects.c
pack-redundant.c
pack-refs.c
patch-id.c
prune-packed.c
prune.c
push.c Merge branch 'mm/push-default-switch-warning' 2012-08-27 11:54:04 -07:00
read-tree.c
receive-pack.c receive-pack: do not leak output from auto-gc to standard output 2012-08-06 22:31:10 -07:00
reflog.c
remote-ext.c
remote-fd.c
remote.c
replace.c
rerere.c
reset.c
rev-list.c Merge branch 'jk/maint-reflog-walk-count-vs-time' 2012-05-11 11:30:08 -07:00
rev-parse.c
revert.c
rm.c
send-pack.c
shortlog.c
show-branch.c
show-ref.c
stripspace.c
symbolic-ref.c
tag.c
tar-tree.c
unpack-file.c
unpack-objects.c
update-index.c
update-ref.c
update-server-info.c
upload-archive.c
var.c
verify-pack.c
verify-tag.c
write-tree.c