Next | Query returned 142 messages, browsing 131 to 140 | Previous

History of commit frequency

CVS Commit History:


   2014-02-23 11:00:27 by Adam Ciarcinski | Files touched by this commit (8) | Package updated
Log message:
Changes 1.8.5:

Foreign interfaces, subsystems and ports.

 * The HTTP transport, when talking GSS-Negotiate, uses "100
   Continue" response to avoid having to rewind and resend a large
   payload, which may not be always doable.

 * Various bugfixes to remote-bzr and remote-hg (in contrib/).

 * The build procedure is aware of MirBSD now.

 * Various "git p4", "git svn" and "gitk" updates.

UI, Workflows & Features

 * Fetching from a shallowly-cloned repository used to be forbidden,
   primarily because the codepaths involved were not carefully vetted
   and we did not bother supporting such usage. This release attempts
   to allow object transfer out of a shallowly-cloned repository in a
   more controlled way (i.e. the receiver becomes a shallow repository
   with a truncated history).

 * Just like we give a reasonable default for "less" via the LESS
   environment variable, we now specify a reasonable default for "lv"
   via the "LV" environment variable when spawning the pager.

 * Two-level configuration variable names in "branch.*" and \ 
"remote.*"
   hierarchies, whose variables are predominantly three-level, were
   not completed by hitting a <TAB> in bash and zsh completions.

 * Fetching a 'frotz' branch with "git fetch", while a 'frotz/nitfol'
   remote-tracking branch from an earlier fetch was still there, would
   error out, primarily because the command was not told that it is
   allowed to lose any information on our side.  "git fetch --prune"
   now can be used to remove 'frotz/nitfol' to make room for fetching and
   storing the 'frotz' remote-tracking branch.

 * "diff.orderfile=<file>" configuration variable can be used to
   pretend as if the "-O<file>" option were given from the command
   line of "git diff", etc.

 * The negative pathspec syntax allows "git log -- . ':!dir'" to tell
   us "I am interested in everything but 'dir' directory".

 * "git difftool" shows how many different paths there are in total,
   and how many of them have been shown so far, to indicate progress.

 * "git push origin master" used to push our 'master' branch to update
   the 'master' branch at the 'origin' repository.  This has been
   enhanced to use the same ref mapping "git push origin" would use to
   determine what ref at the 'origin' to be updated with our 'master'.
   For example, with this configuration

   [remote "origin"]
      push = refs/heads/*:refs/review/*

   that would cause "git push origin" to push out our local branches
   to corresponding refs under refs/review/ hierarchy at 'origin',
   "git push origin master" would update 'refs/review/master' over
   there.  Alternatively, if push.default is set to 'upstream' and our
   'master' is set to integrate with 'topic' from the 'origin' branch,
   running "git push origin" while on our 'master' would update their
   'topic' branch, and running "git push origin master" while on any
   of our branches does the same.

 * "gitweb" learned to treat ref hierarchies other than refs/heads as
   if they are additional branch namespaces (e.g. refs/changes/ in
   Gerrit).

 * "git for-each-ref --format=..." learned a few formatting directives;
   e.g. "%(color:red)%(HEAD)%(color:reset) %(refname:short) %(subject)".

 * The command string given to "git submodule foreach" is passed
   directly to the shell, without being eval'ed.  This is a backward
   incompatible change that may break existing users.

 * "git log" and friends learned the \ 
"--exclude=<glob>" option, to
   allow people to say "list history of all branches except those that
   match this pattern" with "git log --exclude='*/*' --branches".

 * "git rev-parse --parseopt" learned a new "--stuck-long" \ 
option to
   help scripts parse options with an optional parameter.

 * The "--tags" option to "git fetch" no longer tells the \ 
command to
   fetch _only_ the tags. It instead fetches tags _in addition to_
   what are fetched by the same command line without the option.
   2014-02-06 18:34:02 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
