Squashed 'deps/libgit2/' changes from bcc6229..c5cacc4

c5cacc4 Merge pull request #2261 from jacquesg/format-patch
3b2d14a Merge pull request #2270 from csware/fix_git_branch_t_enum
fa13ee2 Add GIT_BRANCH_ALL to git_branch_t enum
37ab5ec Merge pull request #2269 from libgit2/rb/fix-leading-slash-ignores
0f7aa47 Merge pull request #2235 from jacquesg/cherry-pick
39206ca Added a test case for formatting a binary patch e-mail
a56b418 Sanitize git_diff_format_email_options' summary parameter
d8cc1fb Introduce git_diff_format_email and git_diff_commit_as_email
360314c Introduce git_diff_get_stats, git_diff_stats_files_changed, git_diff_stats_insertions, git_diff_stats_deletions and git_diff_stats_to_buf
cab3937 Added git_diff_stats test files
a9528b8 Fix core.excludesfile named .gitignore
289e31c Merge pull request #2264 from jacquesg/fix-warnings
6fefb7a Capture conflict information in MERGE_MSG for revert and merge
103b7d2 Added cherry pick tests
4d7b993 Added cherry-pick support
399f2b6 Introduce git_merge__extract_conflict_paths
06d772d Merge pull request #2262 from libgit2/rb/fix-ignore-pop
efaa342 Correct C90 warnings
7a28f26 Fix const-correctness of git_patch_get_delta, git_patch_num_hunks, git_patch_num_lines_in_hunk
51297ca Added RFC2822 date format test cases
8e14b47 Introduce git__date_rfc2822_fmt. Allows for RFC2822 date headers
8f7bc64 Fix bug popping ignore files during wd iteration
b3b36a6 Introduce git_buf_putcn
553184a Update AUTHORS

git-subtree-dir: deps/libgit2
git-subtree-split: c5cacc4ec2c13e93164b8e3013b0d18c8c6d820c
Merge commit '5e2907110873c809e15685a7289d628e4fbd1301' into update-libgit2
15-merge.t: Updated test cases to check for conflict markers in MERGE_MSG
Branch.xs: use GIT_BRANCH_ALL
Push.xs: Added callbacks() method
19-push.t: Added Push tests
Push.pm: Updated documentation
Changes: update