1. 22 Feb, 2012 2 commits
    • Fix iterators based on pull request feedback · 0534641d
      This update addresses all of the feedback in pull request #570.
      
      The biggest change was to create actual linked list stacks for
      storing the tree and workdir iterator state.  This cleaned up
      the code a ton.  Additionally, all of the static functions had
      their 'git_' prefix removed, and a lot of other unnecessary
      changes were removed from the original patch.
      Russell Belfer committed
    • Iterator improvements from diff implementation · da337c80
      This makes two changes to iterator behavior: first, advance
      can optionally do the work of returning the new current value.
      This is such a common pattern that it really cleans up usage.
      
      Second, for workdir iterators, this removes automatically
      iterating into directories.  That seemed like a good idea,
      but when an entirely new directory hierarchy is introduced
      into the workdir, there is no reason to iterate into it if
      there are no corresponding entries in the tree/index that it
      is being compared to.
      
      This second change actually wasn't a lot of code because not
      descending into directories was already the behavior for
      ignored directories.  This just extends that to all directories.
      Russell Belfer committed
  2. 21 Feb, 2012 2 commits
  3. 20 Feb, 2012 4 commits
  4. 16 Feb, 2012 2 commits
  5. 15 Feb, 2012 5 commits
  6. 13 Feb, 2012 6 commits
  7. 11 Feb, 2012 1 commit
  8. 10 Feb, 2012 2 commits
  9. 09 Feb, 2012 1 commit
  10. 07 Feb, 2012 3 commits
  11. 05 Feb, 2012 3 commits
    • libgit2 v0.16.0 "Dutch Fries" · 242a1cea
      This lovely and much delayed release of libgit2 ships from the cold city
      of Brussels, which is currently hosting FOSDEM 2012.
      
      There's been plenty of changes since the latest stable release, here's a
      full summary:
      
      - Git Attributes support (see git2/attr.h)
      	There is now support to efficiently parse and retrieve information
      	from `.gitattribute` files in a repository. Note that this
      	information is not yet used e.g. when checking out files.
      
      - .gitignore support
      	Likewise, all the operations that are affected by `.gitignore` files
      	now take into account the global, user and local ignores when
      	skipping the relevant files.
      
      - Cleanup of the object ownership semantics
      	The ownership semantics for all repository subparts (index, odb,
      	config files, etc) has been redesigned. All these objects are now
      	reference counted, and can be hot-swapped in the middle of
      	execution, allowing for instance to add a working directory and an
      	index to a repository that was previously opened as bare, or to
      	change the source of the ODB objects after initialization.
      
      	Consequently, the repository API has been simplified to remove all
      	the `_openX` calls that allowed setting these subparts *before*
      	initialization.
      
      - git_index_read_tree()
      	Git trees can now be read into the index.
      
      - More reflog functionality
      	The reference log has been optimized, and new API calls to rename
      	and delete the logs for a reference have been added.
      
      - Rewrite of the References code with explicit ownership semantics
      	The references code has been mostly rewritten to take into account
      	the cases where another Git application was modifying a repository's
      	references while the Library was running.
      
      	References are now explicitly loaded and free'd by the user, and
      	they may be reloaded in the middle of execution if the user suspects
      	that their values may have changed on disk. Despite the new
      	ownership semantics, the references API stays the same.
      
      - Simplified the Remotes API
      	Some of the more complex Remote calls have been refactored into
      	higher level ones, to facilitate the usual `fetch` workflow of a
      	repository.
      
      - Greatly improved thread-safety
      	The library no longer has race conditions when loading objects from
      	the same ODB and different threads at the same time. There's now
      	full TLS support, even for error codes. When the library is built
      	with `THREADSAFE=1`, the threading support must be globally
      	initialized before it can be used (see `git_threads_init()`)
      
      - Tree walking API
      	A new API can recursively traverse trees and subtrees issuing callbacks for
      	every single entry.
      
      - Tree diff API
      	There is basic support for diff'ing an index against two trees.
      
      - Improved windows support
      	The Library is now codepage aware under Windows32: new API calls
      	allow the user to set the default codepage for the OS in order to
      	avoid strange Unicode errors.
      Vicent Martí committed
    • Merge pull request #551 from schu/treebuilder-entries · 199b7d94
      treebuilder: remove needless variable entry_count
      Vicent Martí committed
    • treebuilder: remove needless variable entry_count · b3408e3e
      Signed-off-by: schu <schu-github@schulog.org>
      schu committed
  12. 04 Feb, 2012 1 commit
  13. 03 Feb, 2012 1 commit
  14. 02 Feb, 2012 2 commits
  15. 01 Feb, 2012 5 commits