2009-11-12 30 views
2

git-config使用什么系统来管理配置?它是作为独立的库/工具公开提供的吗?或者它是紧密交织在一起的?git-config样式配置系统

我想为我的项目有类似的东西。

是否有我可以使用的库,它提供了类似的功能?或者我应该只写自己的工具/库?

回答

4

该代码是自定义的。 Have a look for yourself(参见builtin-config.c,config.c)。

有关重复使用的详细信息,请参阅许可证(GPL v2)。

它不是一个通用的库,也不是一个通用的工具(尽管如果你总是通过--file并且确定子节段的方式,你可以将它作为一个使用),所以需要一些工作以适应代码。

0

对于Python的一部分,有ConfigParser模块,它采用了类似的文件格式。

+1

实际上,你不能直接使用ConfigParser使用,因为莱纳斯决定把标签由于某些原因格式。参见Congbin Guo的回答。 – Tritium21 2014-05-04 02:41:12

2

对于Java,在这里你有一个非常小的库:gitconfig4j

5

对于Python,似乎ConfigParser不能直接用于因混帐配置文件中的前导空格。但它可能以这种方式

from ConfigParser import ConfigParser 
from StringIO import StringIO 

with open('.gitconfig') as f: 
    c = f.readlines() 
cp = ConfigParser() 
cp.readfp(StringIO(''.join([l.lstrip() for l in c]))) 
+0

节标题中的其他数据不可通过“ConfigParser”,例如'.gitmodules'文件中的[submodule“my/submodule/name”] – kostmo 2016-02-21 00:10:34