{"size": 742, "ext": "scrbl", "max_stars_repo_path": "libgit2/scribblings/clone.scrbl", "max_stars_repo_name": "guygastineau/libgit2", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "libgit2/scribblings/clone.scrbl", "max_issues_repo_name": "guygastineau/libgit2", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "libgit2/scribblings/clone.scrbl", "max_forks_repo_name": "guygastineau/libgit2", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 26.5, "max_line_length": 159, "alphanum_fraction": 0.704851752}
#lang scribble/manual

@(require (for-label racket))

@title{Clone}

@defmodule[libgit2/include/clone]


@defproc[(git_clone
          [url string?]
          [local_path string?]
          [options (or/c git_clone_options? #f)])
         repository?]{
 Clone a remote repository.

 By default this creates its repository and initial remote to match git's defaults. You can use the options in the callback to customize how these are created.

 Passing @racket[#f] for options will use default clone options.
}

@defproc[(git_clone_init_options
          [opts clone_options?]
          [int unsigned])
         integer?]{
 Initializes a git_clone_options with default values. Equivalent to creating an instance with GIT_CLONE_OPTIONS_INIT.
}
