aboutsummaryrefslogtreecommitdiffstats
path: root/plumbing/object
Commit message (Collapse)AuthorAgeFilesLines
* plumbing: object/tag, add signature verificationSunny2017-11-242-0/+94
|
* plumbing: object/tag, add PGPSignature supportSunny2017-11-242-1/+69
|
* test: plumbing/object fix Commit.Verify testSunny2017-11-241-2/+3
| | | | | Test was failing because of the relative time zone attached to the commit. Adding a fixed location to the time fixes the issue.
* Merge pull request #653 from darkowlzz/verify-commitMáximo Cuadros2017-11-242-0/+95
|\ | | | | plumbing: object, new Commit.Verify method
| * test: plumbing.object, add test for Commit.VerifySunny2017-11-231-0/+65
| |
| * plumbing: object, add Commit.Verify methodSunny2017-11-231-0/+30
| | | | | | | | | | Commit.Verify() performs PGP verification of a signed commit given an armored keyring.
* | update to go-billy.v4 and go-git-fixtures.v3Máximo Cuadros2017-11-238-8/+8
| | | | | | | | Signed-off-by: Máximo Cuadros <mcuadros@gmail.com>
* | plumbing/object: add test for finding tree entryferhat elmas2017-11-221-0/+37
| |
* | plumbing/object: do not eat error on tree decodeferhat elmas2017-11-211-2/+2
|/
* examples,plumbing,utils: typo fixesferhat elmas2017-11-202-2/+2
|
* Merge pull request #534 from josharian/firstparentMáximo Cuadros2017-11-202-0/+24
|\ | | | | plumbing: object, commit.Parent() method
| * plumbing: object, commit.Parent() methodMáximo Cuadros2017-11-202-6/+19
| | | | | | | | Signed-off-by: Máximo Cuadros <mcuadros@gmail.com>
| * plumbing/object: add Commit.FirstParentJosh Bleecher Snyder2017-08-031-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | First parents are somewhat special in git. There's even a --first-parent flag to 'git log'. Add a helper method to look them up. This avoids boilerplate and spares the client from having to arrange for a handle to the Storer, which is stored in the unexported field Commit.s.
* | Merge pull request #613 from darkowlzz/482-commit-statsMáximo Cuadros2017-11-083-0/+167
|\ \ | | | | | | Add Stats() to Commit
| * | Add Stats() to Patch and fix diffstat outputSunny2017-11-023-53/+130
| | |
| * | Add Stats() to CommitSunny2017-11-022-0/+90
| | | | | | | | | | | | Stats() is similar to `git show --stat <hash>`.
* | | Updating reference to the git object modelAntonio Troina2017-11-071-1/+1
|/ /
* | Add support for signed commits (#616)Sunny2017-10-292-0/+69
| | | | | | | | | | | | | | | | | | * Add support for signed commits This change adds `GPGSignature` field to `Commit` object. This is used to store the signature of the commit, if any. * Rename gpg to pgp
* | plumbing: the commit walker can skip externally-seen commitsJeremy Stribling2017-09-092-10/+40
| | | | | | | | | | | | | | | | | | | | When the revlist is computing the set of hashes needed to transfer, it doesn't need to walk over commits it has already processed. So, it can instruct the commit walker not to walk those commits by passing in its own `seen` map. For a 36K object repo, this brought the time for `revlist.Objects` down from 50s to 30s.
* | plumbing: use `seen` map in tree walkerJeremy Stribling2017-08-274-10/+42
| | | | | | | | | | | | | | This helps avoids iterating down the same trees for every commit. For a big-ish repo with 35K objects (17K commits), this reduced the time for calling `revlist.Objects` during a push (with 0 hashes to ignore) from more than ten minutes to less than a minute.
* | grammar correctionZach Gershman2017-08-241-1/+1
|/ | | *stopped instead of stop
* repository: allow push from shallow repositoriesMáximo Cuadros2017-07-191-23/+5
|
* plumbing: object, allow ignore commits in commit walkersMáximo Cuadros2017-07-182-16/+105
|
* fix naming of NewCommit{Pre,Post}IteratorSantiago M. Mola2017-06-132-6/+6
| | | | | Use Iter suffix, just as all other iterators in the project. Use Preorder and Postorder to be more clear.
* format/diff: unified diff encoder and public APIAntonio Jesus Navarro Perez2017-05-237-0/+316
| | | | | | | | | - Added Patch interface - Added a Unified Diff encoder from Patches - Added Change method to generate Patches - Added Changes method to generate Patches - Added Tree method to generate Patches - Added Commit method to generate Patches
* worktree: Commit, tests improvementsMáximo Cuadros2017-05-041-2/+2
|
* plumbing: MemoryObject.Writer tracks his own sizeMáximo Cuadros2017-05-044-30/+35
|
* plumbing: object.Tree making public `tree` and `parents`Máximo Cuadros2017-05-012-17/+19
|
* object: avoid unreachable codeSantiago M. Mola2017-04-261-4/+1
|
* fix format string issues as found by go vetSantiago M. Mola2017-04-261-4/+5
|
* worktree, reset implementation and status improvementsMáximo Cuadros2017-04-121-1/+1
|
* merkletrie: filesystem and index speedup and documentationMáximo Cuadros2017-04-111-18/+11
|
* merge, Repository.LogMáximo Cuadros2017-04-114-116/+138
|\
| * Add Repository.Log() method (fix #298)Antonio Jesus Navarro Perez2017-04-114-116/+138
| | | | | | | | | | | | | | | | | | | | - CommitIter is now an interface - The old CommitIter implementation is now called StorerCommitIter - CommitWalker and CommitWalkerPost are now iterators (CommitPreIterator and CommitPostIterator). - Remove Commit.History() method. There are so many ways to iterate a commit history, depending of the use case. Now, instead of use the History() method, you must use CommitPreIterator or CommitPostIterator. - Move commitSorterer to references.go because is the only place that it is used, and it must not be used into another place. - Make References method private, it must only be used into blame logic. - Added a TODO into references method, where the sortCommits is used to remove it in a near future.
* | plumbing: object, public Tree.FindEntry and minor diff changesMáximo Cuadros2017-04-114-8/+17
|/
* Set correct modes to change_adaptor testsAntonio Jesus Navarro Perez2017-04-061-0/+6
|
* object: fix Change.Files() method behavior (fix #317)Antonio Jesus Navarro Perez2017-04-062-0/+56
| | | | | - If 'from' or 'to' are tree entries that aren't files, Files() method will return nil instead of object not found error. - Added a test checking this using modules fixture.
* Work around a Go bug when parsing timezonesNick Thomas2017-03-301-1/+6
|
* Merge pull request #314 from lupine/249-fix-bufio-buffer-fullMáximo Cuadros2017-03-284-2/+36
|\ | | | | plumbing: Use ReadBytes() rather than ReadSlice()
| * plumbing: Use ReadBytes() rather than ReadSlice()Nick Thomas2017-03-274-2/+36
| |
* | plumbing/object: add WalkCommitHistoryPost funcDaniel Martí2017-03-272-7/+59
|/ | | | | | | | Also add a test. Make both the pre-order and post-order tests not sort commits, to actually test the order in which the commit history is walked. Fixes #223.
* project: move imports from srcd.works to gopkg.inAntonio Jesus Navarro Perez2017-03-0720-63/+63
| | | | To be able to fix #261 we will move again to gopkg.in before v4 stable release.
* difftree: simplify hash comparison with deprecated files modesAlberto Cortés2017-03-033-51/+31
| | | | | | | | | | Difftree hash comparisson was quite complex because the hashes of deprecated files were diferent from the hashes of regular files. But git's difftree really treat them as equal. This patch fix this by making treenoder return the same hash for regular files than for deprecated files; now the hash comparison function is just a bytes.Equal call.
* replace os.FileMode use with filemode.FileModeAlberto Cortés2017-03-0110-250/+214
|
* Added documentation to Diff methodAntonio Jesus Navarro Perez2017-02-241-0/+1
|
* plumbing/object: move difftree to object packageAntonio Jesus Navarro Perez2017-02-248-0/+1478
| | | | | - To avoid ciclic dependency errors, we move all the difftree files to object package. - Added Diff method to Tree object.
* difftree: ignore permissions changes between regular filesAlberto Cortés2017-02-221-5/+6
| | | | Fix issue #279.
* *: update tests to meet new submodule fixtureMáximo Cuadros2017-02-212-4/+6
|
* documentation and API improvementsMáximo Cuadros2017-02-212-2/+7
|
* plumbing/object: allow TreeIter return SubModule entriesMáximo Cuadros2017-02-134-6/+65
|