diff --git a/Documentation/RelNotes/1.7.7.txt b/Documentation/RelNotes/1.7.7.txt index 42982e5b24..6d3bfd1968 100644 --- a/Documentation/RelNotes/1.7.7.txt +++ b/Documentation/RelNotes/1.7.7.txt @@ -26,12 +26,19 @@ Updates since v1.7.6 * "git diff --stat" learned --stat-count option to limit the output of diffstat report. + * "git fetch", "git push" and friends no longer show connection + errors for addresses that couldn't be connected when at least one + address succeeds (this is arguably a regression but a deliberate + one). + * "git grep" learned --break and --heading options, to let users mimic output format of "ack". * "git rebase master topci" no longer spews usage hints after giving "fatal: no such branch: topci" error message. + * "git stash" learned --include-untracked option. + * "git submodule update" used to stop at the first error updating a submodule; it now goes on to update other submodules that can be updated, and reports the ones with errors at the end. @@ -52,6 +59,10 @@ Fixes since v1.7.6 Unless otherwise noted, all the fixes in 1.7.6.X maintenance track are included in this release. + * "git checkout -b " sometimes wrote a bogus reflog entry, + causing later "git checkout -" fail. + (merge 71ee7fd jc/checkout-reflog-fix~1 later). + * "git diff --cc" learned to correctly ignore binary files. (merge 0508fe5 jk/combine-diff-binary-etc later) @@ -61,6 +72,10 @@ included in this release. * "git rebase -i -p" incorrectly dropped commits from side branches. (merge 12bf828 aw/rebase-i-p later) + * "git submodule add" did not allow a relative repository path when + the superproject did not have any default remote url. + (merge f22a17e8 jl/submodule-add-relurl-wo-upstream later) + * "git submodule foreach" failed to correctly give the standard input to the user-supplied command it invoked. (merge 4dca1aa bc/submodule-foreach-stdin-fix-1.7.4 later) @@ -77,7 +92,7 @@ included in this release. -- exec >/var/tmp/1 echo O=$(git describe master) -O=v1.7.6-232-gd907bf8 +O=v1.7.6-344-g22f4128 git log --first-parent --oneline $O..master echo git shortlog --no-merges ^maint ^$O master diff --git a/Documentation/git-fast-import.txt b/Documentation/git-fast-import.txt index f4aa6c1c00..2969388880 100644 --- a/Documentation/git-fast-import.txt +++ b/Documentation/git-fast-import.txt @@ -660,9 +660,14 @@ paths for a commit are encouraged to do so. `notemodify` ^^^^^^^^^^^^ -Included in a `commit` command to add a new note (annotating a given -commit) or change the content of an existing note. This command has -two different means of specifying the content of the note. +Included in a `commit` `` command to add a new note +annotating a `` or change this annotation contents. +Internally it is similar to filemodify 100644 on `` +path (maybe split into subdirectories). It's not advised to +use any other commands to write to the `` tree except +`filedeleteall` to delete all existing notes in this tree. +This command has two different means of specifying the content +of the note. External data format:: The data content for the note was already supplied by a prior diff --git a/Documentation/git-filter-branch.txt b/Documentation/git-filter-branch.txt index 9dc1f2a947..0f2f117383 100644 --- a/Documentation/git-filter-branch.txt +++ b/Documentation/git-filter-branch.txt @@ -32,8 +32,9 @@ changes, which would normally have no effect. Nevertheless, this may be useful in the future for compensating for some git bugs or such, therefore such a usage is permitted. -*NOTE*: This command honors `.git/info/grafts`. If you have any grafts -defined, running this command will make them permanent. +*NOTE*: This command honors `.git/info/grafts` and `.git/refs/replace/`. +If you have any grafts or replacement refs defined, running this command +will make them permanent. *WARNING*! The rewritten history will have different object names for all the objects and will not converge with the original branch. You will not diff --git a/Documentation/rev-list-options.txt b/Documentation/rev-list-options.txt index 554ab8c88b..39e6207269 100644 --- a/Documentation/rev-list-options.txt +++ b/Documentation/rev-list-options.txt @@ -272,7 +272,7 @@ Default mode:: --full-history:: - As the default mode but does not prune some history. + Same as the default mode, but does not prune some history. --dense:: diff --git a/config.c b/config.c index 6b61a849d2..e42c59b190 100644 --- a/config.c +++ b/config.c @@ -1499,10 +1499,10 @@ int git_config_rename_section(const char *old_name, const char *new_name) } } fclose(config_file); - unlock_and_out: +unlock_and_out: if (commit_lock_file(lock) < 0) ret = error("could not commit config file %s", config_filename); - out: +out: free(config_filename); return ret; } diff --git a/remote-curl.c b/remote-curl.c index 6b8cae0c20..b8cf45a7dd 100644 --- a/remote-curl.c +++ b/remote-curl.c @@ -227,6 +227,8 @@ static struct ref *parse_info_refs(struct discovery *heads) if (data[i] == '\t') mid = &data[i]; if (data[i] == '\n') { + if (mid - start != 40) + die("%sinfo/refs not valid: is this a git repository?", url); data[i] = 0; ref_name = mid + 1; ref = xmalloc(sizeof(struct ref) +