aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #899 from erizocosmico/feature/new-packfileMiguel Molina2018-07-279-38/+723
|\ | | | | plumbing: packfile, new Packfile representation
| * plumbing: packfile, lazy object reads with DiskObjectsMiguel Molina2018-07-276-41/+314
| | | | | | | | Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
| * plumbing: packfile, new Packfile representationMiguel Molina2018-07-267-158/+437
| | | | | | | | Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
* | Merge pull request #902 from jfontan/feature/new-packfile-parserJavi Fontan2018-07-274-135/+49
|\ \ | |/ |/| Bugfixes and IndexStorage
| * storage/filesystem: add back IndexStorageJavi Fontan2018-07-271-0/+47
| | | | | | | | Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing: fix two errors in idxfile and packfile decoderJavi Fontan2018-07-262-2/+2
| | | | | | | | Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing, packfile: delete index_test as is no longer usedJavi Fontan2018-07-261-133/+0
| | | | | | | | Signed-off-by: Javi Fontan <jfontan@gmail.com>
* | Merge pull request #898 from jfontan/feature/new-packfile-parserJavi Fontan2018-07-2610-47/+831
|\| | | | | Feature/new packfile parser
| * plumbing, storage: integrate new indexJavi Fontan2018-07-265-45/+57
| | | | | | | | | | | | Now dotgit.PackWriter uses the new packfile.Parser and index. Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing/idxfile: index is created only once and retrieved with IndexJavi Fontan2018-07-262-35/+70
| | | | | | | | | | | | Index is also automatically generated when OnFooter is called. Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing/idxfile: add offset/hash mapping to indexJavi Fontan2018-07-261-0/+51
| | | | | | | | | | | | | | This functionality may be moved elsewhere in the future but is needed now to fit filesystem.ObjectStorage and the new index. Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing/idxfile: fix bug searching in MemoryIndexJavi Fontan2018-07-261-2/+2
| | | | | | | | Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing/packfile: preallocate memory in PatchDeltaJavi Fontan2018-07-261-1/+1
| | | | | | | | Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing/idxfile: support offset64 generating indexesJavi Fontan2018-07-262-5/+65
| | | | | | | | Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing/idxfile: use Entry to hold object dataJavi Fontan2018-07-261-16/+11
| | | | | | | | Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing: idxfile, add idxfile.Writer with Observer interfaceJavi Fontan2018-07-261-0/+132
| | | | | | | | | | | | | | | | | | It's still not complete: * 64 bit offsets * IdxChecksum Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing/packfile: disable lookup by offsetJavi Fontan2018-07-261-8/+9
| | | | | | | | | | | | | | In one case it disables the cache and the other disables lookup when the scanner is not seekable. Could be added back later. Signed-off-by: Javi Fontan <jfontan@gmail.com>
| * plumbing/packfile: add new packfile parserJavi Fontan2018-07-262-0/+498
|/ | | | Signed-off-by: Javi Fontan <jfontan@gmail.com>
* Merge pull request #896 from erizocosmico/feature/new-index-decoderMiguel Molina2018-07-2610-387/+484
|\ | | | | plumbing/format/idxfile: add new Index and MemoryIndex
| * plumbing/format/idxfile: add new Index and MemoryIndexMiguel Molina2018-07-1910-387/+484
|/ | | | Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
* Merge pull request #862 from thehowl/patch-1Máximo Cuadros2018-07-161-1/+2
|\ | | | | git: fix documentation for Notes
| * Fix documentation for NotesMorgan2018-06-161-1/+2
| | | | | | | | | | | | It previously said that it returned all references that are branches, but that's not true. Signed-off-by: Morgan Bazalgette <the@howl.moe>
* | Merge pull request #885 from jsravn/findentry-return-file-not-foundMáximo Cuadros2018-07-162-3/+8
|\ \ | | | | | | plumbing: object, return ErrFileNotFound in FindEntry. Fixes #883
| * | plumbing: object, expose ErrEntryNotFound in FindEntry. Fixes #883James Ravn2018-07-102-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | FindEntry will return ErrDirNotFound if the directory doesn't exist. But it doesn't return a public error if the entry itself is missing. This exposes the internal error ErrEntryNotFound, so users can programmatically check for this condition. Signed-off-by: James Ravn <james@r-vn.org>
* | | Merge pull request #888 from jeromedoucet/tech/add_gog_repository_not_foundMáximo Cuadros2018-07-162-0/+83
|\ \ \ | | | | | | | | plumbing/transport/internal: common, support Gogs for ErrRepositoryNotFound
| * | | plumbing/transport/internal: common, add support of Gogs for ↵Jerome Doucet2018-07-142-0/+83
|/ / / | | | | | | | | | | | | | | | ErrRepositoryNotFound, avoiding to get an 'unknown error: '. Add some tests for existing supported services (github, gitlab, etc...) too. Signed-off-by: Jerome Doucet <jerdct@gmail.com>
* | | Merge pull request #874 from smola/patchcontextv4.5.0Máximo Cuadros2018-07-109-9/+297
|\ \ \ | | | | | | | | plumbing: add context to allow cancel on diff/patch computing
| * | | plumbing: add context to allow cancel on diff/patch computingMarc Barussaud2018-07-029-9/+297
| | | | | | | | | | | | | | | | Signed-off-by: Marc Barussaud <marc.barussaud@orange.com>
* | | | Merge pull request #864 from smola/no-norwfsMáximo Cuadros2018-07-065-94/+82
|\ \ \ \ | |_|/ / |/| | | storage/filesystem: avoid norwfs build flag
| * | | storage/filesystem: avoid norwfs build flagSantiago M. Mola2018-06-215-94/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | norwfs build flag was used to work on filesystems that do not support neither opening a file in read/write mode or renaming a file (e.f. sivafs). This had two problems: - go-git could not be compiled to work properly both with regular filesystems and limited filesystems at the same time. - the norwfs trick was not available on Windows. This PR removes the norwfs build flag, as well as the windows conditional flag on the dotgit package. For the file open mode, we use the new billy capabilities, to check at runtime if the filesystem supports opening a file in read/write mode or not. For the renaming, we just try and fallback to alternative methods if billy.ErrNotSupported is returned. Signed-off-by: Santiago M. Mola <santi@mola.io>
* | | | Merge pull request #873 from smola/fix-diffMáximo Cuadros2018-06-271-2/+2
|\ \ \ \ | |_|/ / |/| | | utils: diff, skip useless rune->string conversion
| * | | utils: diff, skip useless rune->string conversionMarc Barussaud2018-06-261-2/+2
|/ / / | | | | | | | | | | | | | | | | | | According to library documentation : https://github.com/sergi/go-diff/blob/master/diffmatchpatch/diff.go#L391 Signed-off-by: Marc Barussaud <marc.barussaud@orange.com>
* | | Merge pull request #870 from mcuadros/fetch-errorMáximo Cuadros2018-06-262-5/+49
|\ \ \ | |/ / |/| | Remote.Fetch: error on missing remote reference
| * | Remote.Fetch: error on missing remote referenceMáximo Cuadros2018-06-212-5/+49
| |/ | | | | | | Signed-off-by: Máximo Cuadros <mcuadros@gmail.com>
* | Merge pull request #869 from dsymonds/compactMáximo Cuadros2018-06-211-2/+12
|\ \ | |/ |/| packfile: optimise NewIndexFromIdxFile for a very common case
| * packfile: optimise NewIndexFromIdxFile for a very common caseDavid Symonds2018-06-211-2/+12
|/ | | | | | | Loading from an on-disk idxfile will usually already have the idxfile entries in order, so check that before wasting time on sorting. Signed-off-by: David Symonds <dsymonds@golang.org>
* Merge pull request #859 from ebilling/fix-858/token-authenticationMáximo Cuadros2018-06-113-1/+39
|\ | | | | plumbing/transport: http, Adds token authentication support [Fixes #858]
| * plumbing/transport: http, Adds token authentication support [Fixes #858]Eric Billingsley2018-06-083-1/+39
| | | | | | | | Signed-off-by: Eric Billingsley <ebilling@babrains.com>
* | Merge pull request #857 from erizocosmico/feature/object-storage-publicMáximo Cuadros2018-06-113-8/+9
|\ \ | |/ |/| storage: filesystem, make ObjectStorage constructor public
| * storage: filesystem, make ObjectStorage constructor publicMiguel Molina2018-06-083-8/+9
|/ | | | Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
* Merge pull request #856 from kuba--/fix-840/corrupted-objectsv4.4.1Máximo Cuadros2018-06-082-4/+19
|\ | | | | plumbing: packfile, Don't copy empty objects. Fixes #840
| * plumbing: packfile, Don't push empty objects. Fixes #840kuba--2018-06-072-4/+19
|/ | | | Signed-off-by: kuba-- <kuba@sourced.tech>
* Merge pull request #855 from jfontan/improvement/cache-tree-findentryMáximo Cuadros2018-06-071-1/+26
|\ | | | | plumbing: object, adds tree path cache to trees. Fixes #793
| * plumbing: object, adds tree path cache to trees. Fixes #793Javi Fontan2018-06-061-1/+26
|/ | | | | | The cache is used in Tree.FindEntry for faster path search. Signed-off-by: Javi Fontan <jfontan@gmail.com>
* Merge pull request #846 from dsymonds/compactMáximo Cuadros2018-06-062-23/+67
|\ | | | | packfile: improve Index memory representation to be more compact
| * packfile: improve Index memory representation to be more compactDavid Symonds2018-05-302-23/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using a map for offset indexing, use a sorted slice. Binary searching is fast, and a slice is much more compact. This has a negligible hit on speed, but has a significant impact on memory usage, especially for larger repos. benchmark old ns/op new ns/op delta BenchmarkIndexConstruction-12 15506506 14056098 -9.35% benchmark old allocs new allocs delta BenchmarkIndexConstruction-12 60764 60385 -0.62% benchmark old bytes new bytes delta BenchmarkIndexConstruction-12 4318145 3913169 -9.38% Signed-off-by: David Symonds <dsymonds@golang.org>
* | Merge pull request #848 from josephvusich/fix/cve-2018-11235Máximo Cuadros2018-06-065-12/+73
|\ \ | | | | | | config: modules, worktree: Submodule fixes for CVE-2018-11235
| * | worktree: Don't allow .gitmodules to be a symlink. Fixes CVE-2018-11235Joseph Vusich2018-05-302-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | References: * https://blogs.msdn.microsoft.com/devops/2018/05/29/announcing-the-may-2018-git-security-vulnerability/ * https://security-tracker.debian.org/tracker/CVE-2018-11235 * https://github.com/git/git/commit/10ecfa76491e4923988337b2e2243b05376b40de Signed-off-by: Joseph Vusich <jvusich@amazon.com>
| * | config: modules, Ignore submodules with dotdot '..' path components. Fixes ↵Joseph Vusich2018-05-303-12/+46
| |/ | | | | | | | | | | | | | | | | | | | | CVE-2018-11235 References: * https://blogs.msdn.microsoft.com/devops/2018/05/29/announcing-the-may-2018-git-security-vulnerability/ * https://security-tracker.debian.org/tracker/CVE-2018-11235 * https://github.com/git/git/commit/0383bbb9015898cbc79abd7b64316484d7713b44 Signed-off-by: Joseph Vusich <jvusich@amazon.com>
* | Merge pull request #854 from ajnavarro/dotgit-not-internalMáximo Cuadros2018-06-0619-10/+9
|\ \ | | | | | | dotgit: Move package outside internal.