summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-11-03git-reset: do not be confused if there is nothing to resetLibravatar Johannes Schindelin2-6/+25
The purpose of the function update_index_from_diff() (which is the callback function we give do_diff_cache()) is to update those index entries which differ from the given commit. Since do_diff_cache() plays games with the in-memory index, this function discarded the cache and reread it. Then, back in the function read_from_tree() we wrote the index. Of course, this broke down when there were no changes and update_index_from_diff() was not called, and therefore the mangled index was not discarded. The solution is to move the index writing into the function update_index_from_diff(). Noticed by Björn Steinbrink. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-03git-clone: honor "--" to end argument parsingLibravatar Heikki Orsila2-2/+5
Signed-off-by: Heikki Orsila <heikki.orsila@iki.fi>
2007-11-03git-svn: sort the options in the --help message.Libravatar Benoit Sigoure1-1/+1
"git svn <cmd> --help" gave options in the order they were found in a Perl hash, which meant "randomly" to humans. Signed-off-by: Benoit Sigoure <tsuna@lrde.epita.fr> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-03builtin-fetch: Add "-q" as a synonym for "--quiet"Libravatar Steven Grimm1-1/+1
"-q" is the very first option described in the git-fetch manpage, and it isn't supported. Signed-off-by: Steven Grimm <koreth@midwinter.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-03errors: "strict subset" -> "ancestor"Libravatar J. Bruce Fields3-9/+14
The term "ancestor" is a bit more intuitive (and more consistent with the documentation) than the term "strict subset". Also, remove superfluous "ref", capitalize, and add some carriage returns, changing: error: remote 'refs/heads/master' is not a strict subset of local ref 'refs/heads/master'. maybe you are not up-to-date and need to pull first? error: failed to push to 'ssh://linux-nfs.org/~bfields/exports/git.git' to: error: remote 'refs/heads/master' is not an ancestor of local 'refs/heads/master'. Maybe you are not up-to-date and need to pull first? error: failed to push to 'ssh://linux-nfs.org/~bfields/exports/git.git' Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-02Merge branch 'maint'Libravatar Junio C Hamano7-15/+15
* maint: Fixing path quoting in git-rebase Remove unecessary hard-coding of EDITOR=':' VISUAL=':' in some test suites. Documentation: quote commit messages consistently. Remove escaping of '|' in manpage option sections
2007-11-02Merge branch 'ph/parseopt'Libravatar Junio C Hamano26-619/+938
* ph/parseopt: (24 commits) gc: use parse_options Fixed a command line option type for builtin-fsck.c Make builtin-pack-refs.c use parse_options. Make builtin-name-rev.c use parse_options. Make builtin-count-objects.c use parse_options. Make builtin-fsck.c use parse_options. Update manpages to reflect new short and long option aliases Make builtin-for-each-ref.c use parse-opts. Make builtin-symbolic-ref.c use parse_options. Make builtin-update-ref.c use parse_options Make builtin-revert.c use parse_options. Make builtin-describe.c use parse_options Make builtin-branch.c use parse_options. Make builtin-mv.c use parse-options Make builtin-rm.c use parse_options. Port builtin-add.c to use the new option parser. parse-options: allow callbacks to take no arguments at all. parse-options: Allow abbreviated options when unambiguous Add shortcuts for very often used options. parse-options: make some arguments optional, add callbacks. ... Conflicts: Makefile builtin-add.c
2007-11-02Merge branch 'np/progress'Libravatar Junio C Hamano13-138/+276
* np/progress: Show total transferred as part of throughput progress make sure throughput display gets updated even if progress doesn't move return the prune-packed progress display to the inner loop add throughput display to git-push add some copyright notice to the progress display code add throughput display to index-pack add throughput to progress display relax usage of the progress API make struct progress an opaque type prune-packed: don't call display_progress() for every file Stop displaying "Pack pack-$ID created." during git-gc Teach prune-packed to use the standard progress meter Change 'Deltifying objects' to 'Compressing objects' fix for more minor memory leaks fix const issues with some functions pack-objects.c: fix some global variable abuse and memory leaks pack-objects: no delta possible with only one object in the list cope with multiple line breaks within sideband progress messages more compact progress display
2007-11-02Fixing path quoting in git-rebaseLibravatar Jonathan del Strother1-13/+13
git-rebase used to fail when run from a path containing a space. Signed-off-by: Jonathan del Strother <jon.delStrother@bestbefore.tv> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-11-02Merge branch 'br/gccfix'Libravatar Junio C Hamano1-1/+1
* br/gccfix: transport.c: squelch a gcc 4.0.1 complaint about an uninitialized variable
2007-11-02Merge branch 'gp/maint-diffdoc'Libravatar Junio C Hamano2-9/+13
* gp/maint-diffdoc: git-diff.txt: add section "output format" describing the diff formats
2007-11-02Merge branch 'bk/maint-cvsexportcommit' into maintLibravatar Junio C Hamano1-3/+10
* bk/maint-cvsexportcommit: cvsexportcommit: fix for commits that do not have parents
2007-11-02Remove unecessary hard-coding of EDITOR=':' VISUAL=':' in some test suites.Libravatar Kristian Høgsberg2-6/+6
They are already set and exoprted by sourcing ./test-lib.sh in all test scripts. Signed-off-by: Kristian Høgsberg <krh@redhat.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-02Documentation: quote commit messages consistently.Libravatar Sergei Organov3-7/+7
Documentation quotes commit messages 14 times with double-quotes, and 7 times with single-quotes. The patch turns everything to double-quotes. A nice side effect is that documentation becomes more Windoze-friendly as AFAIK single quotes won't work there. Signed-off-by: Sergei Organov <osv@javad.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-02Remove escaping of '|' in manpage option sectionsLibravatar Jonas Fonseca2-2/+2
The escaped were ending up verbatim in the generated documentation. Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-02transport.c: squelch a gcc 4.0.1 complaint about an uninitialized variableLibravatar Blake Ramsdell1-1/+1
The variable is always set if it is going to be used; gcc just does not notice it. Signed-off-by: Blake Ramsdell <blaker@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-02gc: use parse_optionsLibravatar James Bowes1-22/+22
Signed-off-by: James Bowes <jbowes@dangerouslyinc.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-01Merge branch 'maint'Libravatar Junio C Hamano4-6/+6
* maint: git-format-patch.txt: fix explanation of an example. git-filter-branch.txt: fix a typo. git-clone.txt: Improve --depth description. gitweb: Update config file example for snapshot feature in gitweb/INSTALL
2007-11-01git-diff.txt: add section "output format" describing the diff formatsLibravatar Gerrit Pape2-9/+13
git-diff.txt includes diff-options.txt which for the -p option refers to a section "generating patches.." which is missing from the git-diff documentation. This patch adapts diff-format.txt to additionally mention the git-diff program, and includes diff-format.txt into git-diff.txt. Tino Keitel noticed this problem. Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-01Merge branch 'bk/maint-cvsexportcommit'Libravatar Junio C Hamano1-3/+10
* bk/maint-cvsexportcommit: cvsexportcommit: fix for commits that do not have parents
2007-11-01Do no colorify test output if stdout is not a terminalLibravatar Alex Riesen1-0/+1
like when the output is redirected into a file in a cron job. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-01Show total transferred as part of throughput progressLibravatar Nicolas Pitre1-3/+26
Right now it is infeasible to offer to the user a reasonable concept of when a clone will be complete as we aren't able to come up with the final pack size until after we have actually transferred the entire thing to the client. However in many cases users can work with a rough rule-of-thumb; for example it is somewhat well known that git.git is about 16 MiB today and that linux-2.6.git is over 120 MiB. We now show the total amount of data we have transferred over the network as part of the throughput meter, organizing it in "human friendly" terms like `ls -h` would do. Users can glance at this, see that the total transferred size is about 3 MiB, see the throughput of X KiB/sec, and determine a reasonable figure of about when the clone will be complete, assuming they know the rough size of the source repository or are able to obtain it. This is also a helpful indicator that there is progress being made even if we stall on a very large object. The thoughput meter may remain relatively constant and the percentage complete and object count won't be changing, but the total transferred will be increasing as additional data is received for this object. [from an initial proposal from Shawn O. Pearce] Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-01make sure throughput display gets updated even if progress doesn't moveLibravatar Nicolas Pitre1-0/+3
Currently the progress/throughput display update happens only through display_progress(). If the progress based on object count remains unchanged because a large object is being received, the latest throughput won't be displayed. The display update should occur through display_throughput() as well. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-01return the prune-packed progress display to the inner loopLibravatar Nicolas Pitre1-2/+1
This reverts commit 0e549137966feb016927a827fb6e359aec8264a3 so to return to the same state as commit b5d72f0a4cd3cce945ca0d37e4fa0ebbfcdcdb52. On Wed, 31 Oct 2007, Shawn O. Pearce wrote: > During my testing with a 40,000 loose object case (yea, I fully > unpacked a git.git clone I had laying around) my system stalled > hard in the first object directory. A *lot* longer than 1 second. > So I got no progress meter for a long time, and then a progress > meter appeared on the second directory. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-01git-format-patch.txt: fix explanation of an example.Libravatar Sergei Organov1-1/+1
Signed-off-by: Sergei Organov <osv@javad.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-01git-filter-branch.txt: fix a typo.Libravatar Sergei Organov1-1/+1
Signed-off-by: Sergei Organov <osv@javad.com> Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-01git-clone.txt: Improve --depth description.Libravatar Ralf Wildenhues1-3/+3
Avoid abbreviation 'revs', improve the language a bit. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-01gitweb: Update config file example for snapshot feature in gitweb/INSTALLLibravatar Jakub Narebski1-1/+1
Commit a3c8ab30a54c30a6a434760bedf04548425416ef by Matt McCutchen "gitweb: snapshot cleanups & support for offering multiple formats" introduced new format of $feature{'snapshot'}{'default'} value. Update "Config file example" in gitweb/INSTALL accordingly. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-11-01Merge branch 'js/forkexec'Libravatar Junio C Hamano13-367/+331
* js/forkexec: Use the asyncronous function infrastructure to run the content filter. Avoid a dup2(2) in apply_filter() - start_command() can do it for us. t0021-conversion.sh: Test that the clean filter really cleans content. upload-pack: Run rev-list in an asynchronous function. upload-pack: Move the revision walker into a separate function. Use the asyncronous function infrastructure in builtin-fetch-pack.c. Add infrastructure to run a function asynchronously. upload-pack: Use start_command() to run pack-objects in create_pack_file(). Have start_command() create a pipe to read the stderr of the child. Use start_comand() in builtin-fetch-pack.c instead of explicit fork/exec. Use run_command() to spawn external diff programs instead of fork/exec. Use start_command() to run content filters instead of explicit fork/exec. Use start_command() in git_connect() instead of explicit fork/exec. Change git_connect() to return a struct child_process instead of a pid_t. Conflicts: builtin-fetch-pack.c
2007-10-31Merge branch 'sp/mergetool'Libravatar Junio C Hamano2-44/+71
* sp/mergetool: mergetool: avoid misleading message "Resetting to default..." mergetool: add support for ECMerge mergetool: use path to mergetool in config var mergetool.<tool>.path
2007-10-31Merge branch 'sp/help'Libravatar Junio C Hamano6-178/+203
* sp/help: shell should call the new setup_path() to setup $PATH include $PATH in generating list of commands for "help -a" use only the $PATH for exec'ing git commands list_commands(): simplify code by using chdir() "current_exec_path" is a misleading name, use "argv_exec_path" remove unused/unneeded "pattern" argument of list_commands "git" returns 1; "git help" and "git help -a" return 0
2007-10-31Merge branch 'kh/commit'Libravatar Junio C Hamano7-67/+106
* kh/commit: Export rerere() and launch_editor(). Introduce entry point add_interactive and add_files_to_cache Enable wt-status to run against non-standard index file. Enable wt-status output to a given FILE pointer.
2007-10-31cvsexportcommit: fix for commits that do not have parentsLibravatar Brad King1-3/+10
Previously commits without parents would fail to export with a message indicating that the commits had more than one parent. Instead we should use the --root option for git-diff-tree in place of a parent. Signed-off-by: Brad King <brad.king@kitware.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-10-31Merge branch 'maint' to catch up with 1.5.3.5Libravatar Junio C Hamano2-6/+1
2007-10-31GIT 1.5.3.5Libravatar Junio C Hamano2-7/+1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-10-30Merge branch 'maint' into HEADLibravatar Junio C Hamano6-15/+23
* maint: Update GIT 1.5.3.5 Release Notes git-rebase--interactive.sh: Make 3-way merge strategies work for -p. git-rebase--interactive.sh: Don't pass a strategy to git-cherry-pick. Fix --strategy parsing in git-rebase--interactive.sh Make merge-recursive honor diff.renamelimit cherry-pick/revert: more compact user direction message core-tutorial: Use new syntax for git-merge. git-merge: document but discourage the historical syntax Prevent send-pack from segfaulting (backport from 'master') Documentation/git-cvsexportcommit.txt: s/mgs/msg/ in example Conflicts: git-rebase--interactive.sh
2007-10-30Merge branch 'nd/worktree' into HEADLibravatar Junio C Hamano1-1/+1
* nd/worktree: git-sh-setup.sh: use "git rev-parse --show-cdup" to check for SUBDIRECTORY_OK
2007-10-30Merge branch 'cc/skip' into HEADLibravatar Junio C Hamano7-108/+410
* cc/skip: Bisect: add "skip" to the short usage string. Bisect run: "skip" current commit if script exit code is 125. Bisect: add a "bisect replay" test case. Bisect: add "bisect skip" to the documentation. Bisect: refactor "bisect_{bad,good,skip}" into "bisect_state". Bisect: refactor some logging into "bisect_write". Bisect: refactor "bisect_write_*" functions. Bisect: implement "bisect skip" to mark untestable revisions. Bisect: fix some white spaces and empty lines breakages. rev-list documentation: add "--bisect-all". rev-list: implement --bisect-all
2007-10-30Merge branch 'jk/send-pack' into HEADLibravatar Junio C Hamano2-16/+62
* jk/send-pack: t5516: test update of local refs on push send-pack: don't update tracking refs on error
2007-10-30Merge branch 'lt/rename' into HEADLibravatar Junio C Hamano6-166/+395
* lt/rename: Do the fuzzy rename detection limits with the exact renames removed Fix ugly magic special case in exact rename detection Do exact rename detection regardless of rename limits Do linear-time/space rename logic for exact renames copy vs rename detection: avoid unnecessary O(n*m) loops Ref-count the filespecs used by diffcore Split out "exact content match" phase of rename detection Add 'diffcore.h' to LIB_H
2007-10-30Merge branch 'jn/web' into HEADLibravatar Junio C Hamano1-85/+67
* jn/web: gitweb: Fix and simplify "split patch" detection
2007-10-30Merge branch 'ds/gitweb' into HEADLibravatar Junio C Hamano1-8/+29
* ds/gitweb: gitweb: Use chop_and_escape_str in more places. gitweb: Refactor abbreviation-with-title-attribute code. gitweb: Provide title attributes for abbreviated author names.
2007-10-30Merge branch 'js/rebase' into HEADLibravatar Junio C Hamano1-13/+13
* js/rebase: Fixing path quoting in git-rebase
2007-10-30No longer install git-svnimport, move to contrib/examplesLibravatar Gerrit Pape6-5/+1
This has been proposed for a few times without much reaction from the list. Actually remove it to see who screams. Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-10-30Update GIT 1.5.3.5 Release NotesLibravatar Junio C Hamano1-1/+7
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-10-30git-rebase--interactive.sh: Make 3-way merge strategies work for -p.Libravatar Björn Steinbrink1-0/+2
git-rebase--interactive.sh used to pass all parents of a merge commit to git-merge, which means that we have at least 3 heads to merge: HEAD, first parent and second parent. So 3-way merge strategies like recursive wouldn't work. Fortunately, we have checked out the first parent right before the merge anyway, so that is HEAD. Therefore we can drop simply it from the list of parents, making 3-way strategies work for merge commits with only two parents. Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de> Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-10-30git-rebase--interactive.sh: Don't pass a strategy to git-cherry-pick.Libravatar Björn Steinbrink1-2/+2
git-cherry-pick doesn't support a strategy paramter, so don't pass one. This means that --strategy for interactive rebases is a no-op for anything but merge commits, but that's still better than being broken. A correct fix would probably need to port the --merge behaviour from plain git-rebase.sh, but I have no clue how to integrate that cleanly. Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de> Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-10-30Fix --strategy parsing in git-rebase--interactive.shLibravatar Björn Steinbrink1-1/+0
For the --strategy/-s option, git-rebase--interactive.sh dropped the parameter which it was trying to parse. Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de> Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-10-30Make merge-recursive honor diff.renamelimitLibravatar Lars Hjemli1-0/+6
It might be a sign of source code management gone bad, but when two branches has diverged almost beyond recognition and time has come for the branches to merge, the user is going to need all the help his tool can give him. Honoring diff.renamelimit has great potential as a painkiller in such situations. The painkiller effect could have been achieved by e.g. 'merge.renamelimit', but the flexibility gained by a separate option is questionable: our user would probably expect git to detect renames equally good when merging as when diffing (I known I did). Signed-off-by: Lars Hjemli <hjemli@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-10-30cherry-pick/revert: more compact user direction messageLibravatar Nicolas Pitre1-1/+1
A failed cherry-pick (and friend) currently says: |Automatic cherry-pick failed. After resolving the conflicts, |mark the corrected paths with 'git-add <paths>' |and commit the result. This can obviously be displayed on two lines only. While at it, change "git-add" to "git add". Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>