Merge branch 'maint-1.6.2' into maint
authorJunio C Hamano <gitster@pobox.com>
Sun, 21 Jun 2009 06:48:46 +0000 (23:48 -0700)
committerJunio C Hamano <gitster@pobox.com>
Sun, 21 Jun 2009 06:48:46 +0000 (23:48 -0700)
* maint-1.6.2:
git-show-ref.txt: remove word and make consistent
git-svn documentation: fix typo in 'rebase vs. pull/merge' section
use xstrdup, not strdup in ll-merge.c

1  2 
Documentation/git-svn.txt
ll-merge.c
index 1c40894669d6f86e7dbb97d86ef9ee6f2a76190d,d8bf7bfc303af3549c30e199dc0575f8e87e5b9f..74be8435cccf402dce2c95338b9553101b431b88
@@@ -85,10 -85,6 +85,10 @@@ COMMAND
        specified, the prefix must include a trailing slash.
        Setting a prefix is useful if you wish to track multiple
        projects that share a common repository.
 +--ignore-paths=<regex>;;
 +      When passed to 'init' or 'clone' this regular expression will
 +      be preserved as a config key.  See 'fetch' for a description
 +      of '--ignore-paths'.
  
  'fetch'::
        Fetch unfetched revisions from the Subversion remote we are
        makes 'git-log' (even without --date=local) show the same times
        that `svn log` would in the local timezone.
  
 +--parent;;
 +      Fetch only from the SVN parent of the current HEAD.
 +
  This doesn't interfere with interoperating with the Subversion
  repository you cloned from, but if you wish for your local Git
  repository to be able to interoperate with someone else's local Git
@@@ -111,25 -104,17 +111,25 @@@ repository, either don't use this optio
  the same local timezone.
  
  --ignore-paths=<regex>;;
 -      This allows one to specify Perl regular expression that will
 +      This allows one to specify Perl regular expression that will
        cause skipping of all matching paths from checkout from SVN.
 -      Examples:
 +      The '--ignore-paths' option should match for every 'fetch'
 +      (including automatic fetches due to 'clone', 'dcommit',
 +      'rebase', etc) on a given repository.
 +
 +config key: svn-remote.<name>.ignore-paths
 +
 +      If the ignore-paths config key is set and the command
 +      line option is also given, both regular expressions
 +      will be used.
  
 -      --ignore-paths="^doc" - skip "doc*" directory for every fetch.
 +Examples:
  
 -      --ignore-paths="^[^/]+/(?:branches|tags)" - skip "branches"
 -          and "tags" of first level directories.
 +      --ignore-paths="^doc" - skip "doc*" directory for every
 +          fetch.
  
 -      Regular expression is not persistent, you should specify
 -      it every time when fetching.
 +      --ignore-paths="^[^/]+/(?:branches|tags)" - skip
 +          "branches" and "tags" of first level directories.
  
  'clone'::
        Runs 'init' and 'fetch'.  It will automatically create a
@@@ -400,8 -385,7 +400,8 @@@ config key: svn.authorsfil
  
  -q::
  --quiet::
 -      Make 'git-svn' less verbose.
 +      Make 'git-svn' less verbose. Specify a second time to make it
 +      even less verbose.
  
  --repack[=<n>]::
  --repack-flags=<flags>::
@@@ -615,7 -599,7 +615,7 @@@ pulled or merged from.  This is becaus
  If you use `git svn set-tree A..B` to commit several diffs and you do
  not have the latest remotes/git-svn merged into my-branch, you should
  use `git svn rebase` to update your work branch instead of `git pull` or
- `git merge`.  `pull`/`merge' can cause non-linear history to be flattened
+ `git merge`.  `pull`/`merge` can cause non-linear history to be flattened
  when committing into SVN, which can lead to merge commits reversing
  previous commits in SVN.
  
@@@ -688,14 -672,14 +688,14 @@@ listed below are allowed
  ------------------------------------------------------------------------
  [svn-remote "project-a"]
        url = http://server.org/svn
 +      fetch = trunk/project-a:refs/remotes/project-a/trunk
        branches = branches/*/project-a:refs/remotes/project-a/branches/*
        tags = tags/*/project-a:refs/remotes/project-a/tags/*
 -      trunk = trunk/project-a:refs/remotes/project-a/trunk
  ------------------------------------------------------------------------
  
 -Keep in mind that the '*' (asterisk) wildcard of the local ref
 +Keep in mind that the '\*' (asterisk) wildcard of the local ref
  (right of the ':') *must* be the farthest right path component;
 -however the remote wildcard may be anywhere as long as it's own
 +however the remote wildcard may be anywhere as long as it's an
  independent path component (surrounded by '/' or EOL).   This
  type of configuration is not automatically created by 'init' and
  should be manually entered with a text-editor or using 'git-config'.
diff --combined ll-merge.c
index 81c02ad0531e98379d8cd11dc7c2d70214d67fb4,9723f3a5dc659893080ec1481d595e53f937e252..f7c2bc9278a906baa6dc22289acd920234072500
@@@ -219,7 -219,7 +219,7 @@@ static int ll_ext_merge(const struct ll
        close(fd);
   bad:
        for (i = 0; i < 3; i++)
 -              unlink(temp[i]);
 +              unlink_or_warn(temp[i]);
        strbuf_release(&cmd);
        return status;
  }
@@@ -238,7 -238,7 +238,7 @@@ static int read_merge_config(const cha
  
        if (!strcmp(var, "merge.default")) {
                if (value)
-                       default_ll_merge = strdup(value);
+                       default_ll_merge = xstrdup(value);
                return 0;
        }
  
        if (!strcmp("name", ep)) {
                if (!value)
                        return error("%s: lacks value", var);
-               fn->description = strdup(value);
+               fn->description = xstrdup(value);
                return 0;
        }
  
                 * file named by %A, and signal that it has done with zero exit
                 * status.
                 */
-               fn->cmdline = strdup(value);
+               fn->cmdline = xstrdup(value);
                return 0;
        }
  
        if (!strcmp("recursive", ep)) {
                if (!value)
                        return error("%s: lacks value", var);
-               fn->recursive = strdup(value);
+               fn->recursive = xstrdup(value);
                return 0;
        }