| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Now there's only two ways of getting a reference, by checking under refs/ directory or in packed-refs. refs/ directory is checked using a direct read by reference name and packed refs are cached until they have been changed.
Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
|
|
|
|
| |
Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There was an internal type (i.e. storage/filesystem.idx) to
use as in-memory index for packfiles. This was not convenient
to reuse in the packfile.
This commit creates a new representation (format/packfile.Index)
that can be converted to and from idxfile.Idxfile.
A packfile.Index now contains the functionality that was scattered
on storage/filesystem.idx and packfile.Decoder's internals.
storage/filesystem now reuses packfile.Index instances and this
also results in higher cache hit ratios when resolving deltas.
|
|\
| |
| | |
*: add more IO error checks
|
| | |
|
| | |
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
|\ |
|
| |\
| | |
| | | |
Windows support
|
| | | |
|
| | | |
|
|/ / |
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
filesystem.Storage was initializing the gitdir (creating objects
and refs) on NewStorage. But this should be done only on init and
clone operations, not on open.
Now there is a new interface storer.Initializer that storers can
implement if they need any initialization step before init or clone.
filesystem.Storage is one of such implementations.
git.Init and git.Clone now call to the storer Init() method if it
does implement it. Otherwise, it just ignores initialization.
|
| |
|
| |
|
|
|
|
| |
To be able to fix #261 we will move again to gopkg.in before v4 stable release.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Extract billy
Billy is a new library directly extracted from go-git. It abstract
several storages systems in a filesystem interface.
More in github.com/src-d/billy
* Fix grouping in imports block
* Update billy to v1
* Re-remove fs_implementation example
|
|
|
|
|
|
|
|
| |
* storage: shallow storage
* changes
* changes
|
| |
|
| |
|
|
|
| |
* plumbing: now core was renamed to core, and formats and clients moved inside
|
|
|
|
|
|
|
|
| |
* utils: fs, new memory filesystem
* utils: fs, renamed os.NewOS to os.New
* utils: fs, memory changes requested by @alcortes
|
|
|
|
|
|
|
| |
* storage/filesystem: added ObjectStorage Set.
* storage/filesystem: now passes all tests, except those specific to transactions.
* formats/config: Encoder now encodes subsections with no options.
* formats/config: add HasSubsection on Section.
* dotgit: add Ref method to get specific reference.
|
|
|
|
|
|
| |
* create utils/fs/test package to expose generic test suite to 3rd party fs implementations.
* move 'os' to its own package to avoid cyclic dependency (test -> fs -> test, becomes test -> fs, os -> test, os -> fs).
* remove TestCreateAndWrite: some of our implementations cannot read a file that was just created, written and not closed yet.
|
|
|
|
|
|
|
|
|
|
| |
* utils: fs generic TestSuite
* fs: fs.TempFile
* utils: fs small changes requested
* utils: fs, test fs.Create overwriting files
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Support non packed git objects
* Support non packed git objects for Iterator
* Fix error handling from Writer() in FillObject()
* Fix format in func (r *Reader) FillObject(obj core.Object) error
* Fix to return d.addRefsFromPackedRefs() error
And if packed-refs dosen't exist not to return error in d.addRefsFromPackedRefs
* Remove debug code
* Add GoDoc for func (d *DotGit) Objectfile(h core.Hash) (fs.FS, string, error)
* Add GoDoc for func (r *Reader) FillObject(obj core.Object) error
* Add GoDoc for func (d *DotGit) Objectfiles() (fs.FS, []core.Hash, error)
* Fix format in func (d *DotGit) Objectfile(h core.Hash) (fs.FS, string, error)
* Rename value dotGitobjcts -> objsDir
* Change regexp.Compile -> regexp.MustCompile
* Move regexp to variable initialization
* Rename regexp value to be more coherent
* Fix object directory name and object file name to correct character
* Faster Objectfiles func
* Add test for FillObject
* Add GoDoc for func (s *ObjectStorage) Get(h core.Hash) (core.Object, error)
* defer Close()
* Return name values for defer function overwrite the error value.
* Fix error handling in func (s *ObjectStorage) Get()
Return error that gets error except for ErrObjfileNotFound from getFromUnpacked()
* Rename getFromObject -> getFromUnpacked
* Add test for func (d *DotGit) Objectfile(h core.Hash) (fs.FS, string, error)
* Add test for func (d *DotGit) Objectfiles() (fs.FS, []core.Hash, error)
* Faster check git object name
* Faster dotgit_test.go
* Fix Godoc for Objectfiles func
* Refactor variable name in Objectfiles func
* Fix GoDoc for objectfile func
* Fix TestObjectfile func and TestObjectfiles func
* Rename fixobj -> fixObj in Test Objectfile func
* Fix test compare method
* Refactor Get func in object.go
* Refactor getFromUnpacked func in object.go
* Fix GoDoc for ErrObjfileNotFound
* Fix TestObjectfiles for not guarantee the slice order
* Change error no such file or directory to target file not found
* Change spec func (s *ObjectStorage) Get(h core.Hash) (core.Object, error)
return core.ErrObjectNotFound, if index pointer is nil.
* Add space
* storage: Add object type hint parameter to ObjectStorage.getFromUnpacked
|
| |
|