git-commit-vandalism/builtin
Jonathan Nieder 3f59481e33 branch: allow a no-op "branch -M <current-branch> HEAD"
Overwriting the current branch with a different commit is forbidden, as it
will make the status recorded in the index and the working tree out of
sync with respect to the HEAD. There however is no reason to forbid it if
the current branch is renamed to itself, which admittedly is something
only an insane user would do, but is handy for scripts.

Test script is by Conrad Irwin.

Reported-by: Soeren Sonnenburg <sonne@debian.org>
Reported-by: Josh Chia (谢任中)
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Conrad Irwin <conrad.irwin@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-11-28 11:40:46 -08:00
..
add.c
annotate.c
apply.c Merge branch 'jc/apply-blank-at-eof-fix' into maint 2011-10-21 10:49:26 -07:00
archive.c Revert "upload-archive: use start_command instead of fork" 2011-11-15 15:39:33 -08:00
bisect--helper.c bisect: introduce support for --no-checkout option. 2011-08-04 15:34:32 -07:00
blame.c Merge branch 'ss/blame-textconv-fake-working-tree' 2011-11-07 16:43:19 -08:00
branch.c branch: allow a no-op "branch -M <current-branch> HEAD" 2011-11-28 11:40:46 -08:00
bundle.c Teach progress eye-candy to fetch_refs_from_bundle() 2011-09-19 11:07:21 -07:00
cat-file.c plug a few coverity-spotted leaks 2011-06-20 14:27:36 -07:00
check-attr.c Merge branch 'bc/attr-ignore-case' 2011-10-17 21:37:14 -07:00
check-ref-format.c Change check_refname_format() to reject unnormalized refnames 2011-10-05 13:45:30 -07:00
checkout-index.c checkout-index: remove obsolete comment 2011-08-17 10:39:47 -07:00
checkout.c Merge branch 'jk/argv-array' into maint 2011-10-26 16:13:31 -07:00
clean.c Documentation: clarify "git clean -e <pattern>" 2011-08-28 23:47:55 -07:00
clone.c clone: Quote user supplied path in a single quote pair 2011-10-27 12:02:02 -07:00
commit-tree.c
commit.c revert: write REVERT_HEAD pseudoref during conflicted revert 2011-11-22 13:34:44 -08:00
config.c Merge branch 'mm/maint-config-explicit-bool-display' into maint 2011-10-21 10:49:24 -07:00
count-objects.c
describe.c describe: Refresh the index when run with --dirty 2011-09-23 14:28:17 -07:00
diff-files.c
diff-index.c
diff-tree.c
diff.c want_color: automatically fallback to color.ui 2011-08-19 15:51:38 -07:00
fast-export.c Merge branch 'jk/fast-export-quote-path' into maint 2011-08-16 12:41:12 -07:00
fetch-pack.c Merge branch 'mh/check-ref-format-3' 2011-10-10 15:56:18 -07:00
fetch.c Merge branch 'cn/fetch-prune' 2011-10-26 16:16:29 -07:00
fmt-merge-msg.c Accept tags in HEAD or MERGE_HEAD 2011-09-18 14:11:40 -07:00
for-each-ref.c for-each-ref: add split message parts to %(contents:*). 2011-09-08 13:56:19 -07:00
fsck.c fsck: do not abort upon finding an empty blob 2011-09-11 18:03:38 -07:00
gc.c builtin/gc.c: add missing newline in message 2011-06-19 14:46:39 -07:00
grep.c builtin/grep: simplify lock_and_read_sha1_file() 2011-10-26 13:09:23 -07:00
hash-object.c
help.c
index-pack.c Merge branch 'jc/zlib-wrap' into maint 2011-08-16 11:23:26 -07:00
init-db.c read_gitfile_gently(): rename misnamed function to read_gitfile() 2011-08-22 14:04:56 -07:00
log.c format-patch: ignore ui.color 2011-09-12 11:43:58 -07:00
ls-files.c Merge branch 'cb/common-prefix-unification' 2011-10-10 15:56:17 -07:00
ls-remote.c Merge branch 'jc/ls-remote-short-help' 2011-10-05 12:36:26 -07:00
ls-tree.c Ensure git ls-tree exits with a non-zero exit code if read_tree_recursive fails. 2011-07-25 10:50:11 -07:00
mailinfo.c mailinfo: always clean up rfc822 header folding 2011-05-26 14:13:38 -07:00
mailsplit.c
merge-base.c
merge-file.c
merge-index.c
merge-ours.c
merge-recursive.c
merge-tree.c
merge.c do not let git_path clobber errno when reporting errors 2011-11-17 15:06:27 -08:00
mktag.c
mktree.c Merge "Move 'builtin-*' into a 'builtin/' subdirectory" 2011-11-10 09:10:51 -08:00
mv.c builtin/mv.c: plug miniscule memory leak 2011-10-06 13:54:32 -07:00
name-rev.c Sync with 1.7.7.4 2011-11-18 11:30:02 -08:00
notes.c
pack-objects.c Merge branch 'dm/pack-objects-update' 2011-11-01 15:20:07 -07:00
pack-redundant.c
pack-refs.c
patch-id.c patch-id.c: use strbuf instead of a fixed buffer 2011-09-22 09:35:07 -07:00
prune-packed.c
prune.c
push.c push: Don't push a repository with unpushed submodules 2011-08-20 23:03:52 -07:00
read-tree.c
receive-pack.c receive-pack: do not expect object 0{40} to exist 2011-11-03 14:27:04 -07:00
reflog.c reflog: actually default to subcommand 'show' 2011-08-01 10:52:34 -07:00
remote-ext.c
remote-fd.c
remote.c Merge branch 'jc/remote-setbranches-usage-fix' 2011-11-08 16:40:31 -08:00
replace.c Change check_ref_format() to take a flags argument 2011-10-05 13:45:29 -07:00
rerere.c
reset.c Merge branch 'jk/reset-reflog-message-fix' into maint 2011-09-11 22:33:20 -07:00
rev-list.c rev-list --verify-object 2011-09-01 15:46:13 -07:00
rev-parse.c rev-parse: add option --resolve-git-dir <path> 2011-08-16 11:04:31 -07:00
revert.c revert: remove --reset compatibility option 2011-11-22 18:18:02 -08:00
rm.c
send-pack.c rename "match_refs()" to "match_push_refs()" 2011-09-12 16:41:53 -07:00
shortlog.c Merge branch 'jk/format-patch-am' 2011-05-31 12:19:11 -07:00
show-branch.c want_color: automatically fallback to color.ui 2011-08-19 15:51:38 -07:00
show-ref.c Change check_ref_format() to take a flags argument 2011-10-05 13:45:29 -07:00
stripspace.c
symbolic-ref.c
tag.c Merge branch 'mh/check-ref-format-3' 2011-10-10 15:56:18 -07:00
tar-tree.c
unpack-file.c
unpack-objects.c zlib: zlib can only process 4GB at a time 2011-06-10 11:52:15 -07:00
update-index.c plug a few coverity-spotted leaks 2011-06-20 14:27:36 -07:00
update-ref.c update-ref: whitespace fix 2011-08-25 14:42:11 -07:00
update-server-info.c
upload-archive.c Revert "upload-archive: use start_command instead of fork" 2011-11-15 15:39:33 -08:00
var.c
verify-pack.c verify-pack: use index-pack --verify 2011-06-05 22:45:38 -07:00
verify-tag.c
write-tree.c