A fork of Git containing Microsoft-specific patches.
Перейти к файлу
Linus Torvalds 644797119d copy vs rename detection: avoid unnecessary O(n*m) loops
The core rename detection had some rather stupid code to check if a
pathname was used by a later modification or rename, which basically
walked the whole pathname space for all renames for each rename, in
order to tell whether it was a pure rename (no remaining users) or
should be considered a copy (other users of the source file remaining).

That's really silly, since we can just keep a count of users around, and
replace all those complex and expensive loops with just testing that
simple counter (but this all depends on the previous commit that shared
the diff_filespec data structure by using a separate reference count).

Note that the reference count is not the same as the rename count: they
behave otherwise rather similarly, but the reference count is tied to
the allocation (and decremented at de-allocation, so that when it turns
zero we can get rid of the memory), while the rename count is tied to
the renames and is decremented when we find a rename (so that when it
turns zero we know that it was a rename, not a copy).

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-10-26 23:18:06 -07:00
Documentation Merge branch 'db/fetch-pack' 2007-10-24 21:59:50 -07:00
arm War on whitespace 2007-06-07 00:04:01 -07:00
compat Define compat version of mkdtemp for systems lacking it 2007-10-20 22:52:21 -04:00
contrib Merge branch 'db/fetch-pack' 2007-10-24 21:59:50 -07:00
git-gui Merge branch 'maint' of git://repo.or.cz/git-gui into maint 2007-10-20 23:19:22 -04:00
gitweb gitweb: speed up project listing on large work trees by limiting find depth 2007-10-17 01:23:33 -04:00
mozilla-sha1 War on whitespace 2007-06-07 00:04:01 -07:00
perl Install man3 manpages to $PREFIX/share/man/man3 even for site installs 2007-08-23 01:02:49 -07:00
ppc War on whitespace 2007-06-07 00:04:01 -07:00
t Test suite: reset TERM to its previous value after testing. 2007-10-26 23:17:19 -07:00
templates hooks-pre-commit: use \t, rather than a literal TAB in regexp 2007-10-26 23:16:51 -07:00
xdiff Per-path attribute based hunk header selection. 2007-07-06 01:20:47 -07:00
.gitignore makefile: Add a cscope target 2007-10-15 21:09:15 -04:00
.mailmap Update .mailmap 2007-07-14 13:44:58 -07:00
COPYING
GIT-VERSION-GEN GIT 1.5.3.4 2007-10-03 02:33:48 -07:00
INSTALL Mention 'cpio' dependency in INSTALL 2007-10-02 17:35:29 -07:00
Makefile Add 'diffcore.h' to LIB_H 2007-10-26 23:18:05 -07:00
README Update README to point at a few key periodical messages to the list 2007-03-25 17:42:32 -07:00
RelNotes Whip post 1.5.3.4 maintenance series into shape. 2007-10-15 22:29:50 -04:00
alloc.c Clean up object creation to use more common code 2007-04-16 23:36:16 -07:00
archive-tar.c Fix the expansion pattern of the pseudo-static path buffer. 2007-09-20 22:19:17 -07:00
archive-zip.c preserve executable bits in zip archives 2007-09-18 14:56:55 -07:00
archive.h archive: specfile support (--pretty=format: in archive files) 2007-09-03 16:46:16 -07:00
attr.c Merge branch 'maint' 2007-10-19 01:18:55 -04:00
attr.h Fix funny types used in attribute value representation 2007-04-18 16:17:13 -07:00
base85.c decode_85(): fix missing return. 2007-05-30 15:03:50 -07:00
blob.c Clean up object creation to use more common code 2007-04-16 23:36:16 -07:00
blob.h
builtin-add.c Use xmemdupz() in many places. 2007-09-18 17:42:17 -07:00
builtin-annotate.c War on whitespace 2007-06-07 00:04:01 -07:00
builtin-apply.c Correct some sizeof(size_t) != sizeof(unsigned long) typing errors 2007-10-22 00:00:40 -04:00
builtin-archive.c Correct some sizeof(size_t) != sizeof(unsigned long) typing errors 2007-10-22 00:00:40 -04:00
builtin-blame.c Teach core.autocrlf to 'git blame' 2007-10-18 01:41:29 -04:00
builtin-branch.c Rework pretty_print_commit to use strbufs instead of custom buffers. 2007-09-10 12:49:50 -07:00
builtin-bundle.c Move bundle specific stuff into bundle.[ch] 2007-09-19 03:22:30 -07:00
builtin-cat-file.c Cleanup variables in cat-file 2007-04-22 00:43:24 -07:00
builtin-check-attr.c Full rework of quote_c_style and write_name_quoted. 2007-09-20 23:45:49 -07:00
builtin-check-ref-format.c
builtin-checkout-index.c Full rework of quote_c_style and write_name_quoted. 2007-09-20 23:45:49 -07:00
builtin-commit-tree.c Now that cache.h needs strbuf.h, remove useless includes. 2007-09-16 17:30:03 -07:00
builtin-config.c git-config: print error message if the config file cannot be read 2007-10-18 01:35:33 -04:00
builtin-count-objects.c Simplify index access condition in count-objects, pack-redundant 2007-05-29 23:30:11 -07:00
builtin-describe.c Teach git-describe how to run name-rev 2007-05-21 23:56:28 -07:00
builtin-diff-files.c Removing -n option from git-diff-files documentation 2007-04-26 22:43:10 -07:00
builtin-diff-index.c War on whitespace 2007-06-07 00:04:01 -07:00
builtin-diff-tree.c Allow git-diff exit with codes similar to diff(1) 2007-03-14 16:21:19 -07:00
builtin-diff.c git-diff: resurrect the traditional empty "diff --git" behaviour 2007-08-31 23:30:14 -07:00
builtin-fetch--tool.c Improved const correctness for strings 2007-10-21 01:43:27 -04:00
builtin-fetch-pack.c Ensure builtin-fetch honors {fetch,transfer}.unpackLimit 2007-09-19 03:22:31 -07:00
builtin-fetch.c Avoid scary errors about tagged trees/blobs during git-fetch 2007-10-19 03:47:07 -04:00
builtin-fmt-merge-msg.c Use xmemdupz() in many places. 2007-09-18 17:42:17 -07:00
builtin-for-each-ref.c Merge branch 'ph/strbuf' 2007-10-03 03:06:02 -07:00
builtin-fsck.c fsck --lost-found: write blob's contents, not their SHA-1 2007-07-22 15:59:27 -07:00
builtin-gc.c git-gc: improve wording of --auto notification 2007-10-18 22:23:50 -04:00
builtin-grep.c Split grep arguments in a way that does not requires to add /dev/null. 2007-09-14 15:16:43 -07:00
builtin-http-fetch.c Modularize commit-walker 2007-09-19 03:22:30 -07:00
builtin-init-db.c git-init: autodetect core.symlinks 2007-08-31 00:25:04 -07:00
builtin-log.c Use xmemdupz() in many places. 2007-09-18 17:42:17 -07:00
builtin-ls-files.c Merge branch 'ph/strbuf' 2007-10-03 03:06:02 -07:00
builtin-ls-tree.c Full rework of quote_c_style and write_name_quoted. 2007-09-20 23:45:49 -07:00
builtin-mailinfo.c Improved const correctness for strings 2007-10-21 01:43:27 -04:00
builtin-mailsplit.c More missing static 2007-06-08 02:37:19 -07:00
builtin-merge-base.c Make every builtin-*.c file #include "builtin.h" 2007-07-14 22:44:09 -07:00
builtin-merge-file.c Make every builtin-*.c file #include "builtin.h" 2007-07-14 22:44:09 -07:00
builtin-mv.c Use xmemdupz() in many places. 2007-09-18 17:42:17 -07:00
builtin-name-rev.c name-rev: Fix non-shortest description 2007-08-27 22:36:43 -07:00
builtin-pack-objects.c Merge branch 'jc/autogc' 2007-10-03 03:05:32 -07:00
builtin-pack-refs.c Make every builtin-*.c file #include "builtin.h" 2007-07-14 22:44:09 -07:00
builtin-prune-packed.c
builtin-prune.c minor git-prune optimization 2007-03-20 22:17:47 -07:00
builtin-push.c Fix 'push --all branch...' error handling 2007-10-16 00:25:56 -04:00
builtin-read-tree.c Clean-up read-tree error condition. 2007-08-16 21:19:06 -07:00
builtin-reflog.c git-update-ref: add --no-deref option for overwriting/detaching ref 2007-05-10 15:24:44 -07:00
builtin-rerere.c rerere: Fix use of an empty strbuf.buf 2007-09-26 23:34:01 -07:00
builtin-reset.c Improved const correctness for strings 2007-10-21 01:43:27 -04:00
builtin-rev-list.c Merge branch 'mv/unknown' 2007-10-03 04:28:24 -07:00
builtin-rev-parse.c Clean up work-tree handling 2007-08-01 00:38:31 -07:00
builtin-revert.c Use xmemdupz() in many places. 2007-09-18 17:42:17 -07:00
builtin-rm.c Simplify cache API 2007-09-14 01:02:21 -07:00
builtin-runstatus.c Make every builtin-*.c file #include "builtin.h" 2007-07-14 22:44:09 -07:00
builtin-shortlog.c Use xmemdupz() in many places. 2007-09-18 17:42:17 -07:00
builtin-show-branch.c Rework pretty_print_commit to use strbufs instead of custom buffers. 2007-09-10 12:49:50 -07:00
builtin-show-ref.c Make every builtin-*.c file #include "builtin.h" 2007-07-14 22:44:09 -07:00
builtin-stripspace.c Clean up stripspace a bit, use strbuf even more. 2007-09-27 00:33:33 -07:00
builtin-symbolic-ref.c symbolic-ref, update-ref: do not refuse reflog message with LF 2007-07-29 23:28:55 -07:00
builtin-tag.c strbuf_read_file enhancement, and use it. 2007-09-29 21:26:10 -07:00
builtin-tar-tree.c
builtin-unpack-objects.c Ensure return value from xread() is always stored into an ssize_t 2007-05-15 21:16:03 -07:00
builtin-update-index.c double free in builtin-update-index.c 2007-09-29 01:40:19 -07:00
builtin-update-ref.c Function for updating refs. 2007-09-05 11:29:33 -07:00
builtin-upload-archive.c
builtin-verify-pack.c
builtin-verify-tag.c verify-tag: also grok CR/LFs in the tag signature 2007-09-03 16:44:35 -07:00
builtin-write-tree.c Fix racy-git handling in git-write-tree. 2007-08-24 18:53:02 -07:00
builtin.h Merge branch 'master' into db/fetch-pack 2007-10-16 00:15:25 -04:00
bundle.c Move bundle specific stuff into bundle.[ch] 2007-09-19 03:22:30 -07:00
bundle.h Move bundle specific stuff into bundle.[ch] 2007-09-19 03:22:30 -07:00
cache-tree.c Small cache_tree_write refactor. 2007-09-26 02:27:06 -07:00
cache-tree.h Small cache_tree_write refactor. 2007-09-26 02:27:06 -07:00
cache.h Merge branch 'master' into db/fetch-pack 2007-10-16 00:15:25 -04:00
check-builtins.sh
check-racy.c
color.c
color.h
combine-diff.c Full rework of quote_c_style and write_name_quoted. 2007-09-20 23:45:49 -07:00
commit.c Merge branch 'maint' 2007-10-15 22:31:47 -04:00
commit.h Rework pretty_print_commit to use strbufs instead of custom buffers. 2007-09-10 12:49:50 -07:00
config.c Merge branch 'cr/tag' 2007-08-10 23:17:46 -07:00
config.mak.in War on whitespace 2007-06-07 00:04:01 -07:00
configure.ac the ar tool is called gar on some systems 2007-10-02 21:10:25 -07:00
connect.c Merge branch 'master' into db/fetch-pack 2007-10-16 00:15:25 -04:00
convert.c Fix in-place editing functions in convert.c 2007-10-15 21:38:09 -04:00
copy.c War on whitespace 2007-06-07 00:04:01 -07:00
csum-file.c More static 2007-06-13 02:02:10 -07:00
csum-file.h More static 2007-06-13 02:02:10 -07:00
ctype.c War on whitespace 2007-06-07 00:04:01 -07:00
daemon.c Define NI_MAXSERV if not defined by operating system 2007-10-18 21:04:44 -04:00
date.c parse_date_format(): convert a format name to an enum date_mode 2007-09-29 20:31:59 -07:00
decorate.c Fix a copy-n-paste bug in the object decorator code. 2007-04-20 19:16:12 -07:00
decorate.h Add a generic "object decorator" interface, and make object refs use it 2007-04-16 16:51:09 -07:00
delta.h Support fetching the memory usage of a delta index 2007-07-12 14:32:35 -07:00
diff-delta.c diff-delta.c: Rationalize culling of hash buckets 2007-09-09 17:16:49 -07:00
diff-lib.c diff --no-index: do not forget to run diff_setup_done() 2007-09-14 12:12:32 -07:00
diff.c copy vs rename detection: avoid unnecessary O(n*m) loops 2007-10-26 23:18:06 -07:00
diff.h diff: squelch empty diffs even more 2007-08-14 22:34:58 -07:00
diffcore-break.c Fix diffcore-break total breakage 2007-10-21 01:59:42 -04:00
diffcore-delta.c optimize diffcore-delta by sorting hash entries. 2007-10-04 00:05:36 -07:00
diffcore-order.c Use xmemdupz() in many places. 2007-09-18 17:42:17 -07:00
diffcore-pickaxe.c War on whitespace 2007-06-07 00:04:01 -07:00
diffcore-rename.c copy vs rename detection: avoid unnecessary O(n*m) loops 2007-10-26 23:18:06 -07:00
diffcore.h copy vs rename detection: avoid unnecessary O(n*m) loops 2007-10-26 23:18:06 -07:00
dir.c Merge branch 'db/fetch-pack' 2007-10-24 21:59:50 -07:00
dir.h Introduce remove_dir_recursively() 2007-09-30 00:04:39 -07:00
dump-cache-tree.c
entry.c Correct some sizeof(size_t) != sizeof(unsigned long) typing errors 2007-10-22 00:00:40 -04:00
environment.c Merge branch 'cr/tag' 2007-08-10 23:17:46 -07:00
exec_cmd.c
exec_cmd.h Make macros to prevent double-inclusion in headers consistent. 2007-04-29 02:05:11 -07:00
fast-import.c fast-import.c: fix regression due to strbuf conversion 2007-10-26 15:28:09 -07:00
fetch-pack.h Always obtain fetch-pack arguments from struct fetch_pack_args 2007-09-19 03:22:31 -07:00
fixup-builtins Start deprecating "git-command" in favor of "git command" 2007-07-02 22:39:10 -07:00
generate-cmdlist.sh More static 2007-06-13 02:02:10 -07:00
git-add--interactive.perl git add -i: Remove unused variables 2007-10-15 21:00:40 -04:00
git-am.sh Merge branch 'jc/am-quiet' 2007-10-18 03:45:05 -04:00
git-archimport.perl Make git-archimport log entries more consistent 2007-08-30 19:22:02 -07:00
git-bisect.sh Rewrite "git-frotz" to "git frotz" 2007-07-02 22:52:14 -07:00
git-checkout.sh post-checkout hook, tests, and docs 2007-09-29 21:11:21 -07:00
git-clean.sh Supplant the "while case ... break ;; esac" idiom 2007-09-23 16:12:00 -07:00
git-clone.sh git-clone: improve error message if curl program is missing or not executable 2007-09-13 22:39:22 -07:00
git-commit.sh Merge branch 'jc/autogc' 2007-10-03 03:05:32 -07:00
git-compat-util.h Define compat version of mkdtemp for systems lacking it 2007-10-20 22:52:21 -04:00
git-cvsexportcommit.perl Merge branch 'maint' 2007-10-19 01:18:55 -04:00
git-cvsimport.perl (cvs|svn)import: Ask git-tag to overwrite old tags. 2007-09-07 21:02:39 -07:00
git-cvsserver.perl cvsserver: Use exit 1 instead of die when req_Root fails. 2007-10-18 03:02:15 -04:00
git-filter-branch.sh filter-branch: update current branch when rewritten 2007-10-16 22:47:51 -04:00
git-instaweb.sh Merge branch 'maint' 2007-10-16 23:32:03 -04:00
git-lost-found.sh Rewrite "git-frotz" to "git frotz" 2007-07-02 22:52:14 -07:00
git-ls-remote.sh Supplant the "while case ... break ;; esac" idiom 2007-09-23 16:12:00 -07:00
git-merge-octopus.sh Rewrite "git-frotz" to "git frotz" 2007-07-02 22:52:14 -07:00
git-merge-one-file.sh Fix merge-one-file for our-side-added/our-side-removed cases 2007-07-08 18:24:19 -07:00
git-merge-ours.sh Rewrite "git-frotz" to "git frotz" 2007-07-02 22:52:14 -07:00
git-merge-resolve.sh Fixing comment in merge strategies 2007-08-30 17:18:22 -07:00
git-merge-stupid.sh Fixing comment in merge strategies 2007-08-30 17:18:22 -07:00
git-merge.sh Merge branch 'lh/merge' 2007-10-03 03:05:58 -07:00
git-mergetool.sh mergetool: Fix typo in options passed to kdiff3 2007-09-28 22:26:05 -04:00
git-parse-remote.sh Rewrite "git-frotz" to "git frotz" 2007-07-02 22:52:14 -07:00
git-pull.sh Make git-pull complain and give advice when there is nothing to merge with 2007-10-02 17:27:48 -07:00
git-quiltimport.sh quiltimport: Skip non-existent patches 2007-09-27 16:19:19 -07:00
git-rebase--interactive.sh git-rebase--interactive.sh: Quote arguments to test 2007-10-16 00:59:17 -04:00
git-rebase.sh Merge branch 'maint' 2007-09-23 17:13:55 -07:00
git-relink.perl
git-remote.perl Merge branch 'maint' 2007-10-26 23:17:23 -07:00
git-repack.sh Merge branch 'jc/autogc' 2007-10-03 03:05:32 -07:00
git-request-pull.sh Rewrite "git-frotz" to "git frotz" 2007-07-02 22:52:14 -07:00
git-send-email.perl git-send-email: add a new sendemail.to configuration variable 2007-10-24 20:13:07 -07:00
git-sh-setup.sh git-sh-setup: typofix in comments 2007-09-15 16:33:22 -07:00
git-stash.sh Paper bag fix diff invocation in 'git stash show' 2007-10-19 02:18:14 -04:00
git-submodule.sh Fix adding a submodule with a remote url 2007-09-29 23:36:02 -07:00
git-svn.perl git-svn: simplify the handling of fatal errors 2007-10-17 02:47:37 -04:00
git-svnimport.perl Fix pool handling in git-svnimport to avoid memory leaks. 2007-09-24 23:00:52 -07:00
git.c Merge branch 'db/fetch-pack' 2007-10-24 21:59:50 -07:00
git.spec.in GIT 1.5.3.1: obsolete git-p4 in RPM spec file. 2007-09-03 01:28:37 -07:00
gitk gitk: Fix "can't unset prevlines(...)" Tcl error 2007-10-21 12:58:42 +10:00
grep.c Move buffer_is_binary() to xdiff-interface.h 2007-06-15 23:27:23 -07:00
grep.h
hash-object.c
help.c War on whitespace 2007-06-07 00:04:01 -07:00
http-push.c Support 'push --dry-run' for http transport 2007-10-16 00:36:35 -04:00
http-walker.c Modularize commit-walker 2007-09-19 03:22:30 -07:00
http.c Properly cleanup in http_cleanup so builtin-fetch does not segfault 2007-09-19 03:22:31 -07:00
http.h Make function to refill http queue a callback 2007-09-19 03:22:30 -07:00
ident.c Improved hint on how to set identity 2007-08-13 23:34:38 -07:00
imap-send.c strbuf change: be sure ->buf is never ever NULL. 2007-09-29 02:13:33 -07:00
index-pack.c Use xmkstemp() instead of mkstemp() 2007-08-14 22:20:26 -07:00
interpolate.c Merge branch 'mv/unknown' 2007-10-03 04:28:24 -07:00
interpolate.h Lift 16kB limit of log message output 2007-06-13 00:41:21 -07:00
list-objects.c rename dirlink to gitlink. 2007-05-21 23:34:54 -07:00
list-objects.h
lockfile.c fully resolve symlinks when creating lockfiles 2007-07-27 00:02:05 -07:00
log-tree.c Merge branch 'maint' 2007-10-15 22:31:47 -04:00
log-tree.h
mailmap.c War on whitespace 2007-06-07 00:04:01 -07:00
mailmap.h Split out mailmap handling out of shortlog 2007-04-29 02:05:06 -07:00
match-trees.c Improved const correctness for strings 2007-10-21 01:43:27 -04:00
merge-file.c Future-proof source for changes in xdemitconf_t 2007-07-06 00:22:12 -07:00
merge-index.c War on whitespace 2007-06-07 00:04:01 -07:00
merge-recursive.c Merge branch 'ph/strbuf' 2007-10-03 03:06:02 -07:00
merge-tree.c Future-proof source for changes in xdemitconf_t 2007-07-06 00:22:12 -07:00
mktag.c Now that cache.h needs strbuf.h, remove useless includes. 2007-09-16 17:30:03 -07:00
mktree.c Rework unquote_c_style to work on a strbuf. 2007-09-20 23:32:18 -07:00
object-refs.c War on whitespace 2007-06-07 00:04:01 -07:00
object.c Don't assume tree entries that are not dirs are blobs 2007-06-06 15:43:18 -07:00
object.h War on whitespace 2007-06-07 00:04:01 -07:00
pack-check.c pack-check: Sort entries by pack offset before unpacking them. 2007-06-06 16:04:02 -07:00
pack-redundant.c War on whitespace 2007-06-07 00:04:01 -07:00
pack-write.c Refactor index-pack "keep $sha1" handling for reuse 2007-09-19 03:22:30 -07:00
pack.h Refactor index-pack "keep $sha1" handling for reuse 2007-09-19 03:22:30 -07:00
pager.c pager: find out pager setting from configuration 2007-08-06 21:10:59 -07:00
patch-delta.c
patch-id.c War on whitespace 2007-06-07 00:04:01 -07:00
patch-ids.c Refactor patch-id filtering out of git-cherry and git-format-patch. 2007-04-11 20:02:03 -07:00
patch-ids.h Refactor patch-id filtering out of git-cherry and git-format-patch. 2007-04-11 20:02:03 -07:00
path-list.c path-list.c: always free strdup'ed paths 2007-08-15 13:43:08 -07:00
path-list.h path-list.c: always free strdup'ed paths 2007-08-15 13:43:08 -07:00
path.c Add is_absolute_path() and make_absolute_path() 2007-08-01 00:38:30 -07:00
peek-remote.c connect: display connection progress 2007-05-16 12:48:18 -07:00
pkt-line.c War on whitespace 2007-06-07 00:04:01 -07:00
pkt-line.h
progress.c Fix the progress code to output LF only when it is really needed 2007-05-23 11:30:49 -07:00
progress.h Fix the progress code to output LF only when it is really needed 2007-05-23 11:30:49 -07:00
quote.c strbuf change: be sure ->buf is never ever NULL. 2007-09-29 02:13:33 -07:00
quote.h sq_quote_argv and add_to_string rework with strbuf's. 2007-09-21 03:31:18 -07:00
reachable.c Merge branch 'maint' 2007-07-02 17:12:48 -07:00
reachable.h
read-cache.c Merge branch 'maint' 2007-10-18 03:11:17 -04:00
receive-pack.c Merge branch 'db/fetch-pack' 2007-10-24 21:59:50 -07:00
reflog-walk.c git log -g: Complain, but do not fail, when no reflogs are there 2007-07-24 17:28:10 -07:00
reflog-walk.h git log -g: Complain, but do not fail, when no reflogs are there 2007-07-24 17:28:10 -07:00
refs.c Merge branch 'master' into db/fetch-pack 2007-10-16 00:15:25 -04:00
refs.h Function for updating refs. 2007-09-05 11:29:33 -07:00
remote.c Merge branch 'db/fetch-pack' 2007-10-24 21:59:50 -07:00
remote.h Remove duplicate ref matches in fetch 2007-10-15 20:28:06 -04:00
revision.c Merge branch 'maint' 2007-10-15 22:31:47 -04:00
revision.h Add --log-size to git log to print message size 2007-08-14 01:59:33 -07:00
run-command.c Allow environment variables to be unset in the processes started by run_command 2007-05-23 22:38:44 -07:00
run-command.h Allow environment variables to be unset in the processes started by run_command 2007-05-23 22:38:44 -07:00
send-pack.c Merge branch 'db/fetch-pack' 2007-10-24 21:59:50 -07:00
server-info.c Fix core.sharedRepository = 2 2007-07-11 13:52:16 -07:00
setup.c Fix setup_git_directory_gently() with relative GIT_DIR & GIT_WORK_TREE 2007-10-16 20:18:04 -04:00
sha1_file.c Merge branch 'ph/strbuf' 2007-10-03 03:06:02 -07:00
sha1_name.c Make show_rfc2822_date() just another date output format. 2007-07-13 23:14:52 -07:00
shallow.c War on whitespace 2007-06-07 00:04:01 -07:00
shell.c Support cvs via git-shell 2007-10-15 21:25:42 -04:00
show-index.c Use PRIuMAX instead of 'unsigned long long' in show-index 2007-10-21 02:16:57 -04:00
sideband.c
sideband.h
strbuf.c strbuf_read_file enhancement, and use it. 2007-09-29 21:26:10 -07:00
strbuf.h strbuf_read_file enhancement, and use it. 2007-09-29 21:26:10 -07:00
symlinks.c Add has_symlink_leading_path() function. 2007-05-11 22:11:07 -07:00
tag.c Use xmemdupz() in many places. 2007-09-18 17:42:17 -07:00
tag.h
tar.h
test-absolute-path.c Add is_absolute_path() and make_absolute_path() 2007-08-01 00:38:30 -07:00
test-chmtime.c
test-date.c
test-delta.c Fix compilation of test-delta 2007-05-01 02:59:08 -07:00
test-genrandom.c simple random data generator for tests 2007-04-11 19:23:32 -07:00
test-match-trees.c A new merge stragety 'subtree'. 2007-04-07 02:29:40 -07:00
test-sha1.c
test-sha1.sh
trace.c sq_quote_argv and add_to_string rework with strbuf's. 2007-09-21 03:31:18 -07:00
transport.c Support 'push --dry-run' for http transport 2007-10-16 00:36:35 -04:00
transport.h Merge branch 'master' into db/fetch-pack 2007-10-16 00:15:25 -04:00
tree-diff.c Fix diffcore-break total breakage 2007-10-21 01:59:42 -04:00
tree-walk.c War on whitespace 2007-06-07 00:04:01 -07:00
tree-walk.h Two trivial -Wcast-qual fixes 2007-06-22 23:19:43 -07:00
tree.c Optimize "diff --cached" performance. 2007-08-10 11:44:23 -07:00
tree.h
unpack-file.c Use xmkstemp() instead of mkstemp() 2007-08-14 22:20:26 -07:00
unpack-trees.c Optimize the three-way merge of git-read-tree 2007-08-10 23:02:14 -07:00
unpack-trees.h Move old index entry removal from "unpack_trees()" into the individual functions 2007-08-10 13:59:19 -07:00
update-server-info.c
upload-pack.c Even more missing static 2007-06-08 02:54:57 -07:00
usage.c Rename warn() to warning() to fix symbol conflicts on BSD and Mac OS 2007-03-31 01:11:11 -07:00
utf8.c wcwidth redeclaration 2007-05-07 22:02:40 -07:00
utf8.h
var.c War on whitespace 2007-06-07 00:04:01 -07:00
walker.c Merge branch 'master' into db/fetch-pack 2007-10-16 00:15:25 -04:00
walker.h Modularize commit-walker 2007-09-19 03:22:30 -07:00
write_or_die.c Don't fflush(stdout) when it's not helpful 2007-06-30 20:16:12 -07:00
wt-status.c Fix the rename detection limit checking 2007-09-14 12:12:57 -07:00
wt-status.h
xdiff-interface.c Per-path attribute based hunk header selection. 2007-07-06 01:20:47 -07:00
xdiff-interface.h Per-path attribute based hunk header selection. 2007-07-06 01:20:47 -07:00

README

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

	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.