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

Re: [StGit RFC] Make "stg branch -l" faster by getting all git config information in one call

From
David Kågedal <davidk@lysator.liu.se>
Date
Dec 13, 2007, 16:08 UTC
Message-ID
<87bq8ur2zs.fsf@lysator.liu.se>
In-Reply-To
<b0943d9e0712130738s18ad303fu17a8412097377900@mail.gmail.com>
"Catalin Marinas" <catalin.marinas@gmail.com> writes:
> BTW, have you run stg-prof to check where it spends most of the time?
> Is it caused by Python object creation or GIT calls invoked during the
> Series objects initialisation. If the latter, we can turn some
> variables into properties and access them lazily.

I ran with STG_SUBPROCESS_LOG=debug and noticed that there were four invokations of git for each branch it listed, in addition to the ten invokation before it even starts to list the branches.

So I focused on replacing those 4xN invokations with 2 invokations, and it helped a lot. But I'm sure there are still lots of things to improve.

Actually, I didn't know about stg-prof.
-- 
David Kågedal
Previous: Catalin MarinasNext: Karl Hasselström
Message 8 of 13 in “[StGit RFC] Make "stg branch -l" faster by getting all git config information in one call”
  1. David KågedalDec 13, 2007
  2. git config --get-regexp exit statusDavid Kågedal, Dec 13, 2007
  3. Junio C HamanoDec 13, 2007
  4. Catalin MarinasDec 13, 2007
  5. David KågedalDec 13, 2007
  6. David KågedalDec 13, 2007
  7. Catalin MarinasDec 13, 2007
  8. David KågedalDec 13, 2007
  9. Karl HasselströmDec 13, 2007
  10. Karl HasselströmDec 13, 2007
  11. Catalin MarinasDec 13, 2007
  12. David KågedalDec 13, 2007
  13. Karl HasselströmDec 13, 2007

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.