Add a failing test for autocrlf filters
Fix possible free'ing of unitialized pointer in error case
Implement analog for 'git checkout --branch xxx ...'
Add missing git_buf_free
Fix indentations
errors: Introduce EMERGECONFLICT error code
checkout: Deploy EMERGECONFLICT usage
Fix MSVC compilation warnings
Fix MSVC Clar compilation warnings
Merge pull request #1227 from nulltoken/topic/emergeconflict

Introduce EMERGECONFLICT
Revert "pack: packfile_free -> git_packfile_free and use it in the indexers"

This reverts commit f289f886cb81bb570bed747053d5ebf8aba6bef7, which
makes the tests fail on Windows. Revert until we can figure out a
solution.
Fix diff patch line number calculation

This was just wrong.  Added a test that verifying patch line
numbers even for hunks further into a file and then fixed the
algorithm.  I needed to add a little extra state into the patch
so that I could track old and new file numbers independently,
but it should be okay.
Match binary file check of core git in diff

Core git just looks for NUL bytes in files when deciding about
is-binary inside diff (although it uses a better algorithm in
checkout, when deciding if CRLF conversion should be done).
Libgit2 was using the better algorithm in both places, but that
is causing some confusion.  For now, this makes diff just look
for NUL bytes to decide if a file is binary by content in diff.
Merge pull request #1229 from arrbee/fix-diff-patch-line-numbers

Fix diff patch line number calculation
Merge pull request #1230 from arrbee/match-core-git-diff-binary-detection

Match binary file check of core git in diff
Check for binary blobs in checkout

This adds a git_buf_text_is_binary check to blobs before applying
filters when the blob data is being written to disk.
Test: Cleanup some cleaning code
Tests: Add test for check out of given branch during clone
Fix up binaryunicode test repo
Merge pull request #1215 from phkelley/binaryunicode

Add a failing test for CRLF filters