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

Discuss GSOC: Refactoring in order to reduce Git’s global state

From
Ayush Chandekar <ayu.chandekar@gmail.com>
Date
Mar 5, 2025, 10:46 UTC
Message-ID
<20250305104650.238392-1-ayu.chandekar@gmail.com>

Hi, I have been studying Git's environment as I'm interested in working on the "Refactoring in order to reduce Git’s global state" project for GSOC 2025. Some basic changes at the top of my mind are removing the 'have_git_dir()' and similar functions or shifting the 'local_repo_env[]' to the repository struct. I also read through the patches [1] and [2] submitted by Patrick. I can see that we also have to shift core.* into repo settings.

I was planning to submit a small patch moving access to core.attributesfile into repo settings. However, before proceeding, I wanted to confirm if I am on the right track in understanding the project goals. Could you please suggest some more files I should look into??

Also are these patches ([1] and [2]) an example of how the project should be carried throughout the GSOC timeline?

Thanks, Ayush

[1] : https://lore.kernel.org/git/20250303-b4-pks-objects-without-the-repository-v1-0-c5dd43f2476e@pks.im/ [2] : https://lore.kernel.org/git/20250206-b4-pks-path-drop-the-repository-v1-0-4e77f0313206@pks.im/

Next: shejialuo
Message 1 of 6 in “Discuss GSOC: Refactoring in order to reduce Git’s global state”
  1. Ayush ChandekarMar 5, 2025
  2. shejialuoMar 5, 2025
  3. Patrick SteinhardtMar 7, 2025
  4. Ayush ChandekarMar 7, 2025
  5. Ayush ChandekarMar 8, 2025
  6. Ayush ChandekarMar 7, 2025

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.