|
6414fd33
|
2013-11-11T06:47:15
|
|
Merge pull request #1956 from libgit2/cmn/fetch-default-head
Remote revamp (director's cut)
|
|
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.
|
|
79c44342
|
2013-11-05T11:35:57
|
|
Make url decoding more bulletproof
|
|
16bffd1c
|
2013-11-04T12:04:17
|
|
Unescape url-encoded usernames and passwords
|
|
c227c173
|
2013-11-04T11:42:14
|
|
Use http_parser_parse_url to parse urls
|
|
7e035908
|
2013-11-01T15:29:25
|
|
Streamline url-parsing logic.
|
|
653ec420
|
2013-11-01T17:25:32
|
|
Merge remote-tracking branch 'drodriguez/fix-remote-save' into development
|
|
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.
|
|
7be5104d
|
2013-10-31T13:15:49
|
|
Add tests for badly-formed URLs
|
|
41a6de28
|
2013-10-02T14:45:57
|
|
HTTP: handle "relative" redirects
|
|
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.
|
|
0049d4d1
|
2013-09-26T16:25:34
|
|
Make sure utility doesn't leak memory
|
|
ea59f659
|
2013-09-26T16:20:30
|
|
Deploy gitno_connection_data into transport (winhttp)
...and have that call manage replaced memory in the output structure.
|
|
8988688c
|
2013-09-25T20:41:56
|
|
Migrate redirect URL handling to common utility
|
|
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
|
|
b6cc559a
|
2013-05-11T02:42:49
|
|
Merge pull request #1385 from carlosmn/refs-iter
Introduce a refs iterator
|
|
2b562c3a
|
2013-05-04T16:32:58
|
|
refs: remove the OID/SYMBOLIC filtering
Nobody should ever be using anything other than ALL at this level, so
remove the option altogether.
As part of this, git_reference_foreach_glob is now implemented in the
frontend using an iterator. Backends will later regain the ability of
doing the glob filtering in the backend.
|
|
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.
|
|
528a4e24
|
2013-04-28T14:16:45
|
|
Parse shorthand refspecs as valid
Relax the ONELEVEL ref naming rules so the refspec parsing code can
ask for 'master' to be considered valid.
|
|
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
|
|
3ba01362
|
2013-03-20T11:46:03
|
|
Update cl_assert_equal_sz to be nicer
This makes the size_t comparison test nicer (assuming that the
values are actually not using the full length), and converts
some cases that were using it for pointer comparison to use the
macro that is designed for pointer comparison.
|
|
4cc326e9
|
2013-03-05T22:45:26
|
|
remote push test fix
|
|
9c258af0
|
2013-02-12T10:13:56
|
|
Merge pull request #1316 from ben/clone-cancel
Allow network operations to cancel
|
|
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
|
|
db4bb415
|
2013-02-07T14:53:52
|
|
Teach refspec to transform destination reference to source reference
|
|
fe95ac1b
|
2013-02-05T10:59:58
|
|
Allow progress callback to cancel fetch
This works by having the indexer watch the return
code of the callback, so will only take effect
on object boundaries.
|
|
cd74cbba
|
2013-01-31T14:38:22
|
|
Plug test leaks
|
|
cf7038a6
|
2013-01-31T14:04:21
|
|
Enhance url parsing to include passwords
|
|
7602cb7c
|
2013-01-31T10:44:57
|
|
Add user-from-url param to auth callback
|
|
4adb4815
|
2013-01-25T20:37:39
|
|
Merge pull request #1278 from sba1/cl-assert-equal-s
Use cl_assert_equal_s() instead of strcmp().
|
|
cfc39f50
|
2013-01-25T22:43:52
|
|
Fix 3 memory leaks
|
|
a7f8065f
|
2013-01-25T06:48:55
|
|
Use cl_assert_equal_s() instead of strcmp().
Replaced all cl_assert(!strcmp()) or semantically equivalent forms
by cl_assert_equal_s().
|
|
b90eb84f
|
2013-01-17T22:27:04
|
|
Test that pushs properly fail for transports that don't provide a push implementation.
|
|
2086e1ba
|
2013-01-11T16:54:57
|
|
tests: plug a couple of leaks
|
|
520dcc1c
|
2013-01-08T19:55:59
|
|
Move credential helpers to their own (optional) header
|
|
ffb02b16
|
2013-01-08T12:58:20
|
|
Expose stock user/pass credential utility
|
|
4128f5aa
|
2013-01-03T13:26:11
|
|
Fix bug in gen_pktline() for deletes of missing remote refs
* gen_pktline() in smart_protocol.c was skipping refspecs that deleted
refs that were not advertised by the server. The new behavior is to
send a delete command with an old-id of zero, which matches the behavior
of the official git client.
* Update test_network_push__delete() in reaction to above fix.
* Obviate messy logic that handles missing push_spec rrefs by canonicalizing
push_spec. After calculate_work(), loid, roid, and rref, are filled in with
exactly what is sent to the server
|
|
7b51d675
|
2013-01-03T19:17:07
|
|
Even more cleanups
|
|
600d8dbf
|
2013-01-03T09:10:38
|
|
Move test cleanup into cleanup functions
|
|
6fef1ab3
|
2013-01-03T07:47:51
|
|
Tests should clean up after themselves
|
|
7761ce21
|
2013-01-03T04:24:12
|
|
Merge branch 'development' into clar2
Conflicts:
tests-clar/clone/nonetwork.c
tests-clar/online/clone.c
tests-clar/online/fetchhead.c
|
|
0642c143
|
2013-01-02T12:44:47
|
|
Move `url` to last place in parameter list
|
|
156cfec0
|
2012-12-19T00:12:26
|
|
Cleanup Clar to make it SIMPLER
|
|
19c3c99c
|
2012-12-24T17:16:41
|
|
remote: remove duplicated test
|
|
f19304d2
|
2012-12-24T15:59:01
|
|
remote: Prevent create() from blindly overwriting
|
|
b0aa14aa
|
2012-12-24T15:27:42
|
|
remote: Enhance in-memory remote test coverage
|
|
2808ec9a
|
2012-12-21T13:15:37
|
|
Rename test to make @nulltoken happy
|
|
79000951
|
2012-12-21T08:05:59
|
|
In-memory remotes don't have names
|
|
874dcb25
|
2012-12-20T11:49:05
|
|
Remote: deprecate dangling, prevent saving in-memory
|
|
29f27599
|
2012-12-20T10:51:09
|
|
Rename remote creation APIs
git_remote_add -> git_remote_create
git_remote_new -> git_remote_create_inmemory
|
|
b412d563
|
2012-12-18T19:46:05
|
|
Add more clone options. Push test suite segfaults.
|
|
d5cf4665
|
2012-12-19T08:04:31
|
|
Fix some leaks and (possibly) dangling pointers in tests
Also adds some asserts.
|
|
26290cd1
|
2012-12-18T19:52:37
|
|
Reset global variable to NULL after free'ing resource
|
|
c4e3e797
|
2012-12-16T12:27:11
|
|
Ensure static variables are nulled after every test
|
|
b9e7e2b4
|
2012-12-14T13:46:45
|
|
Move non-options back out of options struct
|
|
18b2d560
|
2012-12-14T13:03:59
|
|
Deploy git_clone_options; remove git_clone_bare
|
|
7c353afd
|
2012-12-13T08:47:29
|
|
Define constant for default fetch spec
|
|
44f36f6e
|
2012-12-12T19:48:44
|
|
Convert clone to use dangling remotes
|
|
b914e17d
|
2012-12-12T12:23:24
|
|
API to set a dangling remote's repository
|
|
a71c27cc
|
2012-12-12T12:15:25
|
|
Allow creation of dangling remotes
|
|
59bccf33
|
2012-12-10T11:11:01
|
|
Add a payload param to git_cred_acquire_cb
Fixes #1128.
|
|
a9c07c47
|
2012-12-05T21:06:54
|
|
tests: MSVC fix
|
|
e05ca13f
|
2012-12-05T11:47:19
|
|
Merge pull request #1115 from ben/struct-versions
Version info for public structs
|
|
032ba9e4
|
2012-11-12T12:32:31
|
|
remote: deploy EINVALIDSPEC usage
|
|
3da73c40
|
2012-11-29T21:33:31
|
|
Fix compilation warnings
|
|
10711769
|
2012-11-29T20:47:37
|
|
Deploy versioned git_transport structure
|
|
9267ff58
|
2012-11-29T20:01:24
|
|
Deploy GIT_REMOTE_CALLBACKS_INIT
|
|
f4fc9fdb
|
2012-11-29T12:26:40
|
|
Cleanup nitpicky things
|
|
f1e5c506
|
2012-11-29T12:18:05
|
|
Merge pull request #1110 from libgit2/features/push_rebased
Push! By schu, phkelley, and congyiwu
|
|
046a1573
|
2012-11-24T19:05:39
|
|
fetch: enhance test coverage
|
|
35108a21
|
2012-11-28T19:35:26
|
|
Fix MSVC compilation warning
|
|
613d5eb9
|
2012-11-28T11:42:37
|
|
Push! By schu, phkelley, and congyiwu, et al
|
|
df705148
|
2012-11-27T13:15:43
|
|
API updates for remote.h
Includes typedef for git_direction, and renames for
GIT_DIR_[FETCH|PUSH] to GIT_DIRECTION_(\1).
|
|
a8122b5d
|
2012-11-21T15:39:03
|
|
Fix warnings on Win64 build
|
|
54b2a37a
|
2012-11-20T16:02:25
|
|
Clean up config.h
|
|
9094d30b
|
2012-11-23T11:41:56
|
|
Reset all static variables to NULL in clar's __cleanup
Without this change, any failed assertion in the second (or a later) test
inside a test suite has a chance of double deleting memory, resulting in
a heap corruption. See #1096 for details.
This leaves alone the test cases where we "just" use cl_git_sandbox_init()
and cl_git_sandbox_cleanup(). These methods already take good care to not
double delete a repository.
Fixes #1096
|
|
4e547eee
|
2012-11-13T07:11:24
|
|
test: fix memory leak
|
|
2ff1a0d0
|
2012-11-09T16:59:46
|
|
Helpers for local-filesystem remote URLs
|
|
11fabe73
|
2012-11-08T20:18:19
|
|
Local fetch: add tests
|
|
6edefa14
|
2012-11-05T10:58:08
|
|
Revert "Don't expect the 'empty-remote-url' remote to be listed"
Apparently git_remote_list() includes even remotes for which git_remote_load() would fail. Sorry @nulltoken, false alarm.
This reverts commit f358ec143c8c9952227d31cd21c24f8c9be23d3c.
|
|
f358ec14
|
2012-11-05T10:45:26
|
|
Don't expect the 'empty-remote-url' remote to be listed
CC @nulltoken
|
|
1fe99aee
|
2012-11-05T10:44:48
|
|
Test for GITERR_INVALID
|
|
a2a61894
|
2012-11-05T07:49:37
|
|
remote: Add malformed remote load test
|
|
b90500f0
|
2012-11-01T14:08:30
|
|
Improve docs, examples, warnings
This improves docs in some of the public header files, cleans
up and improves some of the example code, and fixes a couple
of pedantic warnings in places.
|