| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
Introduces the Merge function for merging branches in the codebase.
Currently, the function only supports FastForwardMerge strategy, meaning it
can efficiently update the target branch pointer if the source branch history
is a linear descendant.
Support for additional merge strategies (e.g., three-way merge) will be added
in future commits.
Signed-off-by: Paulo Gomes <paulo.gomes@suse.com>
|
|
|
|
|
|
| |
Add a Merge function that behaves like git merge. This is a first
iteration that only supports --ff-only, which is the simplest type of
merge.
|
|
|
|
|
|
|
|
|
|
| |
Check reference names format before creating branches/tags/remotes.
This should probably be in a lower level somewhere in `plumbing`.
Validating the names under `plumbing.NewReference*` is not possible
since these functions don't return errors.
Fixes: https://github.com/go-git/go-git/issues/929
|
|
|
|
|
|
|
| |
The changes aim to make that specific benchmark more
reliable for setting a baseline which can later be
use to compare against future changes on the most
basic feature of go-git: plain cloning repositories.
|
| |
|
| |
|
|
|
|
| |
Refactor `PlainInit` to call `PlainInitWithOptions`
|
|
|
|
| |
Signed-off-by: Arieh Schneier <15041913+AriehSchneier@users.noreply.github.com>
|
| |
|
|\
| |
| | |
git: add a clone option to allow for shallow cloning of submodules
|
| |
| |
| |
| |
| | |
This option matches the git clone option --shallow-submodules.
https://git-scm.com/docs/git-clone#Documentation/git-clone.txt---no-shallow-submodules
|
| |
| |
| |
| | |
Signed-off-by: Arieh Schneier <15041913+AriehSchneier@users.noreply.github.com>
|
|\ \
| | |
| | | |
git: Allow Initial Branch to be configurable
|
| |/ |
|
|/
|
|
| |
Signed-off-by: Arieh Schneier <15041913+AriehSchneier@users.noreply.github.com>
|
|
|
|
| |
Signed-off-by: Arieh Schneier <15041913+AriehSchneier@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Clone remote as a mirror. This fetches all remote refs, implies bare
repository, and sets the appropriate configs.
Fixes: https://github.com/go-git/go-git/issues/293
Update options.go
Co-authored-by: Paulo Gomes <paulo.gomes.uk@gmail.com>
Signed-off-by: Ayman Bagabas <ayman.bagabas@gmail.com>
|
|
|
|
| |
Signed-off-by: Paulo Gomes <pjbgf@linux.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When fs.Stat returns an error, pathinfo may be nil. In such situations
the only safe response seems to be to return the error to the caller.
Without this fix, accessing pathinfo.IsDir() below would lead to a crash
dereferencing a nil pointer.
This crash can be reproduced by trying to initialize a Git repo with an
invalid path name.
Also see: https://github.com/muesli/gitty/issues/36
|
|\
| |
| | |
error strings: Don't capitalize, use periods, or newlines
|
| |
| |
| |
| | |
The test verifies the exact error message.
|
|/
|
|
|
|
|
|
|
| |
This is the initial logic to support a simple sparse checkout where
directories to be included can be specified in CheckoutOptions.
This change doesn't fully support the sparse patterns, nor does this
change include the optimization to collapse flie entries in ithe index
that are excluded via the sparse checkout directory patterns included
under the parent directory.
|
| |
|
| |
|
|
|
|
| |
github.com/ProtonMail/go-crypto/openpgp (#283)
|
|
|
|
|
| |
* plumbing: wire up contexts for Transport.AdvertisedReferences
* add more tests for context wiring
|
| |
|
| |
|
|\
| |
| | |
*: minor linter fixes
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Like `git rev-parse <prefix>`, this enumerates the hashes of objects
with the given prefix and adds them to the list of candidates for
resolution.
This has an exhaustive slow path, which requires enumerating all objects
and filtering each one, but also a couple of fast paths for common
cases. There's room for future work to make this faster; TODOs have been
left for that.
Fixes #135.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Saeed Rasooli <saeed.gnu@gmail.com>
|
|
|
|
| |
Signed-off-by: Saeed Rasooli <saeed.gnu@gmail.com>
|
|
|
|
| |
Signed-off-by: Saeed Rasooli <saeed.gnu@gmail.com>
|
|
|
|
|
|
| |
keep NewCommitFileIterFromIter for compatibilty for now
Signed-off-by: Saeed Rasooli <saeed.gnu@gmail.com>
|
|
|
|
| |
Signed-off-by: knqyf263 <knqyf263@gmail.com>
|
|
|
|
| |
Signed-off-by: knqyf263 <knqyf263@gmail.com>
|
|
|
|
| |
Signed-off-by: knqyf263 <knqyf263@gmail.com>
|
|
|
|
| |
Signed-off-by: knqyf263 <knqyf263@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
When we assign a value to err, make sure to also check for it being nil
afterwards. If those were intentionally unchecked, we should remove the
assignment in the first place. Those checks certainly never harm, but please
review thoroughly and let me know.
Signed-off-by: Christian Muehlhaeuser <muesli@gmail.com>
(cherry picked from commit 19d6f42a4d814a50bd262fbb69a9b670db9756a2)
|
| |
|
|
|
|
|
|
|
|
|
|
| |
1) lookups on an annotated tag oid now work
2) there was a lot of complexity around detection of ambiguity, but
unlike git, ambiguous refs are rejected (which causes bugs like
#823). The new code matches rev-parse's behavior (prefer the OID),
though there is no warning path to report the same warning.
Signed-off-by: Mike Lundy <mike@fluffypenguin.org>
|
|
|
|
| |
Signed-off-by: niukuo <niukuo@gmail.com>
|
|
|
|
|
|
| |
To mimic the actual standard git behavior, we must ignore references that are pointing to wrong/unexistent objects.
Signed-off-by: Antonio Jesus Navarro Perez <antnavper@gmail.com>
|