summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-05-24Fix possible coredump with fast-import --import-marksLibravatar Shawn O. Pearce2-5/+36
When e8438420bb7d368bec3647b90c557b9931582267 allowed us to reload the marks table on subsequent runs of fast-import we really broke things, as we set pack_id to MAX_PACK_ID for any objects we imported into the marks table. Creating a branch from that mark should fail as we attempt to read the object through a non-existant packed_git pointer. Instead we have to use the normal Git object system to locate the older commit, as we ourselves do not have a reference to the packed_git it resides in. This bug only occurred because t9300 was not complete enough. When we added the --import-marks feature we didn't actually test its implementation enough to verify the function worked as intended. I have corrected that, and included the changes as part of this fix. Prior versions of fast-import fail the new test(s); this commit allows them to pass. Credit for this bug find goes to Simon Hausmann <simon@lst.de> as he recently identified a similiar bug in the tree lazy-loading path. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-24Refactor fast-import branch creation from existing commitLibravatar Shawn O. Pearce1-27/+31
To resolve a corner case uncovered by Simon Hausmann I need to reuse the logic for the SHA-1 expression version of the 'from ' command within the mark version of the 'from ' command. This change doesn't alter any functionality, but is merely breaking the common code out to a function that I can reuse. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-23fast-import: Fix crash when referencing already existing objectsLibravatar Simon Hausmann1-1/+1
Commit a5c1780a0355a71b9fb70f1f1977ce726ee5b8d8 sets the pack_id of existing objects to MAX_PACK_ID. When the same object is referenced later again it is found in the local object hash. With such a pack_id fast-import should not try to locate that object in the newly created pack(s). Signed-off-by: Simon Hausmann <simon@lst.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-23fast-import: Fix uninitialized variableLibravatar Simon Hausmann1-0/+1
Fix uninitialized last_object->no_free variable that is accessed in store_object. Signed-off-by: Simon Hausmann <simon@lst.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-23Use git-for-each-ref to check whether the origin branch exists.Libravatar Stephan Springl1-5/+5
This works in repositories that have their refs packed by "git-pack-refs --all --prune" whereas testing the file $git_dir/refs/heads/$opt_o does not. Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-23Merge branch 'maint-1.5.1' into maintLibravatar Junio C Hamano1-0/+7
* maint-1.5.1: Document branch.autosetupmerge.
2007-05-22Document branch.autosetupmerge.Libravatar Paolo Bonzini1-0/+7
This patch documents the branch.autosetupmerge config option, added by commit 0746d19a. Signed-off-by: Paolo Bonzini <bonzini@gnu.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-21git-cvsserver: fix disabling service via per-method configLibravatar Junio C Hamano1-5/+3
When the per-method enable logic disables the access, we should not even look at the global one. git-cvsserver.perl | 8 +++----- 1 files changed, 3 insertions(+), 5 deletions(-) Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-21Merge branch 'maint-1.5.1' into maintLibravatar Junio C Hamano6-2/+54
* maint-1.5.1: git-status: respect core.excludesFile SubmittingPatches: mention older C compiler compatibility git-daemon: don't ignore pid-file write failure
2007-05-21git-status: respect core.excludesFileLibravatar Johannes Schindelin4-0/+39
git-add reads this variable, and honours the contents of that file if that exists. Match this behaviour in git-status, too. Noticed by Evan Carroll on IRC. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-21SubmittingPatches: mention older C compiler compatibilityLibravatar Johannes Schindelin1-0/+13
We do not appreciate C99 initializers, declarations after statements, or "0" instead of "NULL". Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-21git-daemon: don't ignore pid-file write failureLibravatar Jim Meyering1-2/+2
Note: since the consequence of failure is to call die, I don't bother to close "f". Signed-off-by: Jim Meyering <jim@meyering.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-20Merge branch 'maint-1.5.1' into maintLibravatar Junio C Hamano6-18/+48
* maint-1.5.1: annotate: make it work from subdirectories. git-config: Correct asciidoc documentation for --int/--bool t1300: Add tests for git-config --bool --get unpack-trees.c: verify_uptodate: remove dead code Use PATH_MAX instead of TEMPFILE_PATH_LEN branch: fix segfault when resolving an invalid HEAD
2007-05-20annotate: make it work from subdirectories.Libravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-20git-config: Correct asciidoc documentation for --int/--boolLibravatar Frank Lichtenheld1-8/+9
The asciidoc documentation seemed to indicate that type specifiers are honoured on writing operations which they aren't. Make this more clear. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-20t1300: Add tests for git-config --bool --getLibravatar Frank Lichtenheld1-0/+34
Noticed that there were only tests for --int, but not for --bool. Add some. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-20unpack-trees.c: verify_uptodate: remove dead codeLibravatar Sven Verdoolaege1-4/+0
This code was killed by commit fcc387db9bc453dc7e07a262873481af2ee9e5c8. Signed-off-by: Sven Verdoolaege <skimo@kotnet.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-20Use PATH_MAX instead of TEMPFILE_PATH_LENLibravatar Fernando J. Pereda1-4/+2
Signed-off-by: Fernando J. Pereda <ferdy@gentoo.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-20branch: fix segfault when resolving an invalid HEADLibravatar Jonas Fonseca1-1/+2
Caused by return value of resolve_ref being passed directly to xstrdup whereby the sanity checking was never reached. Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-20GIT 1.5.2Libravatar Junio C Hamano3-22/+26
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-20git-cvsserver: exit with 1 upon "I HATE YOU"Libravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-20Merge branch 'maint' to synchronize with 1.5.1.6Libravatar Junio C Hamano6-59/+212
* maint: GIT 1.5.1.6 git-svn: don't minimize-url when doing an init that tracks multiple paths git-svn: avoid crashing svnserve when creating new directories user-manual: Add section on ignoring files user-manual: finding commits referencing given file content user-manual: discourage shared repository tutorial: revise index introduction tutorials: add user-manual links Conflicts: GIT-VERSION-GEN RelNotes
2007-05-20GIT 1.5.1.6Libravatar Junio C Hamano4-9/+48
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-19Merge branch 'maint' of git://linux-nfs.org/~bfields/git into maintLibravatar Junio C Hamano3-52/+159
* 'maint' of git://linux-nfs.org/~bfields/git: user-manual: Add section on ignoring files user-manual: finding commits referencing given file content user-manual: discourage shared repository tutorial: revise index introduction tutorials: add user-manual links
2007-05-19git-svn: don't minimize-url when doing an init that tracks multiple pathsLibravatar Eric Wong1-0/+5
I didn't have a chance to test the off-by-default minimize-url stuff enough before, but it's quite broken for people passing the --trunk/-T, --tags/-t, --branches/-b switches to "init" or "clone" commands. Additionally, follow-parent functionality seems broken when we're not connected to the root of the repository. Default behavior for "traditional" git-svn users who only track one directory (without needing follow-parent) should be reasonable, as those users started using things before minimize-url functionality existed. Behavior for users more used to the git-svnimport-like command line will also benefit from a more-flexible command-line than svnimport given the assumption they're working with non-restrictive read permissions on the repository. I hope to properly fix these bugs when I get a chance to in the next week or so, but I would like to get this stopgap measure of reverting to the old behavior as soon as possible. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-19git-svn: avoid crashing svnserve when creating new directoriesLibravatar Eric Wong1-0/+2
When sorting directory names by depth (slash ("/") count) and closing the deepest directories first (as the protocol requires), we failed to put the root baton (with an empty string as its key "") after top-level directories (which did not have any slashes). This resulted in svnserve being in a situation it couldn't handle and caused a segmentation fault on the remote server. This bug did not affect users of DAV and filesystem repositories. Signed-off-by: Eric Wong <normalperson@yhbt.net> Confirmed-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-19user-manual: Add section on ignoring filesLibravatar Johan Herland1-2/+69
The todo list at the end of the user manual says that something must be said about .gitignore. Also, there seems to be a lack of documentation on how to choose between the various types of ignore files (.gitignore vs. .git/info/exclude, etc.). This patch adds a section on ignoring files which try to introduce how to tell git about ignored files, and how the different strategies complement eachother. The syntax of exclude patterns is explained in a simplified manner, with a reference to git-ls-files(1) which already contains a more thorough explanation. Signed-off-by: Johan Herland <johan@herland.net>
2007-05-19user-manual: finding commits referencing given file contentLibravatar J. Bruce Fields1-0/+16
Another amusing git exploration example brought up in irc. (Credit to aeruder for the complete solution.) Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-19user-manual: discourage shared repositoryLibravatar J. Bruce Fields1-0/+21
I don't really want to look like we're encouraging the shared repository thing. Take down some of the argument for using purely single-developer-owned repositories and collaborating using patches and pulls instead. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-19tutorial: revise index introductionLibravatar J. Bruce Fields1-49/+45
The embarassing history of this tutorial is that I started it without really understanding the index well, so I avoided mentioning it. And we all got the idea that "index" was a word to avoid using around newbies, but it was reluctantly mentioned that *something* had to be said. The result is a little awkward: the discussion of the index never actually uses that word, and isn't well-integrated into the surrounding material. Let's just go ahead and use the word "index" from the very start, and try to demonstrate its use with a minimum of lecturing. Also, remove discussion of using git-commit with explicit filenames. We're already a bit slow here to get people to their first commit, and I'm not convinced this is really so important. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-19tutorials: add user-manual linksLibravatar J. Bruce Fields2-1/+8
Mention the user manual, especially as an alternative introduction for user's mainly interested in read-only operations. And fix a typo while we're there. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-18Merge branch 'maint'Libravatar Junio C Hamano11-10/+24
* maint: Documentation: Reformatted SYNOPSIS for several commands Documentation: Added [verse] to SYNOPSIS where necessary
2007-05-18Documentation: Reformatted SYNOPSIS for several commandsLibravatar Matthias Kestenholz6-9/+19
Signed-off-by: Matthias Kestenholz <matthias@spinlock.ch> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-18Documentation: Added [verse] to SYNOPSIS where necessaryLibravatar Matthias Kestenholz5-1/+5
Signed-off-by: Matthias Kestenholz <matthias@spinlock.ch> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-18Documentation/git.txt: Update links to older documentation pages.Libravatar Junio C Hamano1-34/+25
It's starting to take too much space at the beginning of the main documentation page. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-18gitweb: Fix "Use of uninitialized value" warning in git_feedLibravatar Jakub Narebski1-1/+2
Initial (root) commit has no parents, and $co{'parent'} is undefined. Use '--root' for initial commit. This fixes "Use of uninitialized value in open at gitweb/gitweb.perl line 4925." warning. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-18Merge branch 'sp/cvsexport'Libravatar Junio C Hamano1-15/+30
* sp/cvsexport: Optimized cvsexportcommit: calling 'cvs status' once instead of once per touched file.
2007-05-18Add link to 1.5.1.5 release notes.Libravatar Junio C Hamano1-1/+3
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-18Merge 1.5.1.5 inLibravatar Junio C Hamano8-900/+1061
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-18GIT v1.5.1.5Libravatar Junio C Hamano2-3/+14
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-18Merge branch 'maint' of git://linux-nfs.org/~bfields/git into maintLibravatar Junio C Hamano6-896/+1046
* 'maint' of git://linux-nfs.org/~bfields/git: user-manual: reorganize public git repo discussion user-manual: listing commits reachable from some refs not others user-manual: introduce git user-manual: add a "counting commits" example user-manual: move howto/using-topic-branches into manual user-manual: move howto/make-dist.txt into user manual Documentation: remove howto's now incorporated into manual user-manual: move quick-start to an appendix glossary: expand and clarify some definitions, prune cross-references user-manual: revise birdseye-view chapter Add a birdview-on-the-source-code section to the user manual
2007-05-18gitweb: Remove redundant $searchtype setupLibravatar Petr Baudis1-7/+0
Sorry, this was inadverently introduced by my grep search patch. It causes annoying "redefined" warnings. Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-18Documentation: git-rev-list's "patterns"Libravatar Petr Baudis1-2/+2
git-rev-list(1) talks about patterns as values for the --grep, --committed etc. parameters, without going into detail. This patch mentions that these patterns are actually regexps. Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-18Fix crlf attribute handling to match documentationLibravatar Andy Parkins1-2/+2
gitattributes.txt says, of the crlf attribute: Set:: Setting the `crlf` attribute on a path is meant to mark the path as a "text" file. 'core.autocrlf' conversion takes place without guessing the content type by inspection. That is to say that the crlf attribute does not force the file to have CRLF line endings, instead it removes the autocrlf guesswork and forces the file to be treated as text. Then, whatever line ending is defined by the autocrlf setting is applied. However, that is not what convert.c was doing. The conversion to CRLF was being skipped in crlf_to_worktree() when the following condition was true: action == CRLF_GUESS && auto_crlf <= 0 That is to say conversion took place when not in guess mode (crlf attribute not specified) or core.autocrlf set to true. This was wrong. It meant that the crlf attribute being on for a given file _forced_ CRLF conversion, when actually it should force the file to be treated as text, and converted accordingly. The real test should simply be auto_crlf <= 0 That is to say, if core.autocrlf is falsei (or input), conversion from LF to CRLF is never done. When core.autocrlf is true, conversion from LF to CRLF is done only when in CRLF_GUESS (and the guess is "text"), or CRLF_TEXT mode. Similarly for crlf_to_worktree(), if core.autocrlf is false, no conversion should _ever_ take place. In reality it was only not taking place if core.autocrlf was false _and_ the crlf attribute was unspecified. Signed-off-by: Andy Parkins <andyparkins@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-18git-archive: convert archive entries like checkouts doLibravatar René Scharfe4-8/+26
As noted by Johan Herland, git-archive is a kind of checkout and needs to apply any checkout filters that might be configured. This patch adds the convenience function convert_sha1_file which returns a buffer containing the object's contents, after converting, if necessary (i.e. it's a combination of read_sha1_file and convert_to_working_tree). Direct calls to read_sha1_file in git-archive are then replaced by calls to convert_sha1_file. Since convert_sha1_file expects its path argument to be NUL-terminated -- a convention it inherits from convert_to_working_tree -- the patch also changes the path handling in archive-tar.c to always NUL-terminate the string. It used to solely rely on the len field of struct strbuf before. archive-zip.c already NUL-terminates the path and thus needs no such change. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-17user-manual: reorganize public git repo discussionLibravatar J. Bruce Fields1-40/+50
Helping a couple people set up public repos recently, I wanted to point them at this piece of the user manual, but found it wasn't as helpful as it could be: - It starts with a big explanation of why you'd want a public repository, not necessary in their case since they already knew why they wanted that. So, separate that out. - It skimps on some of the git-daemon details, and puts the http export information first. Fix that. Also group all the public repo subsections into a single section, and do some miscellaneous related editing. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-17user-manual: listing commits reachable from some refs not othersLibravatar J. Bruce Fields1-0/+48
This is just an amusing example raised by someone in irc. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-17user-manual: introduce gitLibravatar J. Bruce Fields1-0/+3
Well, we should say at least something about what git is. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-17user-manual: add a "counting commits" exampleLibravatar J. Bruce Fields1-0/+19
This is partly just an excuse to mention --pretty= and rev-list. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-17user-manual: move howto/using-topic-branches into manualLibravatar J. Bruce Fields2-297/+296
Move howto/using-topic-branches into the user manual as an example for the "sharing development" chapter. While we're at it, remove some discussion that's covered in earlier chapters, modernize somewhat (use separate-heads setup, remotes, replace "whatchanged" by "log", etc.), and replace syntax we'd need to explain by syntax we've already covered (e.g. old..new instead of new ^old). The result may not really describe what Tony Luck does any more.... Hope that's not annoying. Cc: Tony Luck <tony.luck@intel.com> Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>