Changes 1.8.5.4:

 * "git fetch --depth=0" was a no-op, and was silently ignored.
   Diagnose it as an error.

 * Remote repository URL expressed in scp-style host:path notation are
   parsed more carefully (e.g. "foo/bar:baz" is local, \ 
"[::1]:/~user" asks
   to connect to user's home directory on host at address ::1.

 * SSL-related options were not passed correctly to underlying socket
   layer in "git send-email".

 * "git commit -v" appends the patch to the log message before
   editing, and then removes the patch when the editor returned
   control. However, the patch was not stripped correctly when the
   first modified path was a submodule.

 * "git mv A B/", when B does not exist as a directory, should error
   out, but it didn't.

 * When we figure out how many file descriptors to allocate for
   keeping packfiles open, a system with non-working getrlimit() could
   cause us to die(), but because we make this call only to get a
   rough estimate of how many is available and we do not even attempt
   to use up all file descriptors available ourselves, it is nicer to
   fall back to a reasonable low value rather than dying.

 * "git log --decorate" did not handle a tag pointed by another tag
   nicely.

 * "git add -A" (no other arguments) in a totally empty working tree
   used to emit an error.

 * There is no reason to have a hardcoded upper limit of the number of
   parents for an octopus merge, created via the graft mechanism, but
   there was.

 * The implementation of 'git stash $cmd "stash@{...}"' did not quote
   the stash argument properly and left it split at IFS whitespace.

 * The documentation to "git pull" hinted there is an "-m" option
   because it incorrectly shared the documentation with "git merge".

Also contains typofixes, documentation updates and trivial code clean-ups.
   2014-01-17 10:53:50 by Adam Ciarcinski | Files touched by this commit (1)
Log message:
Also used by git-svn/Makefile
   2014-01-17 10:50:38 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
Changes 1.8.5.3:
* The "--[no-]informative-errors" options to "git daemon" \ 
were parsed
  a bit too loosely, allowing any other string after these option
  names.
* A "gc" process running as a different user should be able to stop a
  new "gc" process from starting.
* An earlier "clean-up" introduced an unnecessary memory leak to the
  credential subsystem.
* "git mv A B/", when B does not exist as a directory, should error
  out, but it didn't.
* "git rev-parse <revs> -- <paths>" did not implement the usual
  disambiguation rules the commands in the "git log" family used in
  the same way.
* "git cat-file --batch=", an admittedly useless command, did not
  behave very well.
Also contains typofixes, documentation updates and trivial code clean-ups.
   2014-01-07 15:59:04 by Thomas Klausner | Files touched by this commit (1)
Log message:
Fix typo.
Add LICENSE: Set LICENSE of meta package to same license as the
separate packages, to avoid confusion.
   2014-01-01 12:14:38 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
Changes 1.8.5.2:
* "git diff -- ':(icase)makefile'" was unnecessarily rejected at the
  command line parser.
* "git cat-file --batch-check=ok" did not check the existence of
  the named object.
* "git am --abort" sometimes complained about not being able to write
  a tree with an 0{40} object in it.
* Two processes creating loose objects at the same time could have
  failed unnecessarily when the name of their new objects started
  with the same byte value, due to a race condition.
Also contains typofixes, documentation updates and trivial code clean-ups
   2013-12-04 13:51:06 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
Changes 1.8.5.1:
* "git submodule init" copied "submodule.$name.update" \ 
settings from
   .gitmodules to .git/config without making sure if the suggested
   value was sensible.
   2013-11-12 12:22:10 by Adam Ciarcinski | Files touched by this commit (2)
Log message:
Changes 1.8.4.3:
* The interaction between use of Perl in our test suite and NO_PERL
  has been clarified a bit.
* A fast-import stream expresses a pathname with funny characters by
  quoting them in C style; remote-hg remote helper (in contrib/)
  forgot to unquote such a path.

* One long-standing flaw in the pack transfer protocol used by "git
  clone" was that there was no way to tell the other end which branch
  "HEAD" points at, and the receiving end needed to guess.  A new
  capability has been defined in the pack protocol to convey this
  information so that cloning from a repository with more than one
  branches pointing at the same commit where the HEAD is at now
  reliably sets the initial branch in the resulting repository.
* We did not handle cases where http transport gets redirected during
  the authorization request (e.g. from http:// to https://).
* "git rev-list --objects ^v1.0^ v1.0" gave v1.0 tag itself in the
  output, but "git rev-list --objects v1.0^..v1.0" did not.
* The fall-back parsing of commit objects with broken author or
  committer lines were less robust than ideal in picking up the
  timestamps.
* Bash prompting code to deal with an SVN remote as an upstream
  were coded in a way not supported by older Bash versions (3.x).
* "git checkout topic", when there is not yet a local \ 
"topic" branch
  but there is a unique remote-tracking branch for a remote "topic"
  branch, pretended as if "git checkout -t -b topic remote/$r/topic"
  (for that unique remote $r) was run. This hack however was not
  implemented for "git checkout topic --".
* Coloring around octopus merges in "log --graph" output was screwy.
* We did not generate HTML version of documentation to "git subtree"
  in contrib/.
* The synopsis section of "git unpack-objects" documentation has been
  clarified a bit.
* An ancient How-To on serving Git repositories on an HTTP server
  lacked a warning that it has been mostly superseded with more
  modern way.
   2013-11-02 08:54:04 by Adam Ciarcinski | Files touched by this commit (2)
Log message:
Changes 1.8.4.2:
* "git clone" gave some progress messages to the standard output, not
  to the standard error, and did not allow suppressing them with the
  "--no-progress" option.
* "format-patch --from=<whom>" forgot to omit unnecessary in-body
  from line, i.e. when <whom> is the same as the real author.
* "git shortlog" used to choke and die when there is a malformed
  commit (e.g. missing authors); it now simply ignore such a commit
  and keeps going.
* "git merge-recursive" did not parse its \ 
"--diff-algorithm=" command
  line option correctly.
* "git branch --track" had a minor regression in v1.8.3.2 and later
  that made it impossible to base your local work on anything but a
  local branch of the upstream repository you are tracking from.
* "git ls-files -k" needs to crawl only the part of the working tree
  that may overlap the paths in the index to find killed files, but
  shared code with the logic to find all the untracked files, which
  made it unnecessarily inefficient.
* When there is no sufficient overlap between old and new history
  during a "git fetch" into a shallow repository, objects that the
  sending side knows the receiving end has were unnecessarily sent.
* When running "fetch -q", a long silence while the sender side
  computes the set of objects to send can be mistaken by proxies as
  dropped connection.  The server side has been taught to send a
  small empty messages to keep the connection alive.
* When the webserver responds with "405 Method Not Allowed", "git
  http-backend" should tell the client what methods are allowed with
  the "Allow" header.
* "git cvsserver" computed the permission mode bits incorrectly for
  executable files.
* The implementation of "add -i" has a crippling code to work around
  ActiveState Perl limitation but it by mistake also triggered on Git
  for Windows where MSYS perl is used.
* We made sure that we notice the user-supplied GIT_DIR is actually a
  gitfile, but did not do the same when the default ".git" is a
  gitfile.
* When an object is not found after checking the packfiles and then
  loose object directory, read_sha1_file() re-checks the packfiles to
  prevent racing with a concurrent repacker; teach the same logic to
  has_sha1_file().
* "git commit --author=$name", when $name is not in the canonical
  "A. U. Thor <au.thor@example.xz>" format, looks for a matching name
  from existing history, but did not consult mailmap to grab the
  preferred author name.
* The commit object names in the insn sheet that was prepared at the
  beginning of "rebase -i" session can become ambiguous as the
  rebasing progresses and the repository gains more commits. Make
  sure the internal record is kept with full 40-hex object names.
* "git rebase --preserve-merges" internally used the merge machinery
  and as a side effect, left merge summary message in the log, but
  when rebasing, there should not be a need for merge summary.
* "git rebase -i" forgot that the comment character can be
  configurable while reading its insn sheet.
   2013-10-18 21:48:48 by Adam Ciarcinski | Files touched by this commit (5) | Package updated
Log message:
Changes 1.8.4.1:

 * Some old versions of bash do not grok some constructs like
   'printf -v varname' which the prompt and completion code started
   to use recently.  The completion and prompt scripts have been
   adjusted to work better with these old versions of bash.

 * In FreeBSD's and NetBSD's "sh", a return in a dot script in a
   function returns from the function, not only in the dot script,
   breaking "git rebase" on these platforms (regression introduced
   in 1.8.4-rc1).

 * "git rebase -i" and other scripted commands were feeding a
   random, data dependant error message to 'echo' and expecting it
   to come out literally.

 * Setting the "submodule.<name>.path" variable to the empty
   "true" caused the configuration parser to segfault.

 * Output from "git log --full-diff -- <pathspec>" looked strange
   because comparison was done with the previous ancestor that
   touched the specified <pathspec>, causing the patches for paths
   outside the pathspec to show more than the single commit has
   changed.

 * The auto-tag-following code in "git fetch" tries to reuse the
   same transport twice when the serving end does not cooperate and
   does not give tags that point to commits that are asked for as
   part of the primary transfer.  Unfortunately, Git-aware transport
   helper interface is not designed to be used more than once, hence
   this did not work over smart-http transfer.  Fixed.

 * Send a large request to read(2)/write(2) as a smaller but still
   reasonably large chunks, which would improve the latency when the
   operation needs to be killed and incidentally works around broken
   64-bit systems that cannot take a 2GB write or read in one go.

 * A ".mailmap" file that ends with an incomplete line, when read
   from a blob, was not handled properly.

 * The recent "short-cut clone connectivity check" topic broke a
   shallow repository when a fetch operation tries to auto-follow
   tags.

 * When send-email comes up with an error message to die with upon
   failure to start an SSL session, it tried to read the error
   string from a wrong place.

 * A call to xread() was used without a loop to cope with short
   read in the codepath to stream large blobs to a pack.

 * On platforms with fgetc() and friends defined as macros, the
   configuration parser did not compile.

 * New versions of MediaWiki introduced a new API for returning
   more than 500 results in response to a query, which would cause
   the MediaWiki remote helper to go into an infinite loop.

 * Subversion's serf access method (the only one available in
   Subversion 1.8) for http and https URLs in skelta mode tells its
   caller to open multiple files at a time, which made "git svn
   fetch" complain that "Temp file with moniker 'svn_delta' already
   in use" instead of fetching.

Also contains a handful of trivial code clean-ups, documentation
updates, updates to the test suite, etc.

Next | Query returned 142 messages, browsing 131 to 140 | Previous