Hi Duy, On Thu, 17 Mar 2016, Duy Nguyen wrote: > Git's top directory is crowded and I think it's agreed that moving > test-* to t/helper is a good move. I just wanted to check if we could > take this opportunity (after v2.8.0) to move some other files too. I > propose the following new subdirs > > lib > --- > This contains files that are about data structures or algorithms. Very > general purpose. This directory includes > > argv-array.[ch] base85.c column.[ch] delta.h diff-delta.c hashmap.[ch] > hex.c khash.h kwset.[ch] levenshtein.[ch] mergesort.[ch] patch-delta.c > prio-queue.[ch] sha1-array.[ch] sha1-lookup.[ch] strbuf.[ch] > string-list.[ch] url.[ch] urlmatch.[ch] utf8.[ch] varint.[ch] > versioncmp.c wildmatch.[ch] The name "lib" makes it sound as if this contains the source code of libgit.a. Maybe "generic" or "common" or "util" would be better (my favorite would be "util"). > odb > --- > The grouping of object database files is to easily make connections > between them. Unlike, for example, diff-related files which either > start with "diff" or has that word in the file name to make > connections. > > alloc.c blob.[ch] bulk-checkin.[ch] commit-slab.h commit.[ch] > object.[ch] pack.h pack-revindex.[ch] replace_object.c sha1_file.c > streaming.[ch] tag.[ch] tree.[ch] > > index > ----- > For the same reason of odb subdir. This directory contains > > cache-tree.[ch] name-hash.c preload-index.c read-cache.c > split-index.[ch] unpack-trees.[ch] > > sys (or maybe util or support) > ------------------------------ > These are still general purpose but is usually system-related. They > are still far away from git's core logic. I want to separate them to > make it easier to spot "important" files at top dir. > > abspath.c color.[ch] copy.c csum-file.[ch] ctype.c date.c editor.c > exec_cmd.[ch] gettext.[ch] gettext.h gpg-interface.[ch] ident.c > lockfile.[ch] mailinfo.[ch] mailmap.[ch] pager.c parse-options-cb.c > parse-options.[ch] pathspec.[ch] pkt-line.[ch] progress.[ch] > prompt.[ch] quote.[ch] run-command.[ch] sideband.[ch] sigchain.[ch] > symlinks.c tar.h tempfile.[ch] thread-utils.[ch] trace.[ch] > unix-socket.[ch] usage.c userdiff.[ch] wrapper.c write_or_die.c zlib.c > > Good? Bad? Ugly? Disruptive. Probably a change for 3.0? Ciao, Dscho -- 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