git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[RFC PATCH 05/14] organize: declare Git's scope and layout

From
Michael Montalbo <mmontalbo@gmail.com>
Date
Aug 23, 2026, 17:18 UTC
Message-ID
<20260823171915.2662373-6-mmontalbo@gmail.com>
In-Reply-To
<20260823171915.2662373-1-mmontalbo@gmail.com>

Author .gitorganize for Git's own tree. [scope] puts the root *.c and *.h sources in scope. [layout] keeps a public interface (role:public) and a standalone program (role:program) at the root, and routes each component's sources to a directory of the same name: transport sources to transport/, diff sources to diff/, and so on for the thirteen components.

This is the map alone. The next step records a label per source; the carves that follow move each component into place.

Signed-off-by: Michael Montalbo <mmontalbo@gmail.com>
---
 .gitorganize | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
 create mode 100644 .gitorganize
diff --git a/.gitorganize b/.gitorganize
new file mode 100644
index 0000000000..18cf3228a8
--- /dev/null
+++ b/.gitorganize
@@ -0,0 +1,19 @@
+[scope]
+:(glob)*.c
+:(glob)*.h
+[layout]
+role:public = .
+role:program = .
+component:odb = odb
+component:refs = refs
+component:pack = pack
+component:diff = diff
+component:merge = merge
+component:revision = revision
+component:index = index
+component:setup = setup
+component:convert = convert
+component:transport = transport
+component:notes = notes
+component:submodule = submodule
+component:archive = archive
-- 
2.54.0
Previous: Michael MontalboNext: Michael Montalbo
Message 6 of 18 in “git organize: record file placement and apply it”
  1. 00/14 git organize: record file placement and apply itMichael Montalbo, Aug 23, 2026
  2. 01/14 organize: add the git organize builtinMichael Montalbo, Aug 23, 2026
  3. 03/14 organize: add status --exit-codeMichael Montalbo, Aug 23, 2026
  4. 02/14 organize: add the labeler, organizer, and apply --labels-onlyMichael Montalbo, Aug 23, 2026
  5. 04/14 organize: add the --label selectorMichael Montalbo, Aug 23, 2026
  6. 05/14 organize: declare Git's scope and layoutMichael Montalbo, Aug 23, 2026
  7. 06/14 organize: record a label for every source in scopeMichael Montalbo, Aug 23, 2026
  8. 08/14 refs: gather the refs sources under refs/Michael Montalbo, Aug 23, 2026
  9. 07/14 odb: gather the odb sources under odb/Michael Montalbo, Aug 23, 2026
  10. Oswald BuddenhagenAug 24, 2026
  11. Junio C HamanoAug 24, 2026
  12. Oswald BuddenhagenAug 24, 2026
  13. 09/14 pack: gather the pack sources under pack/Michael Montalbo, Aug 23, 2026
  14. 10/14 diff: gather the diff sources under diff/Michael Montalbo, Aug 23, 2026
  15. 11/14 revision: gather the revision sources under revision/Michael Montalbo, Aug 23, 2026
  16. 12/14 index: gather the index sources under index/Michael Montalbo, Aug 23, 2026
  17. 13/14 setup: gather the setup sources under setup/Michael Montalbo, Aug 23, 2026
  18. 14/14 transport: gather the transport sources under transport/Michael Montalbo, Aug 23, 2026

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.