# [GSOC] Update 3: Unification of tag -l, branch -l and for-each-ref

1 messages from 2015-06-27 to 2015-06-27. Participants: Karthik Nayak.
Thread: https://gitlist.dev/t/39739

## Karthik Nayak, 2015-06-27 18:32

Subject: [GSOC] Update 3: Unification of tag -l, branch -l and for-each-ref
Message-ID: <CAOLa=ZTb7Y_aRmBMucKyY-G9uEBL9uvHoh2f-7ny9jXrNB_yow@mail.gmail.com>
URL: https://gitlist.dev/e/CAOLa%3DZTb7Y_aRmBMucKyY-G9uEBL9uvHoh2f-7ny9jXrNB_yow%40mail.gmail.com

```
Hello All,

As part of GSoC I'm working on the Unification of 'for-each-ref', 'tag -l'
and 'branch -l'. Sorry for the lack of update since Jun 14, was a
little busy with an exam I had. Now thats over, I will be working more
on the project.

Current Progress:

1. Building ref-filter.{c,h} from for-each-ref.
This is the process of creating an initial library for the unification
by moving most of the code from for-each-ref to ref-filter.{c,h}.
thread.gmane.org/gmane.comp.version-control.git/271563v2 This was the
last edition (v8) and should be merged into next eventually.

2. Add options to ref-filter.
This includes the porting of --points-at, --contains, --merged,
--no-merged options from builtin/branch.c and builtin/tag.c, Also the
implementation of these options into for-each-ref.
The last version (v6) is posted here:
http:/thread.gmane.org/gmane.comp.version-control.git/272641
Currently waiting for comments.

3. Port builtin/tag.c to use ref-filter.
Here we port tag.c to use ref-filter and also port the --format,
--sort and --merged and --no-merged options to builtin/tag.c.
The "RFC" version is posted and I'm waiting for comments from the list:
thread.gmane.org/gmane.comp.version-control.git/272654

Next Plans:
I'm currently working on porting over builtin/branch.c to use
ref-filter.{c,h} the only problem with branch.c is that it implements
different colors for different branches while printing. Hence we need
to think about how we could use the code from ref-filter to print the
filtered branches.
As usual all intermediate code will be pushed to my Github repository
https://github.com/KarthikNayak/git

-- 
Regards,
Karthik Nayak

```
