Updates files in the index and working tree to match the content of the tree pointed at by the treeish.
a commit, tag or tree which content will be used to update the working directory (or NULL to use HEAD)
0 on success, non-zero return value from notify_cb
, or error code < 0 (use git_error_last for error details)