summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-05-13git-svn: don't attempt to minimize URLs by defaultLibravatar Eric Wong6-16/+19
For tracking branches and tags, git-svn prefers to connect to the root of the repository or at least the level that houses branches and tags as well as trunk. However, users that are accustomed to tracking a single directory have no use for this feature. As pointed out by Junio, users may not have permissions to connect to connect to a higher-level path in the repository. While the current minimize_url() function detects lack of permissions to certain paths _after_ successful logins, it cannot effectively determine if it is trying to access a login-only portion of a repo when the user expects to connect to a part where anonymous access is allowed. For people used to the git-svnimport switches of --trunk, --tags, --branches, they'll already pass the repository root (or root+subdirectory), so minimize URL isn't of too much use to them, either. For people *not* used to git-svnimport, git-svn also supports: git svn init --minimize-url \ --trunk http://repository-root/foo/trunk \ --branches http://repository-root/foo/branches \ --tags http://repository-root/foo/tags And this is where the new --minimize-url command-line switch comes in to allow for this behavior to continue working.
2007-05-13git-svn: fix segfaults due to initial SVN pool being clearedLibravatar Eric Wong1-1/+0
Some parts of SVN always seem to use it, even if the SVN::Ra object we're using is no longer used and we've created a new one in its place. It's also true that only one SVN::Ra connection can exist at once... Using SVN::Pool->new_default when the SVN::Ra object is created doesn't seem to help very much, either... Hopefully this fixes all segfault problems users have been experiencing over the past few months. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-05-13git-svn: clean up caching of SVN::Ra functionsLibravatar Eric Wong1-26/+42
This patch was originally intended to make the Perl GC more sensitive to the SVN::Pool objects and not accidentally clean them up when they shouldn't be (causing segfaults). That didn't work, but this patch makes the code a bit cleaner regardless Put our caches for get_dir and check_path calls directly into the SVN::Ra object so they auto-expire when it is destroyed. dirents returned by get_dir() no longer needs the pool object stored persistently along with the cache data, as they'll be converted to native Perl hash references. Since calling rev_proplist repeatedly per-revision is no longer needed in git-svn, we do not cache calls to it. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-05-13git-svn: don't drop the username from URLs when dcommit is runLibravatar Eric Wong1-1/+1
We no longer store usernames in URLs stored in git-svn-id lines for dcommit, so we shouldn't rely on those URLs when connecting to the remote repository to commit.
2007-05-13RPM spec: include files in technical/ to package.Libravatar Quy Tonthat1-0/+5
Not only that they are interesting to users, some of the files are linked to by the included "Git User's Manual" Signed-off-by: Quy Tonthat <qtonthat@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-13Remove stale non-static-inline prototype for tree_entry_extract()Libravatar Matthieu Castet1-1/+0
When 4651ece8 made the function a "static inline", it should have removd the stale prototype but everybody missed that. Thomas Glanzmann noticed this broke compilation with Forte12 compiler on his Sun boxes. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-13git-config: test for 'do not forget "a.b.var" ends "a.var" section'.Libravatar Steffen Prohaska1-0/+19
Added test for mentioned bugfix. Signed-off-by: Steffen Prohaska <prohaska@zib.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-13git-config: do not forget seeing "a.b.var" means we are out of "a.var" section.Libravatar Junio C Hamano1-4/+24
Earlier code tried to be half-careful and knew the logic that seeing "a.var" after seeing "a.b.var" is a sign of the previous "a.b." section has ended, but forgot it has to handle the other way. Seeing "a.b.var" after seeing "a.var" is a sign that "a." section has ended, so a new "a.var2" variable should be added before the location "a.b.var" appears. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-12checkout: allow detaching to HEAD even when switching to the tip of a branchLibravatar Junio C Hamano2-3/+64
You cannot currently checkout the tip of an existing branch without moving to the branch. This allows you to detach your HEAD and place it at such a commit, with: $ git checkout master^0 Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-12Updated documentation of hooks in git-receive-pack.Libravatar Jan Hudec1-7/+70
Added documentation of pre-receive and post-receive hooks and updated documentation of update and post-update hooks. [jc: with minor copy-editing] Signed-off-by: Jan Hudec <bulb@ucw.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-12Allow fetching references from any namespaceLibravatar Alex Riesen1-2/+2
not only from the three defined: heads, tags and remotes. Noticed when I tried to fetch the references created by git-p4-import.bat: they are placed into separate namespace (refs/p4import/, to avoid showing them in git-branch output). As canon_refs_list_for_fetch always prepended refs/heads/ it was impossible, and annoying: it worked before. Normally, the p4import references are useless anywhere but in the directory managed by perforce, but in this special case the cloned directory was supposed to be a backup, including the p4import branch: it keeps information about where the imported perforce state came from. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-12tiny fix in documentation of git-cloneLibravatar Steffen Prohaska1-1/+1
path in example was missing '../' Signed-off-by: Steffen Prohaska <prohaska@zib.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-12Fix an unmatched comment end in arm/sha1_arm.SLibravatar Marco Costalba1-1/+1
Signed-off-by: Marco Costalba <mcostalba@gmail.com> Acked-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-10Merge branch 'maint' of git://repo.or.cz/git/fastimport into maintLibravatar Junio C Hamano1-1/+1
* 'maint' of git://repo.or.cz/git/fastimport: Fix documentation of tag in git-fast-import.txt Properly handle '0' filenames in import-tars
2007-05-10Fix documentation of tag in git-fast-import.txtLibravatar Richard P. Curnow1-1/+0
The tag command does not take a trailing LF. Signed-off-by: Richard P. Curnow <rc@rc0.org.uk> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-10Merge branch 'gfi-maint' into maintLibravatar Shawn O. Pearce1-1/+1
* gfi-maint: Properly handle '0' filenames in import-tars
2007-05-10.mailmap: add some aliasesLibravatar Junio C Hamano1-0/+4
2007-05-10SPECIFYING RANGES typo fix: it it => it isLibravatar Jari Aalto1-1/+1
Signed-off-by: Jari Aalto <jari.aalto@cante.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-10git-clone: don't get fooled by $PWDLibravatar Junio C Hamano1-1/+8
If you have /home/me/git symlink pointing at /pub/git/mine, trying to clone from /pub/git/his/ using relative path would not work as expected: $ cd /home/me $ cd git $ ls ../ his mine $ git clone -l -s -n ../his/stuff.git This is because "cd ../his/stuff.git" done inside git-clone to check if the repository is local is confused by $PWD, which is set to /home/me, and tries to go to /home/his/stuff.git which is different from /pub/git/his/stuff.git. We could probably say "set -P" (or "cd -P") instead, if we know the shell is POSIX, but the way the patch is coded is probably more portable. [jc: this is updated with Andy Whitcroft's improvements] Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-09Fix documentation of tag in git-fast-import.txtLibravatar Richard P. Curnow1-1/+0
The tag command does not take a trailing LF. Signed-off-by: Richard P. Curnow <rc@rc0.org.uk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-08GIT v1.5.1.4Libravatar Junio C Hamano3-2/+32
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-08Add howto files to rpm packages.Libravatar Quy Tonthat1-1/+4
RPM packages did not include howto files which causes broken links in howto-index.html Signed-off-by: Quy Tonthat <qtonthat@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07wcwidth redeclarationLibravatar Amos Waterland1-2/+2
Build fails for git 1.5.1.3 on AIX, with the message: utf8.c:66: error: conflicting types for 'wcwidth' /.../lib/gcc/powerpc-ibm-aix5.3.0.0/4.0.3/include/string.h:266: error: previous declaration of 'wcwidth' was here Fix this by renaming our static variant to our own name. Signed-off-by: Amos Waterland <apw@us.ibm.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07user-manual: fix clone and fetch typosLibravatar J. Bruce Fields1-7/+6
More typo fixes from Santi Béjar, plus a couple other mistakes I noticed along the way. Cc: Santi Béjar <sbejar@gmail.com> Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07Properly handle '0' filenames in import-tarsLibravatar Shawn O. Pearce1-1/+1
Randal L. Schwartz pointed out multiple times that we should be testing the length of the name string here, not if it is "true". The problem is the string '0' is actually false in Perl when we try to evaluate it in this context, as '0' is 0 numerically and the number 0 is treated as a false value. This would cause us to break out of the import loop early if anyone had a file or directory named "0". Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-07Merge branch 'maint' of git://repo.or.cz/git-gui into maintLibravatar Junio C Hamano1-1/+1
* 'maint' of git://repo.or.cz/git-gui: git-gui: Allow spaces in path to 'wish'
2007-05-07Merge git://git2.kernel.org/pub/scm/gitk/gitk into maintLibravatar Junio C Hamano1-0/+17
* git://git2.kernel.org/pub/scm/gitk/gitk: gitk: Allow user to choose whether to see the diff, old file, or new file
2007-05-06Documentation: don't reference non-existent 'git-cvsapplycommit'Libravatar Jeff King1-1/+1
Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07user-manual: stop deprecating the manualLibravatar J. Bruce Fields1-4/+3
It's just as much a work-in-progress, but at least now it's gotten enough technical review to shake out most of the really bad lies, so hopefully it doesn't do any actual damage. And if we encourage people to read it, they'll be more likely to whine about it, which will help get it fixed faster. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-07user-manual: miscellaneous editingLibravatar J. Bruce Fields1-35/+47
I cherry-picked some additional miscellaneous fixes from those suggested by Santi Béjar, including fixes to: - correct discussion of repository/HEAD->repository shortcut - add mention of git-mergetool - add mention of --track - mention "-f" as well as "+" for fetch Cc: Santi Béjar <sbejar@gmail.com> Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-07user-manual: fix .gitconfig editing examplesLibravatar J. Bruce Fields1-4/+3
Santi Béjar points out that when telling people how to "introduce themselves" to git we're advising them to replace their entire .gitconfig file. Fix that. Cc: "Santi Béjar <sbejar@gmail.com> Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-07user-manual: clean up fast-forward and dangling-objects sectionsLibravatar J. Bruce Fields1-33/+40
The previous commit calls attention to the fact that we have two sections each devoted to fast-forwards and to dangling objects. Revise and attempt to differentiate them a bit. Some more reorganization may be required later.... Signed-off-by: J. Bruce Fields
2007-05-07user-manual: add section ID'sLibravatar J. Bruce Fields1-2/+82
Any section lacking an id gets an annoying warning when you build the manual. More seriously, the table of contents then generates volatile id's which change with every build, with the effect that we get URL's that change all the time. The ID's are manually generated and sometimes inconsistent, but that's OK. XXX: what to do about the preface? Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-07user-manual: more discussion of detached heads, fix typosLibravatar J. Bruce Fields1-5/+15
Nicolas Pitre pointed out a couple typos and some room for improvement in the discussion of detached heads. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu> Cc: Nicolas Pitre <nico@cam.org>
2007-05-05Small correction in reading of commit headersLibravatar Alex Riesen1-1/+3
Check if a line of the header has enough characters to possibly contain the requested prefix. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Documentation: fix typo in git-remote.txtLibravatar James Bowes1-1/+1
Signed-off-by: James Bowes <jbowes@dangerouslyinc.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Add test for blame corner cases.Libravatar Junio C Hamano1-0/+132
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05blame: -C -C -CLibravatar Junio C Hamano1-2/+13
When you do this, existing "blame -C -C" would not find that the latter half of the file2 came from the existing file1: ... both file1 and file2 are tracked ... $ cat file1 >>file2 $ git add file1 file2 $ git commit This is because we avoid the expensive find-copies-harder code that makes unchanged file (in this case, file1) as a candidate for copy & paste source when annotating an existing file (file2). The third -C now allows it. However, this obviously makes the process very expensive. We've actually seen this patch before, but I dismissed it because it covers such a narrow (and arguably stupid) corner case. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05blame: Notice a wholesale incorporation of an existing file.Libravatar Junio C Hamano1-12/+40
The -C option to blame tries to find a section of a preimage file by running diff against the lines whose origin is still unknown, and excluding the different parts. The code however did not cover the case where the tail part of the section matched, which we handle for the normal non-move/copy codepath. This breakage was most visible when preimage file matches in its entirety and failed to pass blame in such a case. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Fix --boundary outputLibravatar Linus Torvalds1-4/+4
"git log --boundary" incorrectly honoured the option only when "left-right" was enabled. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04diff format documentation: describe raw combined diff formatLibravatar Jakub Narebski1-0/+22
Add description of raw combined diff format to diff-formats.txt, as "diff format for merges" section, before "Generating patches..." section. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04Mention version 1.5.1 in tutorial and user-manualLibravatar Carl Worth2-4/+4
Most other documentation will frequently be read from an installation of git so will naturally be associated with the installed version. But these two documents in particular are often read from web pages while users are still exploring git. It's important to mention version 1.5.1 since these documents provide example commands that won't work with previous versions of git. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04Add --no-rebase option to git-svn dcommitLibravatar Karl Hasselström2-15/+21
git-svn dcommit exports commits to Subversion, then imports them back to git again, and last but not least rebases or resets HEAD to the last of the new commits. I guess this rebasing is convenient when using just git, but when the commits to be exported are managed by StGIT, it's really annoying. So add an option to disable this behavior. And document it, too! Signed-off-by: Karl Hasselström <kha@treskal.com> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04Fix markup in git-svn man pageLibravatar Karl Hasselström1-19/+13
Some of the existing markup was just plain broken, and some subcommand options weren't indented properly. Signed-off-by: Karl Hasselström <kha@treskal.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03gitweb: use decode_utf8 directlyLibravatar Ismail Dönmez1-16/+10
Using decode() tries to decode data that is already UTF-8 and borks, but decode_utf8 from Encode.pm has a built-in safety against that. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03posix compatibility for t4200Libravatar Bryan Larsen1-1/+1
Fix t4200 so that it also works on OS X by not relying on gnu extensions to sed. Signed-off-by: Bryan Larsen <bryan@larsen.st> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03Document 'opendiff' value in config.txt and git-mergetool.txtLibravatar Arjen Laarhoven2-2/+2
Signed-off-by: Arjen Laarhoven <arjen@yaph.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03Allow PERL_PATH="/usr/bin/env perl"Libravatar Bryan Larsen1-1/+1
There is a mechanism PERL_PATH in the Makefile to specify path to Perl binary, but sometimes it is convenient to let 'env' figure out where Perl comes from, with PERL_PATH="/usr/bin/env perl". Allowing this would make things easier to MacPorts, where we wish to work with the MacPorts perl if it is installed, but fall back to the system perl if it isn't. Signed-off-by: Bryan Larsen <bryan@larsen.st> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03Make xstrndup commonLibravatar Daniel Barkalow2-8/+13
This also improves the implementation to match how strndup is specified (by GNU): if the length given is longer than the string, only the string's length is allocated and copied, but the string need not be null-terminated if it is at least as long as the given length. Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03diff.c: fix "size cache" handling.Libravatar Junio C Hamano1-6/+7
We broke the size-cache handling when we changed the function signature of sha1_object_info() in 21666f1a. We obviously wanted to cache the size we obtained when sha1_object_info() succeeded, not when it failed. Signed-off-by: Junio C Hamano <junkio@cox.net>