| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
| |
This code crashes if the shallow file doesn't exist.
|
| |
|
| |
|
|\ |
|
| |\
| | |
| | | |
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.
|
| |
|
| |
|
|
|
|
| |
fixes #327
|
| |
|
|
|
|
| |
To be able to fix #261 we will move again to gopkg.in before v4 stable release.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
- Deleted invalid logic that returned nil if an ref-delta was not found into the decoder index. This logic was missing objects if it was deltified using ref-deltas.
- Now, to avoid that problem, index is mandatory to decode correctly a packfile of a specific type. Decoder.SetOffsets method now is called into the EncodedObjectIterator to avoid this problem.
|
| |
|
| |
|
| |
|
|\ |
|
| | |
|
| | |
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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: rename Object -> EncodedObject.
* plumbing/storer: rename ObjectStorer -> EncodedObjectStorer.
* move difftree to plumbing/difftree.
* move diff -> utils/diff
* make Object/Tag/Blob/Tree/Commit/File depend on storer.
* Object and its implementations now depend only on
storer.EncodedObjectStorer, not git.Repository.
* Tests are decoupled accordingly.
* move Object/Commit/File/Tag/Tree to plumbing/object.
* move Object/Commit/File/Tag/Tree to plumbing/object.
* move checkClose to utils/ioutil.
* move RevListObjects to plumbing/revlist.Objects.
* move DiffTree to plumbing/difftree package.
* rename files with plural nouns to singular
* plumbing/object: add GetBlob/GetCommit/GetTag/GetTree.
|
|
|
|
|
|
|
|
| |
* config.Config: bare flag
* changes
* changes
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* plumbing: move plumbing/client package to plumbing/transport.
* transport: create Client interface.
* A Client can instantiate any client transport service.
* InstallProtocol installs a Client for a given protocol,
instead of just a UploadPackService.
* A Client can open a session for fetch-pack or send-pack
for a specific Endpoint.
* Adapt ssh and http clients to the new client interface.
* updated doc
|
|
|
| |
* plumbing: now core was renamed to core, and formats and clients moved inside
|
|
|
|
|
|
|
|
|
|
|
| |
* core: ObjectStorage, ReferenceStorage renamed to ObjectStorer and
ReferenceStorer
* rebase
* general, changes request by @alcortes
* general, changes request by @alcortes
|
| |
|
|
|
|
|
|
|
|
| |
* 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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* WIP: Add config format parser.
* add decoder based on gcfg.
Portions of code taken from:
https://github.com/go-gcfg/gcfg/blob/5b9f94ee80b2331c3982477bd84be8edd857df33/read.go
* add git config encoder and config methods.
* use format/config in storage/filesystem for read
* use format/config in storage/filesystem to write
* formats/config: improve docs.
* formats/config: improve tests.
* formats/config: use our fork of gcfg; improve api.
* formats/config: improve api.
* storage/filesystem: fix gofmt
* formats/config: use NoSubsection constant.
* formats/config: add doc.go
* formats/config: requested sytle changes.
* formats/config: do not use *_test packages.
|
| |
|
|
|
|
|
|
| |
* 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
|
| |
|
| |
|
| |
|