git-annex (0.18) UNRELEASED; urgency=low

  * Bugfix: `copy --to` and `move --to` forgot to stage location log changes
    after transferring the file to the remote repository.
    (Did not affect ssh remotes.)
  * fsck: Fix bug in moving of corrupted files to .git/annex/bad/
  * migrate: Fix support for --backend option.
  * Test suite improvements. Current top-level test coverage: 80%

 -- Joey Hess <joeyh@debian.org>  Tue, 11 Jan 2011 16:05:25 -0400

git-annex (0.17) unstable; urgency=low

  * unannex: Now skips files whose content is not present, rather than
    it being an error.
  * New migrate subcommand can be used to switch files to using a different
    backend, safely and with no duplication of content.
  * bugfix: Fix crash caused by empty key name. (Thanks Henrik for reporting.)

 -- Joey Hess <joeyh@debian.org>  Sun, 09 Jan 2011 10:04:11 -0400

git-annex (0.16) unstable; urgency=low

  * git-annex-shell: Avoid exposing any git repo config except for the
    annex.uuid when doing configlist.
  * bugfix: Running `move --to` with a remote whose UUID was not yet known
    could result in git-annex not recording on the local side where the
    file was moved to. This could not result in data loss, or even a
    significant problem, since the remote *did* record that it had the file.
  * Also, add a general guard to detect attempts to record information
    about repositories with missing UUIDs.
  * bugfix: Running `move --to` with a non-ssh remote failed.
  * bugfix: Running `copy --to` with a non-ssh remote actually did a move.
  * Many test suite improvements. Current top-level test coverage: 65%

 -- Joey Hess <joeyh@debian.org>  Fri, 07 Jan 2011 14:33:13 -0400

git-annex (0.15) unstable; urgency=low

  * Support scp-style urls for remotes (host:path).
  * Support ssh urls containing "~".
  * Add trust and untrust subcommands, to allow configuring repositories
    that are trusted to retain files without explicit checking.
  * Fix bug in numcopies handling when multiple remotes pointed to the
    same repository.
  * Introduce the git-annex-shell command. It's now possible to make
    a user have it as a restricted login shell, similar to git-shell.
  * Note that git-annex will always use git-annex-shell when accessing
    a ssh remote, so all of your remotes need to be upgraded to this
    version of git-annex at the same time.
  * Now rsync is exclusively used for copying files to and from remotes.
    scp is not longer supported.

 -- Joey Hess <joeyh@debian.org>  Fri, 31 Dec 2010 22:00:52 -0400

git-annex (0.14) unstable; urgency=low

  * Bugfix to git annex unused in a repository with nothing yet annexed.
  * Support upgrading from a v0 annex with nothing in it.
  * Avoid multiple calls to git ls-files when passed eg, "*".

 -- Joey Hess <joeyh@debian.org>  Fri, 24 Dec 2010 17:38:48 -0400

git-annex (0.13) unstable; urgency=low

  * Makefile: Install man page and html (when built).
  * Makefile: Add GHCFLAGS variable.
  * Fix upgrade from 0.03.
  * Support remotes using git+ssh and ssh+git as protocol.
    Closes: #607056

 -- Joey Hess <joeyh@debian.org>  Tue, 14 Dec 2010 13:05:10 -0400

git-annex (0.12) unstable; urgency=low

  * Add --exclude option to exclude files from processing.
  * mwdn2man: Fix a bug in newline supression. Closes: #606578
  * Bugfix to git annex add of an unlocked file in a subdir. Closes: #606579
  * Makefile: Add PREFIX variable.

 -- Joey Hess <joeyh@debian.org>  Sat, 11 Dec 2010 17:32:00 -0400

git-annex (0.11) unstable; urgency=low

  * If available, rsync will be used for file transfers from remote
    repositories. This allows resuming interrupted transfers.
  * Added remote.annex-rsync-options.
  * Avoid deleting temp files when rsync fails.
  * Improve detection of version 0 repos.
  * Add uninit subcommand. Closes: #605749

 -- Joey Hess <joeyh@debian.org>  Sat, 04 Dec 2010 17:27:42 -0400

git-annex (0.10) unstable; urgency=low

  * In .gitattributes, the annex.numcopies attribute can be used
    to control the number of copies to retain of different types of files.
  * Bugfix: Always correctly handle gitattributes when in a subdirectory of
    the repository. (Had worked ok for ones like "*.mp3", but failed for
    ones like "dir/*".)
  * fsck: Fix warning about not enough copies of a file, when locations
    are known, but are not available in currently configured remotes.
  * precommit: Optimise to avoid calling git-check-attr more than once.
  * The git-annex-backend attribute has been renamed to annex.backend.

 -- Joey Hess <joeyh@debian.org>  Sun, 28 Nov 2010 19:28:05 -0400

git-annex (0.09) unstable; urgency=low

  * Add copy subcommand.
  * Fix bug in setkey subcommand triggered by move --to.

 -- Joey Hess <joeyh@debian.org>  Sat, 27 Nov 2010 17:14:59 -0400

