[GSOC] Microproject "Move ~/.git-credential-cache to ~/.config/git"
- From
惠轶群 <huiyiqun@gmail.com>
- Date
- Mar 14, 2016, 14:47 UTC
- Message-ID
- <CAKqreux4aYhXTE9kUHKoKCJ2-4KDWyi58ioCm-CWqXhUYCtEEw@mail.gmail.com>
I'm Hui Yiqun, a master degress candidate of Tsinghua University. I'd like to participate GSOC 2016 as an developer of git.
I have basic knowledge about several programming languages (namely C, python, go and etc.), compilers and cmake which may help my development.
My github page is at [here](https://github.com/huiyiqun/). There are some tiny programs.
I took part in a CDN project last year and learnt much about TCP/IP, web service and, most importantly, cooperation. However, I really want to learn how members of an opensource project work together.
I have covered most of the available materials, such as list of ideas and micro-projects, `README.md`, `INSTALL` and `Documentation/CodingGuidelines`. So I decide to start my contribution with the microproject "Move ~/.git-credential-cache to ~/.config/git" found [here](http://git.github.io/SoC-2016-Microprojects/), which seems easy for me.
I greped the source code and found out that there are two places where "git-credential-cache" are hard-coded:
1. credential-cache.c 2. contrib/persistent-https/socket.go
At first sight, there are following tasks to do:
1. implement a function `xdg_cache_home` similar to `xdg_config_home` in `path.c`. 2. replace the hard-coded path with an call to `xdg_cache_home`.
I'm still confused about following:
1. should `~/.git-credential-cache` been moved to `~/.cache/git/credential`(as the descreption of the micropject says) or `~/.config/git/credential`(as the title of the microproject says)? 2. If `~/.cache/git/credential` is the desired target, there seems nothing to do with `XDG_CONFIG_HOME`. 3. Does "without breaking compatibility with the old behavior." mean that I should still try to connect to the unix socket placed at the old place? If yes, which order is prefered?
Thanks for your patience. I hope that my English didn't affect the communication.