| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
As git_clone now has callbacks to configure the details of the
repository and remote, remove the lower-level functions from the public
API, as they lack some of the logic from git_clone proper.
|
|\
| |
| | |
Improvements to git_transport extensibility
|
| |
| |
| |
| |
| | |
git_remote_set_transport now takes a transport factory rather than a transport
git_clone_options now allows the caller to specify a remote creation callback
|
|/
|
|
|
|
|
| |
The checkout::conflict type conflict tests were failing because
they were overly assertive about the resultant mode, testing
group & other bits, which failed miserably for people who had a
umask less restrictive than 022. Only test the resultant owner bits.
|
|
|
|
|
|
|
| |
Git for Windows 1.9.4 changed the behavior when the text=auto
attribute is specified and core.autocrlf=false. Previous observed
behavior would *not* filter files when going into the working
directory, the new behavior *does* filter. Update our behavior to match.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When checking out files, we're performing conversion into the user's
native line endings, but we only want to do it for files which have
consistent line endings. Refuse to perform the conversion for mixed-EOL
files.
The CRLF->LF filter is left as-is, as that conversion is considered to be
normalization by git and should force a conversion of the line endings.
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Finding a filename in a vector means we need to resort it every time we
want to read from it, which includes every time we want to write to it
as well, as we want to find duplicate keys.
A hash-map fits what we want to do much more accurately, as we do not
care about sorting, but just the particular filename.
We still keep removed entries around, as the interface let you assume
they were going to be around until the treebuilder is cleared or freed,
but in this case that involves an append to a vector in the filter case,
which can now fail.
The only time we care about sorting is when we write out the tree, so
let's make that the only time we do any sorting.
|
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Opening the same repository multiple times will currently open the same
file multiple times, as well as map the same region of the file multiple
times. This is not necessary, as the packfile data is immutable.
Instead of opening and closing packfiles directly, introduce an
indirection and allocate packfiles globally. This does mean locking on
each packfile open, but we already use this lock for the global mwindow
list so it doesn't introduce a new contention point.
|
| |
| |
| |
| |
| |
| |
| | |
The assembla failure we were seeing referred to a private repository,
which is not what is there at the moment.
This reverts 1fd21b0342f
|
|/
|
|
|
|
| |
Don't write in plaintext the password of an account which has full
control over the repository. Instead use an account with read-only
access.
|
|\
| |
| | |
More remote rename fixes
|
| |
| |
| |
| | |
This was a bad idea. Don't free except in the free function.
|
| | |
|
| |
| |
| |
| |
| |
| | |
There is no reason why we need to use a callback here. A string array
fits better with the usage, as this is not an event and we don't need
anything from the user.
|
| | |
|
| | |
|
|/ |
|
|
|
|
|
| |
When there is a reference in the target namespace, we should overwrite
it. Instead it gets a different name under the current code.
|
|\
| |
| | |
Concurrent ref iterator access
|
| |
| |
| |
| |
| | |
If we remove a reference while we're iterating through the packed refs,
the position in the iterator will be off.
|
|\ \
| | |
| | |
| | |
| | | |
arthurschreiber/arthur/set-error-when-no-remote-found
Remote: Set an error when a remote cannot be found.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Inside `git_remote_load`, the calls to `get_optional_config` use
`giterr_clear` to unset any errors that are set due to missing config
keys. If neither a fetch nor a push url config was found for a remote,
we should set an error again.
|
| |/
|/| |
|
|/ |
|
|
|
|
|
|
| |
This adds another assertion to ensure that the reference name inside
the git_reference struct returned by `git_branch_create` is returned as
precomposed if `core.precomposeunicode` is enabled.
|
|
|
|
|
| |
This tests that decomposed branch names are correctly precomposed when
passed to `git_branch_move` and `core.precomposeunicode` is enabled.
|
|\
| |
| | |
Local clone
|
| |
| |
| |
| |
| | |
Assert the exact amount of links we expect. While there, check that a
plain git_clone() automatically chooses to link.
|
| |
| |
| |
| |
| |
| |
| |
| | |
If requested, git_clone_local_into() will try to link the object files
instead of copying them.
This only works on non-Windows (since it doesn't have this) when both
are on the same filesystem (which are unix semantics).
|
| |
| |
| |
| |
| | |
When passed the LINK_FILES flag, the recursive copy will hardlink files
instead of copying them.
|
| | |
|
| | |
|
|\ \
| | |
| | | |
index: check for valid filemodes on add
|
| |/ |
|
|\ \
| | |
| | | |
Fix compile error on Visual Studio
|
| |/ |
|
| | |
|
| | |
|
|/
|
|
|
|
| |
git_merge_analysis will now return GIT_MERGE_CONFIG_NO_FASTFORWARD
when merge.ff=false and GIT_MERGE_CONFIG_FASTFORWARD_ONLY when
merge.ff=true
|
|\
| |
| | |
Add support for the symref extension
|
| |
| |
| |
| |
| | |
If the remote supports the symref protocol extension, then we return
that, otherwise we guess with git's rules.
|
| |
| |
| |
| |
| | |
Add a symref_target field to git_remote_head to expose the symref
mappings to the user.
|
|\ \
| |/
|/| |
Make core.safecrlf not generate an error on LF-ending platforms
|
| |
| |
| |
| |
| |
| | |
If you enabled core.safecrlf on an LF-ending platform, we would
error even for files with all LFs. We should only be warning on
irreversible mappings, I think.
|
|/ |
|
|\
| |
| | |
Allow mirror-clone via `git_clone_into()`
|
| |
| |
| |
| |
| | |
Show a failure to perform a mirror-clone from a repository, both local
and remote.
|
| |
| |
| |
| |
| | |
The comment char is configurable and we need to provide a way for the
user to specify which comment char they chose for their message.
|