| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Currently the index encoder does not support the v3 index format. This
change adds support to the encoder. This helps to unlock sparse
checkout.
|
|\
| |
| | |
Remote: PushOptions add push-options
|
| |
| |
| |
| | |
go-git: Add field `Options` to `PushOptions`, wire functionality.
|
|\ \
| | |
| | | |
Remote: Push, add support to push commits per hashes
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Taken from `git help push` and adapted to match the supported features
only.
Future iterations of this feature may include better support for git
"SHA-1 expression", documented in `git help push` as:
> any arbitrary "SHA-1 expression", such as master~4 or HEAD (see gitrevisions(7)).
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Using plain git, the command `git push ${sha}:refs/heads/some-branch`
actually ensures that the remote branch `some-branch` points to the
commit `${sha}`.
In the current version of go-git, this results in an "everything is
up to date" error.
When a source reference is not found, check the object storage to find
the sha. If it is found, consider pushing this exact commit.
fixes: #105
|
|\ \
| | |
| | | |
plumbing: gitignore, Read .git/info/exclude file too.
|
| | | |
|
| |/ |
|
|\ \
| | |
| | | |
*: update github.com/xanzy/ssh-agent to v0.3.1
|
| |/
| |
| |
| |
| |
| |
| | |
Commands used:
go get github.com/xanzy/ssh-agent@latest
go mod tidy
|
|\ \
| |/
|/| |
examples: added "tag find if head is tagged"
|
| |
| |
| |
| | |
Signed-off-by: Sven Nebel <nebel.sven@gmail.com>
|
|\ \
| | |
| | | |
Remote: add RemoteURL to {Fetch,Pull,Push}Options
|
| | | |
|
| |/
| |
| |
| |
| | |
Can be used to override the URL to operate on:
RemoteName will be ignored for the actual fetch
|
|\ \
| |/
|/| |
git: add --follow-tags option for pushes
|
|/
|
|
| |
This PR adds support for the --follow-tags option for pushes.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
completely (#330)
This PR adds code to prevent large objects from being read into memory
from packfiles or the filesystem.
Objects greater than 1Mb are now no longer directly stored in the cache
or read completely into memory.
This PR differs and improves the previous broken #323 by fixing several
bugs in the reader and transparently wrapping ReaderAt as a Reader.
Signed-off-by: Andrew Thornton <art27@cantab.net>
|
|
|
|
|
| |
into memory completely (#303)" (#329)
This reverts commit 720c192831a890d0a36b4c6720b60411fa4a0159.
|
|
|
| |
It looks a test value was shipped breaking a lot of the usage of the library.
|
|
|
|
|
|
|
|
|
|
|
| |
completely (#303)
This PR adds code to prevent large objects from being read into memory from packfiles or the filesystem.
Objects greater than 1Mb are now no longer directly stored in the cache
or read completely into memory.
Signed-off-by: Andrew Thornton <art27@cantab.net>
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
improve path security
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#298)
* Add failing ED25519 encrypted PEM test
Signed-off-by: Hidde Beydals <hello@hidde.co>
* Support more formats in `NewPublicKeys` SSH helper
By switching to `ParsePrivateKey` and `ParsePrivateKeyWithPassphrase`
from `crypto/ssh`, which has support for RSA (PKCS#1), PKCS#8, DSA
(OpenSSL), and ECDSA private keys.
Signed-off-by: Hidde Beydals <hello@hidde.co>
|
| |
|
|
|
| |
This is never used in the code, and not available publicly, so safe to remove.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
github.com/ProtonMail/go-crypto/openpgp (#283)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
* plumbing: wire up contexts for Transport.AdvertisedReferences
* add more tests for context wiring
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix cloning large repositories
Ignore the error on close when the connection is already closed
Fixes #70
* Compatibility for go 1.13
Because it's required by the pipeline
* Add test for allowing to close a command when the client is already closed
This test is for issue #70
* Add debug information for broken test
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The git protocol itself uses a compare-and-swap mechanism, where changes
send the old and new values and the change is only applied if the old
value matches. This is used to implement the --force-with-lease feature
in git push.
go-git populates the `old` field with the current value of the ref that
is read from the remote. We can implement a convenient (albeit more
limited) form of the --force-with-lease feature just by allowing the
caller to specify particular values for this ref.
Callers can then implement complex multi-step atomic operations by
reading the ref themselves at the start of the process, and passing to
in RequireRemoteRefs at the end. This is also a suitable building block
for implementing --force-with-lease (#101), which is mostly an exercise
in computing the correct hash to require. Hence, this appears to be the
most reasonable API to expose.
|
|
|
|
|
|
|
|
|
| |
* diff: Allow srcPrefix and dstPrefix to be configured
The default behavior here remains the same, but this change does
allow consumers of the UnifiedEncoder to set their own path prefixes
which will override the defaults of a/ and b/.
* Add unit test for src/dstPrefix in encoder
|
| |
|
|
|
| |
* git: worktree_commit, just store objects not already stored
|