Hello to all, I'm Karthik Nayak, a Computer Science student from Bangalore India. I will be applying for GSOC 2014. This is my first time applying for GSOC. I have been using Git for a long time now, so it would be an ideal organisation for me to contribute to. As suggested I completed the Micro Project under the guidance of Eric Sunshine.[1] I went through the Idea's page[2] and the mails corresponding to the topic[3]. Currently we have multiple invocation of git_config() in an individual invocation of git() which is not efficient. Also, it is hard to implement new features, as mentioned -- such as allowing a configuration to be unset. The basic idea is to use a data structure to store the config, the first time the git_config() is called. And refer to this each and every time we invoke git_config() further. Jeff suggested [4] to use a tree or a mapping of keys to values which are stored in a string. I think that the idea of storing using the config as a tree data structure would be really advantageous. This would allow us to easily implement modifications later, and can help to easily take care of duplicates being created on multiple usage of config set and unset. As, whenever a node's children have been deleted the node can also be automatically deleted. The tree can be a struct with values, header link and link to other configs. This way we can also create functions to work on the tree easily. Would be great to hear your thoughts on this topic and also I plan to start creating a proposal. Nice to have any suggestions or feedback of any kind. Thank you, Karthik [1] : http://article.gmane.org/gmane.comp.version-control.git/243695/match=karthik+188+gmail+com [2] : http://git.github.io/SoC-2014-Ideas.html [3] : http://article.gmane.org/gmane.comp.version-control.git/243500/match=git+configuration+caching [4] : http://article.gmane.org/gmane.comp.version-control.git/243542 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html