threads / discuss / 38690

[GSoC15] Interested in contributing to git

Subject: [GSoC15] Interested in contributing to git

## tl;dr

4 messages between Mar 3, 2015 and Mar 3, 2015.

replies: 3people: 2as markdown or json

Paul Tan· Mar 3, 2015, 15:56 UTC · lore
Hi all,
git is one of the projects that I wish to contribute to for Google
Summer of Code 2015 as it's an integral part of my workflow. I'm from
Singapore, and have been accepted to the National University of
Singapore for Computer Engineering, and will only matriculate on 3 Aug
2015. I have experience in programming with Python, C and C++, and
have successfully submitted patches to projects such as libuv[1] and
node-contextify[2].

[1]: https://github.com/joyent/libuv/commit/347000929de775ae6b975a2959f5fabe81d6f1f0 [2]: https://github.com/brianmcd/contextify/commit/7e3e0a89779cd892b3d8604795b6675d6aecff17

I understand that I have to complete a microproject. I would like complete "Move ~/.git-credentials and ~/.git-credential-cache to ~/.config/git". I'm thinking that the XDG locations should take precedence over the non-XDG locations?

For the project, I am interested in implementing "git fetch --deepen" because I use the shallow clone feature quite often. I'm looking over the source code to see how difficult it would be to implement it :)

Thanks, Paul

Matthieu Moy· Mar 3, 2015, 16:20 UTC · re: Paul Tan · lore

Re: [GSoC15] Interested in contributing to git

Paul Tan <pyokagan@gmail.com> writes:
Show 7 quoted lines
> Hi all,
>
> git is one of the projects that I wish to contribute to for Google
> Summer of Code 2015 as it's an integral part of my workflow. I'm from
> Singapore, and have been accepted to the National University of
> Singapore for Computer Engineering, and will only matriculate on 3 Aug
> 2015.

Be carefull: a GSoC is a full-time job. The GSoC itself ends on August 21st, so there would be a substantial (too big?) overlap between the GSoC and your studies.

> I understand that I have to complete a microproject. I would like
> complete "Move ~/.git-credentials and ~/.git-credential-cache to
> ~/.config/git". I'm thinking that the XDG locations should take
> precedence over the non-XDG locations?

The logic is different for reading and for writting, see how Git deals with it for ~/.gitconfig for example. Essentially, we read both, and we write to the one which exists if there's only one.

I'm the one who proposed this microproject, and some feedback on the mailing-list was that it was not so "micro" and probably too big already.

Both for the microproject and the GSoC itself, don't be too ambitious on the feature you target, and don't underestimate the effort needed to get from "the code looks OK to me" to "the code has been reviewed on list and merged upstream".

Cheers,
-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/
Paul Tan· Mar 3, 2015, 18:08 UTC · re: Matthieu Moy · lore

Re: [GSoC15] Interested in contributing to git

Hi Matthieu,

On Wed, Mar 4, 2015 at 12:20 AM, Matthieu Moy <Matthieu.Moy@grenoble-inp.fr> wrote:

> Be carefull: a GSoC is a full-time job. The GSoC itself ends on August
> 21st, so there would be a substantial (too big?) overlap between the
> GSoC and your studies.

I understand. I will have to try my best to complete most of the work before then.

Show 8 quoted lines
>> I understand that I have to complete a microproject. I would like
>> complete "Move ~/.git-credentials and ~/.git-credential-cache to
>> ~/.config/git". I'm thinking that the XDG locations should take
>> precedence over the non-XDG locations?
>
> The logic is different for reading and for writting, see how Git deals
> with it for ~/.gitconfig for example. Essentially, we read both, and we
> write to the one which exists if there's only one.
I will try to implement something similar. My idea for credential-store.c is:
* For "get", lookup_credential() on the XDG file first if it exists,
and if it fails call it on the home file.
* For "remove", remove_credential() from both the xdg file and the home file.
* For "store", if the XDG file exists store_credential() in the XDG
file and remove_credential() from the home file, otherwise just
store_credential() in the home file.
* For all operations, if "--file" is provided, use it instead.
Show 7 quoted lines
> I'm the one who proposed this microproject, and some feedback on the
> mailing-list was that it was not so "micro" and probably too big
> already.
> Both for the microproject and the GSoC itself, don't be too ambitious on
> the feature you target, and don't underestimate the effort needed to get
> from "the code looks OK to me" to "the code has been reviewed on list
> and merged upstream".
Thanks, I will keep that in mind.

Also, quick question, where should the XDG tests go for git-credential-store? I see t1306-xdg-files.sh and t0302-credentials-store.sh.

Show 5 quoted lines
> Cheers,
>
> --
> Matthieu Moy
> http://www-verimag.imag.fr/~moy/

Regards, Paul

Matthieu Moy· Mar 3, 2015, 18:14 UTC · re: Paul Tan · lore

Re: [GSoC15] Interested in contributing to git

Paul Tan <pyokagan@gmail.com> writes:
> Also, quick question, where should the XDG tests go for
> git-credential-store? I see t1306-xdg-files.sh and
> t0302-credentials-store.sh.

I think both could make sense, but it will probably be more natural in t1306-xdg-files.sh. See what the other tests took like.

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/

← back to recent threads