summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'maint'Junio C Hamano2007-04-195-14/+21
|\ | | | | | | | | | | | | | | * maint: Update git-config documentation Fix unmatched emphasis tag in git-tutorial Update git-cherry-pick documentation Update git-archive documentation
| * Update git-config documentationAndrew Ruder2007-04-182-11/+15
| | | | | | | | | | | | | | | | Documentation/git-config.txt: Added documentation for --system Documentation/builtin-config.c: Added --system to the short usage Signed-off-by: Andrew Ruder <andy@aeruder.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Fix unmatched emphasis tag in git-tutorialAndrew Ruder2007-04-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In asciidoc 7.1.2 and prior there is no obvious way to get: 'add'ing to emphasize only the "add", instead it treats the first apostrophe as the beginning of an emphasis, and the second apostrophe as a regular apostrophe and makes the rest of the line an emphasis since there is no closing apostrophe. In the newer asciidoc you can do it pretty easily with __add__ing but I'm not sure it would be best to make that a prereq for something as silly as this. Signed-off-by: Andrew Ruder <andy@aeruder.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Update git-cherry-pick documentationAndrew Ruder2007-04-181-1/+1
| | | | | | | | | | | | | | | | Documentation/git-cherry-pick.txt: Remove --replay as it is not handled by the code (-r is however). Signed-off-by: Andrew Ruder <andy@aeruder.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Update git-archive documentationAndrew Ruder2007-04-181-1/+4
| | | | | | | | | | | | | | | | Documentation/git-archive.txt: Document -v/--verbose option. Add -l as short form of --list. Signed-off-by: Andrew Ruder <andy@aeruder.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Fix working directory errno handling when unlinking a directoryLinus Torvalds2007-04-191-25/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Alex Riesen noticed that the case where a file replaced a directory entry in the working tree was broken on cygwin. It turns out that the code made some Linux-specific assumptions, and also ignored errors entirely for the case where the entry was a symlink rather than a file. This cleans it up by separating out the common case into a function of its own, so that both regular files and symlinks can share it, and by making the error handling more obvious (and not depend on any Linux-specific behaviour). Acked-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'maint'Junio C Hamano2007-04-183-3/+3
|\ \ | |/ | | | | | | | | * maint: fix up strtoul_ui error handling git-tar-tree: complete deprecation conversion message
| * fix up strtoul_ui error handlingAndy Whitcroft2007-04-182-2/+2
| | | | | | | | | | | | | | | | | | | | Two scanf() calls were converted to strtoul_ui() but the return values were not updated to match. scanf() returns the number of matched "values" which for this usage is 1 on success. strtoul_ui() return 0 on success. Update these call sites to match. Signed-off-by: Andy Whitcroft <apw@shadowen.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * git-tar-tree: complete deprecation conversion messageSam Vilain2007-04-181-1/+1
| | | | | | | | | | | | | | The syntax for git-archive is different; warn about it in the deprecation message on the manual page. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'maint'Junio C Hamano2007-04-185-3/+43
|\ \ | |/ | | | | | | | | | | * maint: git-shortlog: Fix two formatting errors in asciidoc documentation Fix overwriting of files when applying contextually independent diffs git-svn: don't allow globs to match regular files
| * git-shortlog: Fix two formatting errors in asciidoc documentationFrank Lichtenheld2007-04-181-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | First use [verse] in the SYNOPSIS so that the line break actually shows. Secondly drop the quotes around '.mailmap' since this exposes a bug in our toolchain (didn't bother enough yet to find out wether it is asciidoc's fault or that of the XSL templates) that leads to the dot not getting escaped correctly in the roff output and thereby swallowing the line. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Fix overwriting of files when applying contextually independent diffsAlex Riesen2007-04-182-2/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Noticed by applying two diffs of different contexts to the same file. The check for existence of a file was wrong: the test assumed it was a directory and reset the errno (twice: directly and by calling lstat). So if an entry existed and was _not_ a directory no attempt was made to rename into it, because the errno (expected by renaming code) was already reset to 0. This resulted in error: fatal: unable to write file file mode 100644 For Linux, removing "errno = 0" is enough, as lstat wont modify errno if it was successful. The behavior should not be depended upon, though, so modify the "if" as well. The test simulates this situation. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * git-svn: don't allow globs to match regular filesEric Wong2007-04-182-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | git only tracks the histories of full directories, not that of individual files. Sometimes, SVN users will place[1] a regular file in the directory designated for subdirectories of branches or tags. Thanks to jrockway on #git for pointing this out. [1] mistakenly or otherwise, such as a README Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'fl/cvsserver'Junio C Hamano2007-04-173-18/+224
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fl/cvsserver: config.txt: Add gitcvs.db* variables cvsserver: Document the GIT branches -> CVS modules mapping more prominently cvsserver: Reword documentation on necessity of write access cvsserver: Allow to "add" a removed file cvsserver: Add asciidoc documentation for new database backend configuration cvsserver: Corrections to the database backend configuration cvsserver: Use DBI->table_info instead of DBI->tables cvsserver: Abort if connect to database fails cvsserver: Make the database backend configurable cvsserver: Allow to override the configuration per access method cvsserver: Handle three part keys in git config correctly cvsserver: Introduce new state variable 'method' Conflicts: Documentation/config.txt
| * | config.txt: Add gitcvs.db* variablesFrank Lichtenheld2007-04-131-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds documentation for gitcvs.{dbname,dbdriver,dbuser,dbpass} Texts are mostly taken from git-cvsserver.txt whith some adaptions so that they make more sense out of the context of the original man page. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | cvsserver: Document the GIT branches -> CVS modules mapping more prominentlyFrank Lichtenheld2007-04-121-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a note about the branches -> modules mapping to LIMITATIONS because I really think it should be noted there and not just at the end of the installation step-by-step HOWTO. I used "git branches" there and changed "heads" to "branches" in my section about database configuration. I'm reluctant to replace all occourences of "head" with "branch" though because you always have to say "git branch" because CVS also has the concept of branches. You can say "head" though, because there is no such concept in CVS. In all the existing occourences of head other than the one I changed I think "head" flows better in the text. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | cvsserver: Reword documentation on necessity of write accessFrank Lichtenheld2007-04-121-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | Reworded the section about git-cvsserver needing to update the database. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | cvsserver: Allow to "add" a removed fileFrank Lichtenheld2007-04-121-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CVS allows you to add a removed file (where the removal is not yet committed) which will cause the server to send the latest revision of the file and to delete the "removed" status. Copy this behaviour. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | cvsserver: Add asciidoc documentation for new database backend configurationFrank Lichtenheld2007-04-081-4/+83
| | | | | | | | | | | | | | | | | | | | | | | | Documents the new configuration variables and the variable substitution mechanism. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | cvsserver: Corrections to the database backend configurationFrank Lichtenheld2007-04-071-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't include the scheme name in gitcvs.dbdriver, it is always 'dbi' anyway. Don't allow ':' in driver names nor ';' in database names for sanity reasons. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | cvsserver: Use DBI->table_info instead of DBI->tablesFrank Lichtenheld2007-03-311-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DBI->table_info is portable across different DBD backends, DBI->tables is not. Limit the output to objects of type TABLE. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de>
| * | cvsserver: Abort if connect to database failsFrank Lichtenheld2007-03-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently all calls to the database backend make no error checking or handling at all. At least abort if the connection to the database failed since there is really no way we could do anything useful after that. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | cvsserver: Make the database backend configurableFrank Lichtenheld2007-03-221-6/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make all the different parts of the database backend connection configurable. This adds the following string configuration variables: - gitcvs.dbdriver - gitcvs.dbname - gitcvs.dbuser - gitcvs.dbpass The default values emulate the current behavior exactly for backwards compatibility. All configuration variables can also be specified for a specific access method (i.e. in the form gitcvs.<method>.<var>) The dbdriver/dbuser/dbpass variables are added for completness. No other backend than SQLite is tested yet. The dbname variable on the other hand is useful with this backend already (to not discriminate against other possible backends it was not splitted in dbdir and dbfile). Both dbname and dbuser support dynamic variable substitution where the available variables are: %m -- the CVS 'module' (i.e. GIT 'head') worked on %a -- CVS access method used (i.e. 'ext' or 'pserver') %u -- User name of the user invoking git-cvsserver %G -- .git directory name %g -- .git directory name, mangled to be used in a filename, currently this substitutes all chars except for [\w.-] with '_' Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | cvsserver: Allow to override the configuration per access methodFrank Lichtenheld2007-03-222-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | Allow to override the gitcvs.enabled and gitcvs.logfile configuration variables for each access method (i.e. "ext" or "pserver") in the form gitcvs.<method>.<var> Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | cvsserver: Handle three part keys in git config correctlyFrank Lichtenheld2007-03-221-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | This is intended to be used in the form gitcvs.<method>.<var> but this patch doesn't introduce any users yet. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | cvsserver: Introduce new state variable 'method'Frank Lichtenheld2007-03-221-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | $state->{method} contains the CVS access method used, either 'ext' or 'pserver' Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Merge branch 'maint'Junio C Hamano2007-04-172-2/+2
|\ \ \ | | |/ | |/| | | | | | | * maint: Use const qualifier for 'sha1' parameter in delete_ref function
| * | Use const qualifier for 'sha1' parameter in delete_ref functionCarlos Rica2007-04-172-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | delete_ref function does not change the 'sha1' parameter. Non-const pointer causes a compiler warning if you call to the function using a const argument. Signed-off-by: Carlos Rica <jasampler@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Update draft release notes for 1.5.2 with accumulated changes.Junio C Hamano2007-04-171-1/+44
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Merge branch 'maint'Junio C Hamano2007-04-172-3/+43
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | * maint: Start preparing for 1.5.1.2 git-svn: quiet some warnings when run only with --version/--help git-svn: respect lower bound of -r/--revision when following parent Conflicts: RelNotes
| * | Start preparing for 1.5.1.2Junio C Hamano2007-04-172-1/+38
| | |
| * | Merge branch 'maint' of git://repo.or.cz/git-gui into maintJunio C Hamano2007-04-171-4/+6
| |\ \ | | | | | | | | | | | | | | | | * 'maint' of git://repo.or.cz/git-gui: git-gui: Brown paper bag fix division by 0 in blame
| * | | git-svn: quiet some warnings when run only with --version/--helpEric Wong2007-04-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are harmless but annoying. They were introduced in 512b620bd9fef7f170562ecad835e37479f051ce Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | | git-svn: respect lower bound of -r/--revision when following parentEric Wong2007-04-171-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When an explicit --revision argument is specified, do not fetch past the specified range into the beginning of history. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | | Merge branch 'master' of git://repo.or.cz/git-guiJunio C Hamano2007-04-172-74/+91
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'master' of git://repo.or.cz/git-gui: git-gui: Honor TCLTK_PATH if supplied Revert "Allow wish interpreter to be defined with TCLTK_PATH" git-gui: Display the directory basename in the title git-gui: Brown paper bag fix division by 0 in blame Always bind the return key to the default button Do not break git-gui messages into multiple lines. Improve look-and-feel of the git-gui tool. Teach git-gui to use the user-defined UI font everywhere. Allow wish interpreter to be defined with TCLTK_PATH
| * | | | git-gui: Honor TCLTK_PATH if suppliedJunio C Hamano2007-04-171-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mimick what we do for gitk. Since you do have a source file, git-gui.sh, which is separate from the target, it should be much easier in git-gui's Makefile. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | | | Revert "Allow wish interpreter to be defined with TCLTK_PATH"Shawn O. Pearce2007-04-171-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e2a1bc67d321a0c03737179f331c39a52e7049d7. Junio rightly pointed out this patch doesn't handle the `make install` target very well: Junio C Hamano <junkio@cox.net> writes: > You should never generate new files in the source tree from > 'install' target. Otherwise, the usual pattern of "make" as > yourself and then "make install" as root would not work from a > "root-to-nobody-squashing" NFS mounted source tree to local > filesystem. You should know better than accepting such a patch.
| * | | | git-gui: Display the directory basename in the titleShawn O. Pearce2007-04-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By showing the basename of the directory very early in the title bar I can more easily locate a particular git-gui session when I have 8 open at once and my Windows taskbar is overflowing with items. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | | | Merge branch 'er/ui'Shawn O. Pearce2007-04-152-69/+83
| |\ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * er/ui: Always bind the return key to the default button Do not break git-gui messages into multiple lines. Improve look-and-feel of the git-gui tool. Teach git-gui to use the user-defined UI font everywhere. Allow wish interpreter to be defined with TCLTK_PATH
| | * | | Always bind the return key to the default buttonShawn O. Pearce2007-04-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a dialog/window has a default button registered not every platform associates the return key with that button, but all users do. We have to register the binding of the return key ourselves to make sure the user's expectations of pressing return will activate the default button are met. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| | * | | Do not break git-gui messages into multiple lines.Eygene Ryabinkin2007-04-041-46/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Many git-gui messages were broken into a multiple lines to make good paragraph width. Unfortunately in reality it breaks the paragraph width completely, because the dialog window width does not coincide with the paragraph width created by the current font. Tcl/Tk's standard dialog boxes are breaking the long lines automatically, so it is better to make long lines and let the interpreter do the job. Signed-off-by: Eygene Ryabinkin <rea-git@codelabs.ru> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| | * | | Improve look-and-feel of the git-gui tool.Eygene Ryabinkin2007-04-041-4/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Made the default buttons on the dialog active and focused upon the dialog appearence. Bound 'Escape' and 'Return' keys to the dialog dismissal where it was appropriate: mainly for dialogs with only one button and no editable fields, but on console output dialogs as well. Signed-off-by: Eygene Ryabinkin <rea-git@codelabs.ru> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| | * | | Teach git-gui to use the user-defined UI font everywhere.Eygene Ryabinkin2007-04-041-19/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some parts of git-gui were not respecting the default GUI font. Most of them were catched and fixed. Signed-off-by: Eygene Ryabinkin <rea-git@codelabs.ru> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| | * | | Allow wish interpreter to be defined with TCLTK_PATHEygene Ryabinkin2007-04-041-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makefile got one external option: - TCLTK_PATH: the path to the Tcl/Tk interpreter. Users (or build wrappers) may set this variable to the location of the wish executable. Signed-off-by: Eygene Ryabinkin <rea-git@codelabs.ru> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | | | git-gui: Brown paper bag fix division by 0 in blameShawn O. Pearce2007-04-041-4/+6
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we generate a blame status string before we have obtained any annotation data at all from the input file, or if the input file is empty, our total_lines will be 0. This causes a division by 0 error when we blindly divide by the 0 to compute the total percentage of lines loaded. Instead we should report 0% done. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
* | | | Merge branch 'jc/read-tree-df'Junio C Hamano2007-04-174-24/+587
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * jc/read-tree-df: t3030: merge-recursive backend test. merge-recursive: handle D/F conflict case more carefully. merge-recursive: do not barf on "to be removed" entries. Treat D/F conflict entry more carefully in unpack-trees.c::threeway_merge() t1000: fix case table.
| * | | | t3030: merge-recursive backend test.Junio C Hamano2007-04-101-0/+528
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have fairly extensive coverage of read-tree 3-way machinery, and many Porcelain-ish tests use git-merge front-end tests, but we did not have good basic test for merge-recursive, which made it very hard to hack on it. I used this during the recent work to teach D/F conflicts to merge-recursive. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | | | merge-recursive: handle D/F conflict case more carefully.Junio C Hamano2007-04-101-3/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a path D that originally was blob in the ancestor was modified on our branch while it was removed on the other branch, we keep stages 1 and 2, and leave our version in the working tree. If the other branch created a path D/F, however, that path can cleanly be resolved in the index (after all, the ancestor nor we do not have it and only the other side added), but it cannot be checked out. The issue is the same when the other branch had D and we had renamed it to D/F, or the ancestor had D/F instead of D (so there are four combinations). Do not stop the merge, but leave both D and D/F paths in the index so that the user can clear things up. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | | | merge-recursive: do not barf on "to be removed" entries.Junio C Hamano2007-04-101-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When update-trees::threeway_merge() decides that a path that exists in the current index (and HEAD) is to be removed, it leaves a stage 0 entry whose mode bits are set to 0. The code mistook it as "this stage wants the blob here", and proceeded to call update_file_flags() which ended up trying to put the mode=0 entry in the index, got very confused, and ended up barfing with "do not know what to do with 000000". Since threeway_merge() does not handle case #10 (one side removes while the other side does not do anything), this is not a problem while we refuse to merge branches that have D/F conflicts, but when we start resolving them, we would need to be able to remove cache entries, and at that point it starts to matter. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | | | Treat D/F conflict entry more carefully in unpack-trees.c::threeway_merge()Junio C Hamano2007-04-101-14/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes three buglets in threeway_merge() regarding D/F conflict entries. * After finishing with path D and handling path D/F, some stages have D/F conflict entry which are obviously non-NULL. For the purpose of determining if the path D/F is missing in the ancestor, they should not be taken into account. * D/F conflict entry is a marker to say "this stage does _not_ have the path", so do not send them to keep_entry(). Signed-off-by: Junio C Hamano <junkio@cox.net>