git-annex (0.08) unstable; urgency=low

  * Fix `git annex add ../foo` (when ran in a subdir of the repo).
  * Add configure step to build process.
  * Only use cp -a if it is supported, falling back to cp -p or plain cp
    as needed for portability.
  * cp --reflink=auto is used if supported, and will make git annex unlock
    much faster on filesystems like btrfs that support copy on write.

 -- Joey Hess <joeyh@debian.org>  Sun, 21 Nov 2010 13:45:44 -0400

git-annex (0.07) unstable; urgency=low

  * find: New subcommand.
  * unused: New subcommand, finds unused data. (Split out from fsck.)
  * dropunused: New subcommand, provides for easy dropping of unused keys
    by number, as listed by the unused subcommand.
  * fsck: Print warnings to stderr; --quiet can now be used to only see
    problems.

 -- Joey Hess <joeyh@debian.org>  Mon, 15 Nov 2010 18:41:50 -0400

git-annex (0.06) unstable; urgency=low

  * fsck: Check if annex.numcopies is satisfied.
  * fsck: Verify the sha1 of files when the SHA1 backend is used.
  * fsck: Verify the size of files when the WORM backend is used.
  * fsck: Allow specifying individual files if fscking everything
    is not desired.
  * fsck: Fix bug, introduced in 0.04, in detection of unused data.

 -- Joey Hess <joeyh@debian.org>  Sat, 13 Nov 2010 16:24:29 -0400

git-annex (0.05) unstable; urgency=low

  * Optimize both pre-commit and lock subcommands to not call git diff
    on every file being committed/locked.
    (This actually also works around a bug in ghc, that caused
    git-annex 0.04 pre-commit to sometimes corrupt filename being read
    from git ls-files and fail. 
    See <http://hackage.haskell.org/trac/ghc/ticket/4493>
    The excessive number of calls made by pre-commit exposed the ghc bug.
    Thanks Josh Triplett for the debugging.)
  * Build with -O2.

 -- Joey Hess <joeyh@debian.org>  Thu, 11 Nov 2010 18:31:09 -0400

git-annex (0.04) unstable; urgency=low

  * Add unlock subcommand, which replaces the symlink with a copy of
    the file's content in preparation of changing it. The "edit" subcommand
    is an alias for unlock.
  * Add lock subcommand.
  * Unlocked files will now automatically be added back into the annex when
    committed (and the updated symlink committed), by some magic in the
    pre-commit hook.
  * The SHA1 backend is now fully usable.
  * Add annex.version, which will be used to automate upgrades
    between incompatible versions.
  * Reorganised the layout of .git/annex/
  * The new layout will be automatically upgraded to the first time
    git-annex is used in a repository with the old layout.
  * Note that git-annex 0.04 cannot transfer content from old repositories
    that have not yet been upgraded.
  * Annexed file contents are now made unwritable and put in unwriteable
    directories, to avoid them accidentially being removed or modified.
    (Thanks Josh Triplett for the idea.)
  * Add build dep on libghc6-testpack-dev. Closes: #603016
  * Avoid using runghc to run test suite as it is not available on all
    architectures. Closes: #603006

 -- Joey Hess <joeyh@debian.org>  Wed, 10 Nov 2010 14:23:23 -0400

git-annex (0.03) unstable; urgency=low

  * Fix support for file:// remotes.
  * Add --verbose
  * Fix SIGINT handling.
  * Fix handling of files with unusual characters in their name.
  * Fixed memory leak; git-annex no longer reads the whole file list
    from git before starting, and will be much faster with large repos.
  * Fix crash on unknown symlinks.
  * Added remote.annex-scp-options and remote.annex-ssh-options.
  * The backends to use when adding different sets of files can be configured
    via gitattributes.
  * In .gitattributes, the git-annex-backend attribute can be set to the
    names of backends to use when adding different types of files.
  * Add fsck subcommand. (For now it only finds unused key contents in the
    annex.)

 -- Joey Hess <joeyh@debian.org>  Sun, 07 Nov 2010 18:26:04 -0400

git-annex (0.02) unstable; urgency=low

  * Can scp annexed files from remote hosts, and check remote hosts for
    file content when dropping files.
  * New move subcommand, that makes it easy to move file contents from
    or to a remote.
  * New fromkey subcommand, for registering urls, etc.
  * git-annex init will now set up a pre-commit hook that fixes up symlinks
    before they are committed, to ensure that moving symlinks around does not
    break them.
  * More intelligent and fast staging of modified files; git add coalescing.
  * Add remote.annex-ignore git config setting to allow completly disabling
    a given remote.
  * --from/--to can be used to control the remote repository that git-annex
    uses.
  * --quiet can be used to avoid verbose output
  * New plumbing-level dropkey and addkey subcommands.
  * Lots of bug fixes.

 -- Joey Hess <joeyh@debian.org>  Wed, 27 Oct 2010 16:39:29 -0400

git-annex (0.01) unstable; urgency=low

  * First prerelease.

 -- Joey Hess <joeyh@debian.org>  Wed, 20 Oct 2010 12:54:24 -0400