Он подскажет: системный файл ‘gitconfig’ не существует
Это мой код:
#include <windows.h>
#include <wchar.h>
#include "include/git2.h"
#ifdef _DEBUG
#pragma comment(lib, "git2d.lib")
#else
#pragma comment(lib, "git2.lib")
#endif
int main(int argc, char* argv[])
{
git_threads_init();
git_repository* repo = NULL;
int iRetVal = git_repository_init(&repo, (LPCTSTR)("C:\\test"), false);
if( (iRetVal < 0) && (giterr_last() != NULL) )
{
MessageBox(NULL, giterr_last()->message, "gittest", MB_ICONERROR | MB_OK);
}
if( repo != NULL )
git_repository_free(repo);
git_threads_shutdown();
return 0;
}
IRetVal возвращает -1, а ‘repo’ равно NULL, но хранилище создано в C: \ test
Я знаю, что есть три типа конфигурации: системный, xdg, глобальный, какой тип конфигурации и где его разместить?
Код второго вопроса:
#include <windows.h>
#include "include/git2.h"
#pragma comment(lib, "git2.lib")
int main(int argc, char* argv[])
{
git_threads_init();
git_repository* repo = NULL;
git_clone_options opts = GIT_CLONE_OPTIONS_INIT;
int iRetVal;
opts.bare = true;
iRetVal = git_clone(&repo, "https://github.com/libgit2/libgit2.git", "C:\\test", &opts);
if( (iRetVal < 0) && (giterr_last() != NULL) )
{
MessageBox(NULL, giterr_last()->message, "gittest", MB_ICONERROR | MB_OK);
}
if( repo != NULL )
git_repository_free(repo);
git_threads_shutdown();
return 0;
}
Задача ещё не решена.