1
0
mirror of https://github.com/git/git.git synced 2024-10-19 09:28:35 +02:00
Git Source Code Mirror. Please follow Documentation/SubmittingPatches procedure for any of your improvements.
Go to file
Jeff King 0c01857df5 diff: fix handling of binary rewrite diffs
The current emit_rewrite_diff code always writes a text patch without
checking whether the content is binary. This means that if you end up with
a rewrite diff for a binary file, you get lots of raw binary goo in your
patch.

Instead, if we have binary files, then let's just skip emit_rewrite_diff
altogether. We will already have shown the "dissimilarity index" line, so
it is really about the diff contents. If binary diffs are turned off, the
"Binary files a/file and b/file differ" message should be the same in
either case. If we do have binary patches turned on, there isn't much
point in making a less-efficient binary patch that does a total rewrite;
no human is going to read it, and since binary patches don't apply with
any fuzz anyway, the result of application should be the same.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-12-09 22:14:25 -08:00
arm
compat Merge branch 'js/mingw-rename-fix' 2008-11-27 19:25:06 -08:00
contrib git-p4: Fix regression in p4Where method. 2008-12-09 21:39:16 -08:00
Documentation Fix typos in documentation 2008-12-09 21:39:23 -08:00
git-gui Merge git://repo.or.cz/git-gui 2008-12-02 15:27:05 -08:00
gitk-git Merge git://git.kernel.org/pub/scm/gitk/gitk 2008-12-02 15:25:48 -08:00
gitweb gitweb: Fix bug in insert_file() subroutine 2008-12-08 09:04:36 -08:00
mozilla-sha1
perl Git.pm: Make _temp_cache use the repository directory 2008-11-13 22:36:34 -08:00
ppc
t diff: fix handling of binary rewrite diffs 2008-12-09 22:14:25 -08:00
templates
xdiff xdiff: give up scanning similar lines early 2008-12-02 23:45:37 -08:00
.gitattributes
.gitignore add stage to gitignore 2008-12-03 21:29:03 -08:00
.mailmap
abspath.c
alias.c
alloc.c
archive-tar.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
archive-zip.c
archive.c Merge branch 'maint' 2008-10-26 16:21:08 -07:00
archive.h
attr.c
attr.h
base85.c
blob.c
blob.h
branch.c Merge branch 'jc/maint-co-track' 2008-10-21 17:58:11 -07:00
branch.h
builtin-add.c
builtin-annotate.c
builtin-apply.c Merge branch 'ar/maint-mksnpath' into HEAD 2008-10-26 22:24:44 -07:00
builtin-archive.c git-archive: work in bare repos 2008-10-26 16:19:59 -07:00
builtin-blame.c Merge branch 'rs/blame' 2008-11-08 16:05:39 -08:00
builtin-branch.c builtin-branch: use strbuf in rename_branch() 2008-11-18 15:46:42 -08:00
builtin-bundle.c
builtin-cat-file.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
builtin-check-attr.c Fix non-literal format in printf-style calls 2008-11-11 14:50:02 -08:00
builtin-check-ref-format.c
builtin-checkout-index.c parse-opt: migrate builtin-checkout-index. 2008-10-19 14:38:04 -07:00
builtin-checkout.c builtin-checkout.c: check error return from read_cache() 2008-12-07 19:08:15 -08:00
builtin-clean.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
builtin-clone.c builtin_clone: use strbuf in cmd_clone() 2008-11-25 15:34:26 -08:00
builtin-commit-tree.c
builtin-commit.c git add --intent-to-add: do not let an empty blob be committed by accident 2008-11-30 17:59:19 -08:00
builtin-config.c Use git_pathdup instead of xstrdup(git_path(...)) 2008-10-30 17:52:24 -07:00
builtin-count-objects.c
builtin-describe.c describe: Make --tags and --all match lightweight tags more often 2008-10-17 11:35:43 -07:00
builtin-diff-files.c Add cache preload facility 2008-11-14 19:11:49 -08:00
builtin-diff-index.c
builtin-diff-tree.c
builtin-diff.c reorder ALLOW_TEXTCONV option setting 2008-12-07 19:59:25 -08:00
builtin-fast-export.c fast-export: use an unsorted string list for extra_refs 2008-11-23 19:54:51 -08:00
builtin-fetch--tool.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
builtin-fetch-pack.c Merge branch 'maint' 2008-12-07 15:13:02 -08:00
builtin-fetch.c Teach/Fix pull/fetch -q/-v options 2008-11-14 17:18:32 -08:00
builtin-fmt-merge-msg.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
builtin-for-each-ref.c Fix potentially dangerous uses of mkpath and git_path 2008-10-26 22:25:09 -07:00
builtin-fsck.c Make some of fwrite/fclose/write/close failures visible 2008-12-04 18:05:41 -08:00
builtin-gc.c Merge branch 'bc/maint-keep-pack' 2008-11-12 22:00:43 -08:00
builtin-grep.c
builtin-help.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
builtin-http-fetch.c
builtin-init-db.c
builtin-log.c reorder ALLOW_TEXTCONV option setting 2008-12-07 19:59:25 -08:00
builtin-ls-files.c Teach ls-files --with-tree=<tree> to work with options other than -c 2008-11-16 00:15:50 -08:00
builtin-ls-remote.c git ls-remote: make usage string match manpage 2008-11-11 13:24:00 -08:00
builtin-ls-tree.c
builtin-mailinfo.c
builtin-mailsplit.c
builtin-merge-base.c
builtin-merge-file.c
builtin-merge-ours.c
builtin-merge-recursive.c
builtin-merge.c Make some of fwrite/fclose/write/close failures visible 2008-12-04 18:05:41 -08:00
builtin-mv.c
builtin-name-rev.c
builtin-pack-objects.c Merge branch 'bc/maint-keep-pack' into maint 2008-12-02 23:00:04 -08:00
builtin-pack-refs.c
builtin-prune-packed.c
builtin-prune.c
builtin-push.c
builtin-read-tree.c checkout: Fix "initial checkout" detection 2008-11-12 14:16:50 -08:00
builtin-receive-pack.c receive-pack: detect push to current branch of non-bare repo 2008-11-09 10:16:50 -08:00
builtin-reflog.c Merge branch 'ar/maint-mksnpath' into ar/mksnpath 2008-10-30 18:08:58 -07:00
builtin-remote.c git-remote: add verbose mode to git remote update 2008-11-18 15:38:34 -08:00
builtin-rerere.c Always initialize xpparam_t to 0 2008-10-25 12:09:31 -07:00
builtin-reset.c Fix git branch -m for symrefs. 2008-10-26 14:42:57 -07:00
builtin-rev-list.c Add a 'source' decorator for commits 2008-11-04 00:08:03 -08:00
builtin-rev-parse.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
builtin-revert.c Merge branch 'ar/maint-mksnpath' into maint 2008-11-08 16:13:19 -08:00
builtin-rm.c git add --intent-to-add: fix removal of cached emptiness 2008-11-28 19:58:24 -08:00
builtin-send-pack.c Merge branch 'maint' 2008-11-08 21:33:55 -08:00
builtin-shortlog.c
builtin-show-branch.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
builtin-show-ref.c
builtin-stripspace.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
builtin-symbolic-ref.c
builtin-tag.c Merge branch 'maint' 2008-12-07 15:13:02 -08:00
builtin-tar-tree.c
builtin-unpack-objects.c better validation on delta base object offsets 2008-11-02 15:22:34 -08:00
builtin-update-index.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
builtin-update-ref.c Fix git update-ref --no-deref -d. 2008-10-26 14:44:25 -07:00
builtin-upload-archive.c
builtin-verify-pack.c
builtin-verify-tag.c
builtin-write-tree.c git add --intent-to-add: do not let an empty blob be committed by accident 2008-11-30 17:59:19 -08:00
builtin.h
bundle.c Fix non-literal format in printf-style calls 2008-11-11 14:43:59 -08:00
bundle.h
cache-tree.c git add --intent-to-add: do not let an empty blob be committed by accident 2008-11-30 17:59:19 -08:00
cache-tree.h
cache.h Merge branch 'bc/maint-keep-pack' into maint 2008-12-02 23:00:04 -08:00
check_bindir
check-builtins.sh
check-racy.c
color.c
color.h
combine-diff.c Always initialize xpparam_t to 0 2008-10-25 12:09:31 -07:00
command-list.txt
commit.c
commit.h builtin-blame: Reencode commit messages according to git-log rules. 2008-10-21 14:09:34 -07:00
config.c Add cache preload facility 2008-11-14 19:11:49 -08:00
config.mak.in Makefile: introduce NO_PTHREADS 2008-12-02 15:29:12 -08:00
configure.ac Makefile: introduce NO_PTHREADS 2008-12-02 15:29:12 -08:00
connect.c connect.c: add a way for git-daemon to pass an error back to client 2008-11-02 01:54:29 -07:00
convert.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
copy.c
COPYING
csum-file.c
csum-file.h
ctype.c
daemon.c daemon: deglobalize variable 'directory' 2008-11-23 19:56:36 -08:00
date.c date/time: do not get confused by fractional seconds 2008-11-13 09:06:58 -08:00
decorate.c
decorate.h
delta.h
diff-delta.c
diff-lib.c
diff-no-index.c
diff.c diff: fix handling of binary rewrite diffs 2008-12-09 22:14:25 -08:00
diff.h userdiff: require explicitly allowing textconv 2008-10-26 14:09:48 -07:00
diffcore-break.c
diffcore-delta.c
diffcore-order.c
diffcore-pickaxe.c
diffcore-rename.c Add file delete/create info when we overflow rename_limit 2008-10-28 08:58:42 -07:00
diffcore.h Merge branch 'maint' 2008-11-02 16:36:40 -08:00
dir.c
dir.h
dump-cache-tree.c
editor.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
entry.c
environment.c Add cache preload facility 2008-11-14 19:11:49 -08:00
exec_cmd.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
exec_cmd.h
fast-import.c
fetch-pack.h
fixup-builtins
fsck.c Merge branch 'maint' 2008-11-11 14:49:50 -08:00
fsck.h
generate-cmdlist.sh generate-cmdlist.sh: avoid selecting synopsis at wrong place 2008-11-30 18:16:32 -08:00
git-add--interactive.perl add -p: warn if only binary changes present 2008-10-26 16:20:24 -07:00
git-am.sh git-am: rename apply_opt_extra file to apply-opt 2008-12-05 20:02:10 -08:00
git-archimport.perl
git-bisect.sh Documentation: describe how to "bisect skip" a range of commits 2008-12-02 15:29:12 -08:00
git-compat-util.h
git-cvsexportcommit.perl
git-cvsimport.perl
git-cvsserver.perl
git-filter-branch.sh filter-branch: use git rev-parse -q 2008-12-03 14:27:17 -08:00
git-instaweb.sh
git-lost-found.sh lost-found: use git rev-parse -q 2008-12-03 14:27:17 -08:00
git-merge-octopus.sh
git-merge-one-file.sh
git-merge-resolve.sh
git-mergetool.sh
git-parse-remote.sh
git-pull.sh pull: use git rev-parse -q 2008-12-03 14:27:17 -08:00
git-quiltimport.sh
git-rebase--interactive.sh Merge branch 'sh/rebase-i-p' 2008-11-02 16:36:33 -08:00
git-rebase.sh rebase: use git rev-parse -q 2008-12-03 14:27:17 -08:00
git-relink.perl
git-repack.sh repack: only unpack-unreachable if we are deleting redundant packs 2008-11-14 21:39:10 -08:00
git-request-pull.sh request-pull: make usage string match manpage 2008-11-17 02:27:18 -08:00
git-send-email.perl send-email: do not reverse the command line arguments 2008-11-30 22:38:20 -08:00
git-sh-setup.sh
git-stash.sh Revert "git-stash: use git rev-parse -q" 2008-12-07 17:30:35 -08:00
git-submodule.sh submodule: use git rev-parse -q 2008-12-03 14:27:18 -08:00
git-svn.perl git-svn: Make branch use correct svn-remote 2008-12-03 01:54:24 -08:00
GIT-VERSION-GEN
git-web--browse.sh
git.c Make chdir failures visible 2008-12-04 18:05:51 -08:00
git.spec.in Include git-gui--askpass in git-gui RPM package 2008-12-01 00:54:16 -08:00
graph.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
graph.h
grep.c Merge branch 'maint' 2008-11-11 14:49:50 -08:00
grep.h
hash-object.c Fix non-literal format in printf-style calls 2008-11-11 14:50:02 -08:00
hash.c
hash.h
help.c
help.h
http-push.c make alloc_ref_from_str() the new alloc_ref() 2008-10-18 06:53:47 -07:00
http-walker.c
http.c Merge branch 'maint' 2008-12-07 15:13:02 -08:00
http.h
ident.c Add backslash to list of 'crud' characters in real name 2008-12-02 15:29:13 -08:00
imap-send.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
index-pack.c Merge branch 'np/pack-safer' 2008-11-12 22:26:35 -08:00
INSTALL Makefile: add install-man rules (quick and normal) 2008-11-02 20:46:52 -08:00
levenshtein.c Document levenshtein.c 2008-11-23 19:23:34 -08:00
levenshtein.h
list-objects.c
list-objects.h
ll-merge.c merge-recursive: use strbuf_expand() instead of interpolate() 2008-11-23 19:55:52 -08:00
ll-merge.h
lockfile.c Enhance hold_lock_file_for_{update,append}() API 2008-10-19 12:35:37 -07:00
log-tree.c Fix machine-parseability of 'git log --source' 2008-11-16 00:24:41 -08:00
log-tree.h Add a 'source' decorator for commits 2008-11-04 00:08:03 -08:00
mailmap.c
mailmap.h
Makefile Install git-stage in exec-path 2008-12-03 00:30:34 -08:00
match-trees.c
merge-file.c Always initialize xpparam_t to 0 2008-10-25 12:09:31 -07:00
merge-index.c
merge-recursive.c Report symlink failures in merge-recursive 2008-12-04 18:05:51 -08:00
merge-recursive.h
merge-tree.c
mktag.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
mktree.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
name-hash.c
object.c
object.h
pack-check.c
pack-redundant.c
pack-refs.c Enhance hold_lock_file_for_{update,append}() API 2008-10-19 12:35:37 -07:00
pack-refs.h
pack-revindex.c make find_pack_revindex() aware of the nasty world 2008-11-02 15:22:35 -08:00
pack-revindex.h
pack-write.c
pack.h
pager.c
parse-options.c Teach/Fix pull/fetch -q/-v options 2008-11-14 17:18:32 -08:00
parse-options.h Teach/Fix pull/fetch -q/-v options 2008-11-14 17:18:32 -08:00
patch-delta.c
patch-id.c
patch-ids.c
patch-ids.h
path.c Fix non-literal format in printf-style calls 2008-11-11 14:43:59 -08:00
pkt-line.c
pkt-line.h
preload-index.c Makefile: introduce NO_PTHREADS 2008-12-02 15:29:12 -08:00
pretty.c builtin-blame: Reencode commit messages according to git-log rules. 2008-10-21 14:09:34 -07:00
progress.c
progress.h
quote.c
quote.h
reachable.c
reachable.h
read-cache.c read-cache.c: typofix in comment 2008-12-07 19:08:23 -08:00
README
reflog-walk.c
reflog-walk.h
refs.c Merge branch 'maint' 2008-11-11 14:49:50 -08:00
refs.h
RelNotes Start 1.6.0.5 cycle 2008-11-12 15:03:03 -08:00
remote.c Merge branch 'mk/maint-cg-push' 2008-11-12 22:26:24 -08:00
remote.h remote: add a new 'origin' variable to the struct 2008-11-11 14:19:29 -08:00
rerere.c Make some of fwrite/fclose/write/close failures visible 2008-12-04 18:05:41 -08:00
rerere.h
revision.c Merge branch 'maint' 2008-11-14 22:12:38 -08:00
revision.h revision traversal: '--simplify-by-decoration' 2008-11-04 00:45:34 -08:00
run-command.c
run-command.h
send-pack.h
server-info.c Use git_pathdup instead of xstrdup(git_path(...)) 2008-10-30 17:52:24 -07:00
setup.c Make chdir failures visible 2008-12-04 18:05:51 -08:00
sha1_file.c Merge branch 'bc/maint-keep-pack' into maint 2008-12-02 23:00:04 -08:00
sha1_name.c Merge branch 'ar/maint-mksnpath' into HEAD 2008-10-26 22:24:44 -07:00
sha1-lookup.c
sha1-lookup.h
shallow.c
shell.c
shortlog.h
show-index.c
sideband.c
sideband.h
strbuf.c add strbuf_expand_dict_cb(), a helper for simple cases 2008-11-23 19:55:47 -08:00
strbuf.h add strbuf_expand_dict_cb(), a helper for simple cases 2008-11-23 19:55:47 -08:00
string-list.c
string-list.h
symlinks.c
tag.c
tag.h
tar.h
test-chmtime.c Add --verbose|-v to test-chmtime 2008-10-31 00:19:52 -07:00
test-date.c
test-delta.c
test-genrandom.c
test-match-trees.c
test-parse-options.c
test-path-utils.c
test-sha1.c
test-sha1.sh
thread-utils.c
thread-utils.h
trace.c
transport.c Merge branch 'rs/alloc-ref' 2008-10-21 17:58:01 -07:00
transport.h
tree-diff.c
tree-walk.c
tree-walk.h
tree.c
tree.h
unpack-file.c
unpack-trees.c Fix non-literal format in printf-style calls 2008-11-11 14:43:59 -08:00
unpack-trees.h
update-server-info.c
upload-pack.c
usage.c
userdiff.c userdiff: require explicitly allowing textconv 2008-10-26 14:09:48 -07:00
userdiff.h userdiff: require explicitly allowing textconv 2008-10-26 14:09:48 -07:00
utf8.c
utf8.h
var.c
walker.c make alloc_ref_from_str() the new alloc_ref() 2008-10-18 06:53:47 -07:00
walker.h
wrapper.c
write_or_die.c
ws.c Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer 2008-10-12 12:36:19 -07:00
wt-status.c reorder ALLOW_TEXTCONV option setting 2008-12-07 19:59:25 -08:00
wt-status.h
xdiff-interface.c xdiff-interface.c: remove 10 duplicated lines 2008-11-26 10:47:41 -08:00
xdiff-interface.h add xdi_diff_hunks() for callers that only need hunk lengths 2008-10-25 12:09:31 -07:00

