tests-clar/clone


Log

Author Commit Date CI Message
Ben Straub ff0ef88c 2013-10-30T18:54:39 Test more kinds of bad url
Russell Belfer d0849f83 2013-10-02T11:07:18 Simplify git_path_is_empty_dir implementation This simplifies git_path_is_empty_dir on both Windows (getting rid of git_buf allocation inside the function) and other platforms (by just using git_path_direach), and adds tests for the function, and uses the function to simplify some existing tests.
Russell Belfer 219d3457 2013-10-01T16:12:15 Initial iconv hookup for precomposed unicode This hooks up git_path_direach and git_path_dirload so that they will take a flag indicating if directory entry names should be tested and converted from decomposed unicode to precomposed form. This code will only come into play on the Apple platform and even then, only when certain types of filesystems are used. This involved adding a flag to these functions which involved changing a lot of places in the code. This was an opportunity to do a bit of code cleanup here and there, for example, getting rid of the git_futils_cleanupdir_r function in favor of a simple flag to git_futils_rmdir_r to not remove the top level entry. That ended up adding depth tracking during rmdir_r which led to a safety check for infinite directory recursion. Yay. This hasn't actually been tested on the Mac filesystems where the issue occurs. I still need to get test environment for that.
Carlos Martín Nieto 0e0cf787 2013-10-02T14:04:44 clone: put the callbacks struct directly in the clone options There's no need for this to be a pointer to somewhere else.
Carlos Martín Nieto fdc7e5e3 2013-09-20T23:14:12 clone: bring back NULL as defaults This wasremoved as part of the large culling a few commits ago.
Carlos Martín Nieto c833893c 2013-09-20T22:57:01 clone: re-allow using a custom remote name This is a small thing that by itself doesn't quite justify making the user use clone_into.
Carlos Martín Nieto 6ac15eff 2013-09-20T22:34:05 clone: remove more options from basic clone The basic clone function is there to make it easy to create a "normal" clone. Remove a bunch of options that are about changing the remote's configuration.
Carlos Martín Nieto c8dbec48 2013-09-16T18:42:53 clone: remove the autotag option Downloading all tags is part of what makes it a clone instead of simply a fetch.
Carlos Martín Nieto 605da51a 2013-09-17T09:50:30 No such thing as an orphan branch Unfortunately git-core uses the term "unborn branch" and "orphan branch" interchangeably. However, "orphan" is only really there for the checkout command, which has the `--orphan` option so it doesn't actually create the branch. Branches never have parents, so the distinction of a branch with no parents is odd to begin with. Crucially, the error messages deal with unborn branches, so let's use that.
Russell Belfer 114f5a6c 2013-06-10T10:10:39 Reorganize diff and add basic diff driver This is a significant reorganization of the diff code to break it into a set of more clearly distinct files and to document the new organization. Hopefully this will make the diff code easier to understand and to extend. This adds a new `git_diff_driver` object that looks of diff driver information from the attributes and the config so that things like function content in diff headers can be provided. The full driver spec is not implemented in the commit - this is focused on the reorganization of the code and putting the driver hooks in place. This also removes a few #includes from src/repository.h that were overbroad, but as a result required extra #includes in a variety of places since including src/repository.h no longer results in pulling in the whole world.
nulltoken 1fed6b07 2013-05-13T21:57:37 Fix trailing whitespaces
nulltoken 24988894 2013-05-10T12:02:17 Fix some memory leaks
Jameson Miller 6f748f38 2013-05-04T12:14:40 Do not write tagopt configuration option on clone by default
Carlos Martín Nieto 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
Ben Straub bd0a07f4 2013-04-23T12:28:59 Clone: replace fetch spec with custom value
Nikolai Vladimirov dfdf709e 2013-04-23T21:29:07 get last refspec in clone test
Carlos Martín Nieto 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.
Vicent Marti d064c747 2013-04-15T23:18:24 Merge remote-tracking branch 'ben/unified-revparse' into development
Ben Straub 2ebc3c66 2013-04-15T11:57:24 Redeploy git_revparse_single.
Ben Straub 1aa21fe3 2013-04-09T05:03:51 Deprecate git_revparse_single and _rangelike
Carlos Martín Nieto a258d8e3 2013-03-30T03:39:19 branch: rename 'tracking' to 'upstream' The term 'tracking' is overloaded. Help distinguish what we mean by using 'upstream' for this part of the library.
Jameson Miller 926acbcf 2013-03-01T11:07:53 Clone should not delete directories it did not create
nulltoken c1b5e8c4 2013-02-15T11:35:33 branch: Make git_branch_remote_name() cope with orphaned heads
nulltoken 3ad05221 2013-02-05T16:52:56 Fix MSVC compilation warnings Fix #1308
Frank Li aa928de0 2013-01-29T17:26:42 Add test case for clone head detached repo Signed-off-by: Frank Li <lznuaa@gmail.com> Signed-off-by: nulltoken <emeric.fermas@gmail.com>
nulltoken bf031581 2013-01-14T14:22:11 branch: Introduce git_branch_tracking_name()
Vicent Martí e2d2c6e5 2013-01-12T02:14:14 Merge pull request #1222 from scunz/clone_branch Switch to specified branch during clone
Sascha Cunz f1d4a35e 2013-01-12T00:08:48 Tests: Add test for check out of given branch during clone
Sascha Cunz b5b28120 2013-01-12T00:07:44 Test: Cleanup some cleaning code
nulltoken 090d5e1f 2013-01-11T14:40:09 Fix MSVC compilation warnings
nulltoken b97fabfa 2013-01-06T15:18:00 tests: Fix some memory leaks
Vicent Marti 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
Vicent Marti f46769e5 2013-01-03T02:13:37 Fix network suite
Ben Straub 922dd978 2013-01-02T13:54:37 Move some clone tests to the nonetwork suite
Ben Straub 730df6d0 2013-01-02T13:43:54 Include checkout options inline
Vicent Marti 156cfec0 2012-12-19T00:12:26 Cleanup Clar to make it SIMPLER
nulltoken 6bd09ecc 2012-12-24T15:51:10 Fix MSSVC compilation issue
Ben Straub 621b50e4 2012-12-19T16:51:37 Clone: trust but verify
Ben Straub b412d563 2012-12-18T19:46:05 Add more clone options. Push test suite segfaults.
Sascha Cunz 96a289f5 2012-12-19T05:24:23 clone-empty-test: Don't use one pointer for two things ... so we can clean up correctly.
Sascha Cunz 22d23c61 2012-12-17T17:15:58 Cleanup the test correctly
Ben Straub 57f5d8dc 2012-12-14T14:15:42 Remove placeholder files during tests
Ben Straub 1164acde 2012-12-14T14:00:35 Rebase fixup
Ben Straub 850b1edf 2012-12-13T12:55:28 Allow clone to handle empty repos
Ben Straub b9e7e2b4 2012-12-14T13:46:45 Move non-options back out of options struct
Ben Straub 18b2d560 2012-12-14T13:03:59 Deploy git_clone_options; remove git_clone_bare
Vicent Marti 509216a5 2012-12-14T02:49:01 test: Fix clone tests
Vicent Marti b0b9fd32 2012-12-14T02:41:53 Merge remote-tracking branch 'origin/clone-auth' into development
Jameson Miller 8a8820d8 2012-12-13T17:58:12 Add test to clone with absolute path
Ben Straub 24393ea6 2012-12-13T09:14:56 Stop premature remote freeing when cloning
Ben Straub 7c353afd 2012-12-13T08:47:29 Define constant for default fetch spec
Ben Straub 44f36f6e 2012-12-12T19:48:44 Convert clone to use dangling remotes
Vicent Marti cfbe4be3 2012-11-17T19:54:47 More external API cleanup Conflicts: src/branch.c tests-clar/refs/branches/create.c
Ben Straub 2508cc66 2012-11-18T21:38:08 Rename ref and reflog apis for consistency
Sascha Cunz 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
Vicent Martí aa1c3b58 2012-11-13T14:13:47 Merge pull request #1016 from arrbee/fix-checkout-dir-removal Update checkout with new strategies & behavior
Ben Straub 2ff1a0d0 2012-11-09T16:59:46 Helpers for local-filesystem remote URLs
Russell Belfer 757b4065 2012-11-09T14:01:44 Fix warnings and valgrind issues This fixes some various warnings that showed up in Travis and a couple uses of uninitialized memory and one memory leak.
Russell Belfer ad9a921b 2012-11-08T17:05:07 Rework checkout with new strategy options This is a major reworking of checkout strategy options. The checkout code is now sensitive to the contents of the HEAD tree and the new options allow you to update the working tree so that it will match the index content only when it previously matched the contents of the HEAD. This allows you to, for example, to distinguish between removing files that are in the HEAD but not in the index, vs just removing all untracked files. Because of various corner cases that arise, etc., this required some additional capabilities in rmdir and other utility functions. This includes the beginnings of an implementation of code to read a partial tree into the index based on a pathspec, but that is not enabled because of the possibility of creating conflicting index entries.
Ben Straub 505da062 2012-11-06T10:26:06 Implement local transport's fetch
Ben Straub 1fc375e6 2012-10-25T09:02:55 Fix Windows build Pedantic ordering of GIT_UNUSED vs. variable declarations.
Ben Straub 7d222e13 2012-10-24T13:29:14 Network progress: rename things git_indexer_stats and friends -> git_transfer_progress* Also made git_transfer_progress members more sanely named.
Ben Straub 9c05c17b 2012-10-19T20:05:18 Checkout progress now reports completed/total steps
Ben Straub aa1e8674 2012-10-18T12:57:47 Clone: in-line callbacks for progress Also implemented in the git2 example.
Ben Straub 183d8bdd 2012-10-16T20:33:48 Remove checkout_stats from git_clone
nulltoken add5efe7 2012-10-16T00:49:05 test: fix some memory leaks
nulltoken c4f68b32 2012-10-15T07:06:22 clone: fix detection of remote HEAD
nulltoken 4d968f13 2012-10-15T06:12:57 clone: Explicit support of no-checkout option
Ben Straub 86a2da6e 2012-10-10T15:10:07 Clone: use libgit2's test repos
Ben Straub 65415ea2 2012-10-10T10:34:26 Tests: add "network" category Split the clone tests into network and no-network suites.
nulltoken bf0e62a2 2012-10-07T12:50:18 clone: fix cloning of empty repository
nulltoken ebecf1e7 2012-10-07T12:04:07 clone: reorganize tests
Ben Straub 5bb0dc93 2012-09-13T14:02:46 ODB: re-load packfiles on failed lookup The old method was avoiding re-loading of packfiles by watching the mtime of the pack directory. This causes the ODB to become stale if the directory and packfile are written within the same clock millisecond, as when cloning a fairly small repo. This method tries to find the object in the cached packs, and forces a refresh when that fails. This will cause extra stat'ing on a miss, but speeds up the success case and avoids this race condition.
Ben Straub 15445f9e 2012-07-27T11:14:30 Turn off network-dependent test for CI.
Ben Straub b401bace 2012-07-26T13:12:21 Restructure for better checkout options * Removed the #define for defaults * Promoted progress structure to top-level API call argument
Ben Straub ef9905c9 2012-07-26T12:58:44 checkout: introduce git_checkout_opts Refactor checkout into several more-sensible entry points, which consolidates common options into a single structure that may be passed around.
Ben Straub 81167385 2012-07-11T15:33:19 Fix compile and workings on msvc. Signed-off-by: Ben Straub <bstraub@github.com>
Ben Straub d024419f 2012-07-11T10:40:53 Add git_path_is_empty_dir.
Ben Straub 822d9dd5 2012-07-11T09:50:12 Remove duplicate of git_repository_head_tree.
Ben Straub 1c7eb971 2012-07-10T12:04:23 Reindent.
Ben Straub acdd3d95 2012-06-21T19:51:56 Clone: allow empty dirs.
Ben Straub 5a20196f 2012-06-21T15:11:13 Fix warning on msvc build.
Ben Straub 94161115 2012-06-21T10:34:11 Clone: minor cleanup and whitespace.
Ben Straub 8340dd5d 2012-06-20T14:17:54 Clone: remove fragile path-handling code. Also standardized on 3-space indentation. Sorry about that.
Ben Straub da73fb70 2012-06-20T12:48:41 Disable long-running test.
Ben Straub 3c4b008c 2012-06-20T12:43:28 Disable failing test (for now).
Ben Straub f2a855d5 2012-06-19T20:37:12 Clone: restructure.
Ben Straub bb1f6087 2012-06-19T09:15:39 Add progress reporting to clone.
Ben Straub 764df57e 2012-06-15T13:14:43 Add git_clone and git_clone_bare. So far they only create a repo, setup the "origin" remote, and fetch. The API probably needs work as well; there's no way to get progress information at this point. Also uncovered a shortcoming; git_remote_download doesn't fetch over local transport.