aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge pull request #38 from go-git/feature/difftree-renamesMáximo Cuadros2020-04-235-8/+1382
|\ | | | | plumbing: detect renames by hash and similar content in diff tree
| * plumbing: detect renames by hash and similar content in diff treeMiguel Molina2020-04-235-8/+1382
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit implements the rename detection algorithms used in the JGit implementation. Given a list of changes, additions and deletions are extracted and matched in two ways: - By exact hash content: all additions and deletions are grouped by the content hash and paired with the best match based on the file mode and file path. All the files that cannot be paired are kept as regular deletions and additions. - By similar content: a matrix of addition and deletion pairs with all possible combinations is created and scored by how similar the content is between both files as well as how similar the file path is. The pairs with the best score and whose score is equal or greater than a threshold are paired and turned into a rename. All the files that cannot be paired are kept as regular deletions and additions. DiffTree and DiffTreeContext will not return the changes with renames detected for compatibility reasons, although this will change in v6 so that detecting renames is the default behaviour. A new function DiffTreeWithOptions has been added to configure the parameters for the rename detection to control the score threshold, the limit of renames and whether to use similar content detection in the detection. More information: - https://github.com/eclipse/jgit/blob/master/org.eclipse.jgit/src/org/eclipse/jgit/diff/RenameDetector.java - https://github.com/eclipse/jgit/blob/master/org.eclipse.jgit/src/org/eclipse/jgit/diff/SimilarityRenameDetector.java - https://github.com/eclipse/jgit/blob/master/org.eclipse.jgit/src/org/eclipse/jgit/diff/SimilarityIndex.java Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
* | Merge pull request #31 from lcostea/liviu/add_save_config_changesMáximo Cuadros2020-04-181-0/+4
|\ \ | |/ |/| examples: config, Show how to save config changes
| * examples: config, Show how to save config changesLiviu Costea2020-04-181-0/+4
|/
* Merge pull request #29 from empire/patch-1Máximo Cuadros2020-04-161-1/+1
|\ | | | | Fix example's link in README.md
| * Fix example's link in README.mdHossein Zolfi2020-04-161-1/+1
|/ | | Fix example's link in README.md. It refers to the old project location.
* Merge pull request #27 from davorao/masterMáximo Cuadros2020-04-141-1/+1
|\ | | | | Change the link of the storer docs
| * Change the link of the storer docsdavorao2020-04-131-1/+1
|/ | | | | Change storer: - from godoc.org - to pkg.go.dev
* Merge pull request #20 from quorumcontrol/feature/other-configsMáximo Cuadros2020-04-077-35/+612
|\ | | | | plumbing: format, config.Merged to allow access to local and global config
| * Simplify a couple of config examplesWes Morgan2020-04-071-2/+2
| |
| * Add advanced usage note to config exampleWes Morgan2020-04-071-0/+4
| |
| * Document some things in format/config/merged.goWes Morgan2020-04-071-1/+39
| |
| * Fix dotgit testsWes Morgan2020-04-061-3/+3
| |
| * Add funcs to set global & local config in MergedWes Morgan2020-04-061-0/+8
| |
| * Add Merged configWes Morgan2020-04-066-32/+559
| | | | | | | | ...for reading and writing global (~/.git/config) and reading system (/etc/gitconfig) configs in addition to local repo config
* | Merge pull request #24 from jfontan/fix-compatibility-testsMáximo Cuadros2020-04-071-5/+4
|\ \ | | | | | | ci: fix compatibility tests for master
| * | ci: fix compatibility testsJavi Fontan2020-04-071-5/+4
|/ / | | | | | | Signed-off-by: Javi Fontan <jfontan@gmail.com>
* | Merge pull request #22 from mcuadros/fix-emptyMáximo Cuadros2020-04-073-9/+30
|\ \ | |/ |/| plumbing: transport, fix handling of empty adv-refs on upload-pack
| * plumbing: transport, fix handling of empty adv-refs on upload-packMáximo Cuadros2020-04-073-9/+30
| |
* | Merge pull request #13 from marnovo/patch-2Máximo Cuadros2020-03-221-1/+1
|\ \ | | | | | | Fix typo on gitsight reference
| * | Fix typo on gitsight referenceMarcelo Novaes2020-03-211-1/+1
|/ /
* | Merge pull request #11 from brandonwestcott/fix/empty-packfile-serverMáximo Cuadros2020-03-192-5/+37
|\ \ | | | | | | plumbing: transport server check for nil Packfile, fixes ref deletes
| * | plumbing: transport server test for nil PackfileBrandon Westcott2020-03-191-0/+30
| | |
| * | plumbing: transport server check for nil Packfile, fixes ref deletesBrandon Westcott2020-03-191-5/+7
|/ /
* | Merge pull request #10 from bufdev/compatibility-file-protocolMáximo Cuadros2020-03-191-1/+1
|\ \ | | | | | | Update COMPATIBILITY.md to reflect git binary usage for file protocol
| * | Update COMPATIBILITY.md to reflect git binary usage for file protocolbufdev2020-03-181-1/+1
|/ / | | | | | | Signed-off-by: bufdev <bufdev-github@buf.build>
* / README.md: change CI badgeMáximo Cuadros2020-03-161-1/+1
|/
* Worktree: revert url change on testMáximo Cuadros2020-03-161-1/+1
|
* ci: split jobsMáximo Cuadros2020-03-162-38/+40
|
* README.md: update badgesMáximo Cuadros2020-03-151-1/+1
|
* ci: based on github actionsv5.0.0Máximo Cuadros2020-03-1515-169/+90
|
* README.md: update URL and notes about project statusMáximo Cuadros2020-03-151-5/+5
|
* README.md: update URL and notes about project statusMáximo Cuadros2020-03-151-6/+14
|
* *: migration from go-git-fixtures/v4 and go-git/gcfgMáximo Cuadros2020-03-1058-184/+115
|
* *: migration from gopkg to go modulesMáximo Cuadros2020-03-10284-845/+847
|
* Merge pull request #7 from dsymonds/masterMáximo Cuadros2020-03-101-2/+5
|\ | | | | plumbing/object: avoid O(N^2) string building when decoding commit message
| * plumbing/object: avoid O(N^2) string building when decoding commit messageDavid Symonds2020-03-101-2/+5
| | | | | | | | | | | | | | | | | | | | | | Most commits have relatively small messages, so this was never noticeable. However, there are some repositories that have semi-automated messages that can get very large (e.g. github.com/riscv/riscv-clang and its riscv-trunk branch), on the order of 109k lines. Changing from string += to using a bytes.Buffer reduces the time for Commit.Decode for that specific case from 35s to 74ms. Signed-off-by: David Symonds <dsymonds@golang.org>
* | Merge pull request #6 from go-git/pr-1153Máximo Cuadros2020-03-102-4/+10
|\ \ | | | | | | storage/filesystem: dotgit, unable to work with .git folder with temporal packfiles
| * | storage/filesystem: dotgit, Change the order of checking packfile name ↵Yuichi Watanabe2019-05-171-1/+1
| | | | | | | | | | | | | | | | | | prefix and suffix. Fixes #1149 Signed-off-by: Yuichi Watanabe <yuichi.watanabe.ja@gmail.com>
| * | storage/filesystem: dotgit, Add prefix check to packfile name. Fixes #1149Yuichi Watanabe2019-05-171-4/+5
| | | | | | | | | | | | Signed-off-by: Yuichi Watanabe <yuichi.watanabe.ja@gmail.com>
| * | storage/filesystem: dotgit, Reproduce packfile parse error. Fixes #1149Yuichi Watanabe2019-05-171-0/+5
| | | | | | | | | | | | Signed-off-by: Yuichi Watanabe <yuichi.watanabe.ja@gmail.com>
* | | Merge pull request #3 from go-git/pr-1248Máximo Cuadros2020-03-104-16/+117
|\ \ \ | | | | | | | | git.LogOptions: add `PathFilter func(string) bool`
| * | | add back test for NewCommitFileIterFromIterSaeed Rasooli2019-11-291-0/+11
| | | | | | | | | | | | | | | | Signed-off-by: Saeed Rasooli <saeed.gnu@gmail.com>
| * | | repository_test.go: add TestLogPathFilterRegexpSaeed Rasooli2019-11-291-0/+36
| | | | | | | | | | | | | | | | Signed-off-by: Saeed Rasooli <saeed.gnu@gmail.com>
| * | | add `PathFilter func(string) bool` to LogOptionsSaeed Rasooli2019-11-293-0/+33
| | | | | | | | | | | | | | | | Signed-off-by: Saeed Rasooli <saeed.gnu@gmail.com>
| * | | add NewCommitPathIterFromIter that accepts pathFilter func(string) boolSaeed Rasooli2019-11-293-17/+38
| | | | | | | | | | | | | | | | | | | | | | | | keep NewCommitFileIterFromIter for compatibilty for now Signed-off-by: Saeed Rasooli <saeed.gnu@gmail.com>
* | | | Merge pull request #2 from go-git/pr-1291Máximo Cuadros2020-03-102-8/+12
|\ \ \ \ | |_|_|/ |/| | | plumbing: object, fix date reading
| * | | Merge branch 'fix-date-reading' of github.com:zeripath/go-git into pr-1291Máximo Cuadros2020-03-093-8/+14
| |\ \ \
| | * | | hack to prevent codecov from adding more codepathsAndrew Thornton2020-02-231-6/+3
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Andrew Thornton <art27@cantab.net>
| | * | | Fix date readingAndrew Thornton2020-02-233-7/+16
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the British TZ the following time: ``` 1579639200 +0100 ``` will be erroneously parsed as being with the GMT TZ. This leads to multiple errors with GPG validation. This PR fixes this by using the provided TZ information to create a FixedZone and sets that as the TZ Signed-off-by: Andrew Thornton <art27@cantab.net>