////////////////////////////////////////////////////////////////

	GIT - the stupid content tracker

////////////////////////////////////////////////////////////////

"git" can mean anything, depending on your mood.

 - random three-letter combination that is pronounceable, and not
   actually used by any common UNIX command.  The fact that it is a
   mispronunciation of "get" may or may not be relevant.
 - stupid. contemptible and despicable. simple. Take your pick from the
   dictionary of slang.
 - "global information tracker": you're in a good mood, and it actually
   works for you. Angels sing, and a light suddenly fills the room.
 - "goddamn idiotic truckload of sh*t": when it breaks

Git is a fast, scalable, distributed revision control system with an
unusually rich command set that provides both high-level operations
and full access to internals.

Git is an Open Source project covered by the GNU General Public License.
It was originally written by Linus Torvalds with help of a group of
hackers around the net. It is currently maintained by Junio C Hamano.

Please read the file INSTALL for installation instructions.
See Documentation/tutorial.txt to get started, then see
Documentation/everyday.txt for a useful minimum set of commands,
and "man git-commandname" for documentation of each command.
CVS users may also want to read Documentation/cvs-migration.txt.

Many Git online resources are accessible from http://git.or.cz/
including full documentation and Git related tools.

The user discussion and development of Git take place on the Git
mailing list -- everyone is welcome to post bug reports, feature
requests, comments and patches to git@vger.kernel.org. To subscribe
to the list, send an email with just "subscribe git" in the body to
majordomo@vger.kernel.org. The mailing list archives are available at
http://marc.theaimsgroup.com/?l=git and other archival sites.

The messages titled "A note from the maintainer", "What's in
git.git (stable)" and "What's cooking in git.git (topics)" and
the discussion following them on the mailing list give a good
reference for project status, development direction and
remaining tasks.