• Show log

    Commit

  • Hash : 9462c471
    Author : Vicent Marti
    Date : 2011-11-25T08:16:26

    repository: Change ownership semantics
    
    The ownership semantics have been changed all over the library to be
    consistent. There are no more "borrowed" or duplicated references.
    
    Main changes:
    
    	- `git_repository_open2` and `3` have been dropped.
    
    	- Added setters and getters to hotswap all the repository owned
    	objects:
    
    		`git_repository_index`
    		`git_repository_set_index`
    		`git_repository_odb`
    		`git_repository_set_odb`
    		`git_repository_config`
    		`git_repository_set_config`
    		`git_repository_workdir`
    		`git_repository_set_workdir`
    
    	Now working directories/index files/ODBs and so on can be
    	hot-swapped after creating a repository and between operations.
    
    	- All these objects now have proper ownership semantics with
    	refcounting: they all require freeing after they are no longer
    	needed (the repository always keeps its internal reference).
    
    	- Repository open and initialization has been updated to keep in
    	mind the configuration files. Bare repositories are now always
    	detected, and a default config file is created on init.
    
    	- All the tests affected by these changes have been dropped from the
    	old test suite and ported to the new one.