libgit2/libgit2 — pull request #1143 by ben (2012-12-14 21:20:08+00:00)
Title: Options structure for git_clone

In preparation for the argument explosion that will be triggered by #1142, this collapses all the parameters passed to `git_clone` into one options structure. This avoids function-signature changes in the future, and allows us to preserve ABI compatibility even while adding things to the options struct. Also, it avoids this:

```c
git_clone(&r, origin, "./foo", false, NULL, NULL, NULL, NULL, NULL, false, true, 0);
```

Currently, this is only preserving the current feature set. `git_clone_bare` disappeared into a boolean option.