mirror of
https://github.com/git/git.git
synced 2026-01-18 14:44:28 +00:00
Merge branch 'master' into next
* master: Windows: start_command: Support non-NULL dir in struct child_process Git 1.7.0.5 blame documentation: -M/-C notice copied lines as well as moved ones t3507: Make test executable
This commit is contained in:
26
Documentation/RelNotes-1.7.0.5.txt
Normal file
26
Documentation/RelNotes-1.7.0.5.txt
Normal file
@@ -0,0 +1,26 @@
|
||||
Git v1.7.0.5 Release Notes
|
||||
==========================
|
||||
|
||||
Fixes since v1.7.0.4
|
||||
--------------------
|
||||
|
||||
* "git daemon" failed to compile on platforms without sockaddr_storage type.
|
||||
|
||||
* Output from "git rev-list --pretty=oneline" was unparsable when a
|
||||
commit did not have any message, which is abnormal but possible in a
|
||||
repository converted from foreign scm.
|
||||
|
||||
* "git stash show <commit-that-is-not-a-stash>" gave an error message
|
||||
that was not so useful. Reworded the message to "<it> is not a
|
||||
stash".
|
||||
|
||||
* Python scripts in contrib/ area now start with "#!/usr/bin/env python"
|
||||
to honor user's PATH.
|
||||
|
||||
* "git imap-send" used to mistake any line that begins with "From " as a
|
||||
message separator in format-patch output.
|
||||
|
||||
* Smart http server backend failed to report an internal server error and
|
||||
infinitely looped instead after output pipe was closed.
|
||||
|
||||
And other minor fixes and documentation updates.
|
||||
@@ -79,14 +79,15 @@ of lines before or after the line given by <start>.
|
||||
of the --date option at linkgit:git-log[1].
|
||||
|
||||
-M|<num>|::
|
||||
Detect moving lines in the file as well. When a commit
|
||||
moves a block of lines in a file (e.g. the original file
|
||||
has A and then B, and the commit changes it to B and
|
||||
then A), the traditional 'blame' algorithm typically blames
|
||||
the lines that were moved up (i.e. B) to the parent and
|
||||
assigns blame to the lines that were moved down (i.e. A)
|
||||
to the child commit. With this option, both groups of lines
|
||||
are blamed on the parent.
|
||||
Detect moved or copied lines within a file. When a commit
|
||||
moves or copies a block of lines (e.g. the original file
|
||||
has A and then B, and the commit changes it to B and then
|
||||
A), the traditional 'blame' algorithm notices only half of
|
||||
the movement and typically blames the lines that were moved
|
||||
up (i.e. B) to the parent and assigns blame to the lines that
|
||||
were moved down (i.e. A) to the child commit. With this
|
||||
option, both groups of lines are blamed on the parent by
|
||||
running extra passes of inspection.
|
||||
+
|
||||
<num> is optional but it is the lower bound on the number of
|
||||
alphanumeric characters that git must detect as moving
|
||||
@@ -94,7 +95,7 @@ within a file for it to associate those lines with the parent
|
||||
commit.
|
||||
|
||||
-C|<num>|::
|
||||
In addition to `-M`, detect lines copied from other
|
||||
In addition to `-M`, detect lines moved or copied from other
|
||||
files that were modified in the same commit. This is
|
||||
useful when you reorganize your program and move code
|
||||
around across files. When this option is given twice,
|
||||
|
||||
@@ -44,9 +44,10 @@ unreleased) version of git, that is available from 'master'
|
||||
branch of the `git.git` repository.
|
||||
Documentation for older releases are available here:
|
||||
|
||||
* link:v1.7.0.4/git.html[documentation for release 1.7.0.4]
|
||||
* link:v1.7.0.5/git.html[documentation for release 1.7.0.5]
|
||||
|
||||
* release notes for
|
||||
link:RelNotes-1.7.0.5.txt[1.7.0.5],
|
||||
link:RelNotes-1.7.0.4.txt[1.7.0.4],
|
||||
link:RelNotes-1.7.0.3.txt[1.7.0.3],
|
||||
link:RelNotes-1.7.0.2.txt[1.7.0.2],
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
GVF=GIT-VERSION-FILE
|
||||
DEF_VER=v1.7.0.4
|
||||
DEF_VER=v1.7.1.rc1.GIT
|
||||
|
||||
LF='
|
||||
'
|
||||
|
||||
@@ -650,6 +650,7 @@ static int env_compare(const void *a, const void *b)
|
||||
}
|
||||
|
||||
static pid_t mingw_spawnve_fd(const char *cmd, const char **argv, char **env,
|
||||
const char *dir,
|
||||
int prepend_cmd, int fhin, int fhout, int fherr)
|
||||
{
|
||||
STARTUPINFO si;
|
||||
@@ -729,7 +730,7 @@ static pid_t mingw_spawnve_fd(const char *cmd, const char **argv, char **env,
|
||||
|
||||
memset(&pi, 0, sizeof(pi));
|
||||
ret = CreateProcess(cmd, args.buf, NULL, NULL, TRUE, flags,
|
||||
env ? envblk.buf : NULL, NULL, &si, &pi);
|
||||
env ? envblk.buf : NULL, dir, &si, &pi);
|
||||
|
||||
if (env)
|
||||
strbuf_release(&envblk);
|
||||
@@ -746,10 +747,11 @@ static pid_t mingw_spawnve_fd(const char *cmd, const char **argv, char **env,
|
||||
static pid_t mingw_spawnve(const char *cmd, const char **argv, char **env,
|
||||
int prepend_cmd)
|
||||
{
|
||||
return mingw_spawnve_fd(cmd, argv, env, prepend_cmd, 0, 1, 2);
|
||||
return mingw_spawnve_fd(cmd, argv, env, NULL, prepend_cmd, 0, 1, 2);
|
||||
}
|
||||
|
||||
pid_t mingw_spawnvpe(const char *cmd, const char **argv, char **env,
|
||||
const char *dir,
|
||||
int fhin, int fhout, int fherr)
|
||||
{
|
||||
pid_t pid;
|
||||
@@ -772,14 +774,14 @@ pid_t mingw_spawnvpe(const char *cmd, const char **argv, char **env,
|
||||
pid = -1;
|
||||
}
|
||||
else {
|
||||
pid = mingw_spawnve_fd(iprog, argv, env, 1,
|
||||
pid = mingw_spawnve_fd(iprog, argv, env, dir, 1,
|
||||
fhin, fhout, fherr);
|
||||
free(iprog);
|
||||
}
|
||||
argv[0] = argv0;
|
||||
}
|
||||
else
|
||||
pid = mingw_spawnve_fd(prog, argv, env, 0,
|
||||
pid = mingw_spawnve_fd(prog, argv, env, dir, 0,
|
||||
fhin, fhout, fherr);
|
||||
free(prog);
|
||||
}
|
||||
|
||||
@@ -229,6 +229,7 @@ int mingw_utime(const char *file_name, const struct utimbuf *times);
|
||||
#define utime mingw_utime
|
||||
|
||||
pid_t mingw_spawnvpe(const char *cmd, const char **argv, char **env,
|
||||
const char *dir,
|
||||
int fhin, int fhout, int fherr);
|
||||
void mingw_execvp(const char *cmd, char *const *argv);
|
||||
#define execvp mingw_execvp
|
||||
|
||||
@@ -342,8 +342,6 @@ fail_pipe:
|
||||
else if (cmd->out > 1)
|
||||
fhout = dup(cmd->out);
|
||||
|
||||
if (cmd->dir)
|
||||
die("chdir in start_command() not implemented");
|
||||
if (cmd->env)
|
||||
env = make_augmented_environ(cmd->env);
|
||||
|
||||
@@ -353,7 +351,7 @@ fail_pipe:
|
||||
cmd->argv = prepare_shell_cmd(cmd->argv);
|
||||
}
|
||||
|
||||
cmd->pid = mingw_spawnvpe(cmd->argv[0], cmd->argv, env,
|
||||
cmd->pid = mingw_spawnvpe(cmd->argv[0], cmd->argv, env, cmd->dir,
|
||||
fhin, fhout, fherr);
|
||||
failed_errno = errno;
|
||||
if (cmd->pid < 0 && (!cmd->silent_exec_failure || errno != ENOENT))
|
||||
|
||||
0
t/t3507-cherry-pick-conflict.sh
Normal file → Executable file
0
t/t3507-cherry-pick-conflict.sh
Normal file → Executable file
Reference in New Issue
Block a user