Re: [RFC] Code reorgnization
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Mar 17, 2016, 13:32 UTC
- Message-ID
- <alpine.DEB.2.20.1603171431000.4690@virtualbox>
- In-Reply-To
- <20160317111136.GA21745@lanh>
Hi Duy,
On Thu, 17 Mar 2016, Duy Nguyen wrote:
Show 15 quoted lines
> 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").
Show 33 quoted lines
> 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