Commit Graph

4 Commits

Author SHA1 Message Date
brian m. carlson
087db1de70
Set package version to v3
Since we're about to do a v3.0.0 release, let's bump the version to v3.

Make this change automatically with the following command to avoid any
missed items:

  git grep -l github.com/git-lfs/git-lfs/v2 | \
  xargs sed -i -e 's!github.com/git-lfs/git-lfs/v2!github.com/git-lfs/git-lfs/v3!g'
2021-09-02 20:41:08 +00:00
Chris Darroch
dd8e306e31 all: update go.mod module path with explicit v2
When our go.mod file was introduced in commit
114e85c2002091eb415040923d872f8e4a4bc636 in PR #3208, the module
path chosen did not include a trailing /v2 component.  However,
the Go modules specification now advises that module paths must
have a "major version suffix" which matches the release version.

We therefore add a /v2 suffix to our module path and all its
instances in import paths.

See also https://golang.org/ref/mod#major-version-suffixes for
details regarding the Go module system's major version suffix rule.
2021-08-09 23:18:38 -07:00
Billy Keyes
5a7569a5d3 git: improve performance of remote ref listing
When repositories have a large number (hundreds of thousands) of refs, Git
LFS adds noticeable overhead on the time taken by `git show-ref` and
`git ls-remote`. To reduce this overhead:

* Avoid regular expressions when parsing lines of Git command output.
  Regexp evaluation was the most expensive part of this process in
  profiling.

* Minimize the number of loops when computing skipped refs by combining
  the missing and skipped checks and converting the list of remote refs
  into a pre-filtered set.

In a repository with ~300k remote references, these changes reduce the
time spent in the pre-push command from 8.26s to 6.31s.
2020-07-01 22:51:27 -07:00
risk danger olson
40cac1ee4a extracts skipped ref calculation 2016-11-16 16:05:03 -07:00