Hello All, As part of GSoC I'm working on the Unification of 'for-each-ref', 'tag -l' and 'branch -l'. 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}. Merged into next 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. Currently in pu (https://github.com/git/git/commit/6d4c958d88e6456405b8d65a8bf469382c47f4c5) 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. Version 7 can be found here : thread.gmane.org/gmane.comp.version-control.git/274990 We now have support for modifier atoms. Modifier atoms are atoms which modify succeeding strings or atoms. A simple example of this is the "color" atom which modifies the color of all succeeding atoms or strings. Similarly we introduce "padright" atom which will align atoms and strings to the left followed by spaces. This was after a lot on Input from Junio, Matthieu, Christian, Duy, Eric and Jacob. Currently waiting for review from the list. 4. Porting branch.c to use ref-filter. Here we port branch.c to use ref-filter APIs. An RFC version was sent to the list and can be found here : article.gmane.org/gmane.comp.version-control.git/274766 There was a lot of input on this and we are still discussing the structure for the "ifexists" atom. Currently everyone is indicating towards something like --format="%(ifexists:<atom>) .............. %(endif). This seems to be a good design and I hope to implement this over the next 3 days and send an updated Patch series to the list. Also need to implement show_ref_array_item() into branch.c. Currently we print form branch.c itself. Like always, Thanks to everyone for helping me out, especially my mentors. All code pushed to github: Github: https://github.com/KarthikNayak/git -- Regards, Karthik Nayak -- 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