|
359dce72
|
2013-11-02T00:05:32
|
|
remote: make _ls return the list directly
The callback-based method of listing remote references dates back to the
beginning of the network code's lifetime, when we didn't know any
better.
We need to keep the list around for update_tips() after disconnect() so
let's make use of this to simply give the user a pointer to the array so
they can write straightforward code instead of having to go through a
callback.
|
|
3793fa9b
|
2013-10-31T01:08:50
|
|
Fix saving remotes with several fetch/push ref specs.
At some moment git_config_delete_entry lost the ability to delete one entry of
a multivar configuration. The moment you had more than one fetch or push
ref spec for a remote you will not be able to save that remote anymore. The
changes in network::remote::remotes::save show that problem.
I needed to create a new git_config_delete_multivar because I was not able to
remove one or several entries of a multivar config with the current API.
Several tries modifying how git_config_set_multivar(..., NULL) behaved were
not successful.
git_config_delete_multivar is very similar to git_config_set_multivar, and
delegates into config_delete_multivar of config_file. This function search
for the cvar_t that will be deleted, storing them in a temporal array, and
rebuilding the linked list. After calling config_write to delete the entries,
the cvar_t stored in the temporal array are freed.
There is a little fix in config_write, it avoids an infinite loop when using
a regular expression (case for the multivars). This error was found by the
test network::remote::remotes::tagopt.
|
|
d31402a3
|
2013-09-16T04:20:05
|
|
remote: put the _download() callback with the others
The text progress and update_tips callbacks are already part of the
struct, which was meant to unify the callback setup, but the download
one was left out.
|
|
e839efbe
|
2013-09-07T17:51:24
|
|
tests: Fix memory leaks
|
|
61d57b7a
|
2013-09-04T14:27:59
|
|
Test pushing to remotes with "file:///" urls
|
|
aec87f71
|
2013-08-27T19:14:18
|
|
remote: Make git_remote_list() detect pushurl
|
|
c9ffa84b
|
2013-08-21T16:04:25
|
|
remote: Relax the parsing logic even more
In order to be loaded, a remote needs to be configured with at least a `url` or a `pushurl`.
ENOTFOUND will be returned when trying to git_remote_load() a remote with neither of these entries defined.
|
|
ece24ef7
|
2013-08-21T13:37:21
|
|
remote: Don't parse missing urls as empty strings
|
|
0b9ebb54
|
2013-08-14T11:18:05
|
|
remote: relax the url rules
Accept any value for the remote's url, including an empty string which
we used to reject as invalid configuration.
This is not quite what git does (although it has its own problems with
such configurations) and it makes it harder to fix the issue, by not
letting the user modify it.
As we already need to check for a valid URL when we try to connect to
the network, let that perform the check, as we don't need to do it
anywhere else.
|
|
edbaa63a
|
2013-06-25T09:04:04
|
|
Unbreak git_remote_ls on a local transport after disconnecting.
|
|
215af2cc
|
2013-05-30T17:40:56
|
|
remote: make default tag retrieving behaviour consistent
Default for newly created remotes will be auto.
Default when loading existing remotes with no tag retrieving behaviour set, was already auto.
|
|
0582ae6f
|
2013-05-21T13:56:40
|
|
tests: don't verify SSH unsupported with GIT_SSH
|
|
ddc5c054
|
2013-05-09T05:42:37
|
|
Merge pull request #1561 from arrbee/fix-windows-diff-eofnl
Fix windows diff eofnl error
|
|
0f938c6b
|
2013-05-07T09:59:53
|
|
Fix win32 type warnings
|
|
505b5d0c
|
2013-05-07T16:01:22
|
|
remote: correctly interpret tagopt '--tags'
When tagopt is set to '--tags', we should only take the default tags
refspec into account and ignore any configured ones.
Bring the code into compliance.
|
|
1ffd0806
|
2013-04-30T11:18:16
|
|
remote: add resfpec list accessors
Bring back a way of acessing the git_refspec* from a remote.
Closes #1514
|
|
d8488457
|
2013-04-28T16:26:55
|
|
remote: dwim the refspecs according to the remote's advertised refs
As git allows you to store shorthand refspecs in the configuration, we
need to do this ourselves.
|
|
1be680c4
|
2013-04-20T19:13:47
|
|
refspec: unify the string and parsed data
It used to be separate as an attempt to make the querying easier, but
it didn't work out that way, so put all the data together.
Add git_refspec_string() as well to get the original string, which is
now stored alongside the independent parts.
|
|
bc6374ea
|
2013-04-20T18:49:11
|
|
remote: allow querying for refspecs
Introduce git_remote_{fetch,push}_refspecs() to get a list of refspecs
from the remote and rename the refspec-adding functions to a less
silly name.
Use this instead of the vector index hacks in the tests.
|
|
4330ab26
|
2013-04-20T04:43:28
|
|
remote: handle multiple refspecs
A remote can have a multitude of refspecs. Up to now our git_remote's
have supported a single one for each fetch and push out of simplicity
to get something working.
Let the remotes and internal code know about multiple remotes and get
the tests passing with them.
Instead of setting a refspec, the external users can clear all and add
refspecs. This should be enough for most uses, though we're still
missing a querying function.
|
|
24cb87e2
|
2013-03-31T13:27:43
|
|
tag: Fix parsing when no tagger nor message
|
|
4cc326e9
|
2013-03-05T22:45:26
|
|
remote push test fix
|
|
2bca5b67
|
2013-02-07T23:44:18
|
|
remote: Introduce git_remote_is_valid_name()
Fix libgit2/libgit2sharp#318
|
|
624924e8
|
2013-02-07T23:02:56
|
|
remote: reorganize tests
|