question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Feature Request: Disable `git status` checks for adaptive non-unity build

See original GitHub issue

I noticed this in the logs of a build under Hyper-V isolation on Windows:

  Using 'git status' to determine working set for adaptive non-unity build (C:\UnrealEngine).
  Waiting for 'git status' command to complete
  Terminating git child process due to timeout

Presumably this timeout is due to either CPU starvation due to lack of cores in the VM (https://github.com/moby/moby/issues/38387), or general IO awfulness under Hyper-V isolation.

Either way, calling git status at all seems needless, since any source changes will invalidate the Docker cache all the way back in ue4-source, so build outputs in ue4-minimal are never going to see incremental builds.

Is it possible for ue4-docker to default to disabling the adaptive non-unity build?

I haven’t checked if this is a parameter we can pass into BuildGraph, or if it would require live-patching or something, so I don’t know if this is easy or hard.

And since my machine is busy this week with the aforementioned Hyper-V build, I can’t currently experiment with this. Maybe in a couple of weeks, unless someone resolves this (either way) before then.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:9 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
slonopotamuscommented, Mar 11, 2021

This change (pruning of .git directory) was somewhat improved by 9cf1375c33098a2787b5f514fd0ff36167a12b96.

1reaction
adamrehncommented, Dec 22, 2020

Okay, GitHub seems to be trolling me, because the comment I posted here yesterday has mysteriously vanished. Here’s the short version:

  • I couldn’t find any mention of unity builds in the Build Graph XML, so removing the .git directory seems to be the way to go.

  • With no .git directory present, the fallback behaviour is to assume that the user is using Perforce and has file locking enabled, so it just checks whether files are read-only. I had links to the exact lines of code in the original version of this dot point so you could see the behaviour, but TLDR is that it never tries to actually invoke Perforce so it won’t give us any grief.

  • Removing the .git directory in the ue4-source image could interfere with the use cases for the ue4-engine image, so I’m going to remove it at the start of the ue4-minimal image instead. This actually renders the size discussion moot, but for what it’s worth, my testing confirmed that the layer where the deletion is performed is tiny (sub-1KiB.)

Read more comments on GitHub >

github_iconTop Results From Across the Web

Disable `git status` checks for adaptive non-unity build
I noticed this in the logs of a build under Hyper-V isolation on Windows: Using 'git status' to determine working set for adaptive...
Read more >
Waiting for 'git status' command to complete making for long ...
This feature is used to exclude most iterated file from unity build. This is suppos decrease the compile (If you build the engine...
Read more >
Feature request: Option to disable builds on commit pushes
I'd like to build pull requests and any updates to them, and any merges into the master branch ideally. 18 Likes. Pull requests...
Read more >
Too much Compile Time - Ask - GameDev.tv Community
Using 'git status' to determine working set for adaptive non-unity build (F:\UNREAL REMASTERED\BullCowGame\Bulls And Cows).
Read more >
[VS2022 17.1.0] Internal compiler error when building ...
1>Error executing Engine4_27\Engine\Build\Windows\cl-filter\cl-filter.exe (tool ... Using 'git status' to determine working set for adaptive non-unity build ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found