在Windows XP,32位机器上,我使用
克隆了libgit2存储库git clone git://github.com/libgit2/libgit2.git trunk
然后我使用:
从trunk_build_debug配置mingwcmake ../trunk -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS=-g
并使用
构建它make
使用这个新构建的库,我正在尝试创建一个新的存储库。所以我正在使用
error_code = git_repository_init( &repo, path, 0 );
if ( error_code != 0 )
{
const git_error * error = giterr_last();
/* the text representation:
( error == NULL || error->message == NULL ?
"(no description)" :
error->message )
*/
}
首次尝试时失败并显示错误消息:
Git error -1:全局文件'.config / git / config'不存在: 系统找不到指定的文件。
创建了.git目录,我可以使用git status
来查询它。另外,我在Program Files / git中安装了git,它运行得很好。用户目录中不存在提到的文件,即为true。我不高兴,因为我无法检查返回的错误代码(错误可能是“真实的”)。
所以我在D:\ Documents and Settings \ User Name.config \ git \ config中创建了一个空文件 再次创建.git目录,但我得到相同的-1错误代码。这次giterr_last()返回NULL。
在调试器中跟踪代码似乎表明该库对我的空文件不满意。
然而,我认为这表明我做错了什么。有初始化方法吗?我是否需要创建文件并使用git_config_函数将库指向它?
顺便说一下,这是错误的地方吗?是否有专门的论坛,我应该问这个问题?由于
以下是呼叫失败的后跟踪:pastebin 似乎无法解析.git目录中的配置文件(未在跟踪中显示的是'config_parse()'失败)。
我在libgit2中打开了an issue。
答案 0 :(得分:3)
要创建新的存储库,应该依赖git_repository_init()
。有关详细信息,您可以查看 header 和 tests 。
git_repository_open()
。
是否有专门的论坛,我应该问这个问题?
可以在StackOverflow上询问与编程相关的问题。除此之外,一些libgit2开发人员在irc.freenode.net的#libgit2频道中闲逛。但是,当您遇到错误时,建议将其提交到 issue tracker 。
考虑到在调试libgit2时发现了什么,现在可能是在问题跟踪器中打开错误的好时机。请注意可能有两个问题:探测问题和空配置问题。