Liming, I see the usage of Submodules is documented at the end of the Readme.md. I would not think of going to a Submodules section to figure out how to get started or clone the repo. I did not think of reading the full Readme.md as most of it is about "How to Contribute to" not how to use the repo. >From TianoCore.org I followed this path: https://www.tianocore.org/getting-started.html https://github.com/tianocore/tianocore.github.io/wiki/Getting-Started-with-EDK-II https://github.com/tianocore/tianocore.github.io/wiki/Windows-systems or https://github.com/tianocore/tianocore.github.io/wiki/Common-instructions-for-Unix The git clone instructions don't include the "git submodule update --init" instructions and the OVMF build failed. bash$ mkdir ~/src bash$ cd ~/src bash$ git clone https://github.com/tianocore/edk2 Thanks, Andrew Fish > On Aug 25, 2019, at 8:54 PM, Gao, Liming wrote: > > edk2\Readme.md Submodules section gives the command to update edk2 project. > > Thanks > Liming >> -----Original Message----- >> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of >> rebecca@bsdio.com >> Sent: Saturday, August 24, 2019 6:24 AM >> To: devel@edk2.groups.io; afish@apple.com >> Subject: Re: [edk2-devel] git submodule update --init --recursive >> >> On 2019-08-23 14:41, Andrew Fish via Groups.Io wrote: >>> I was following the instructions on how to build OVMF and my build failed. It >> looks like the reason it failed was because I did not do a `git submodule >> update --init --recursive`. It would be good if we could make how to clone the >> edk2 instructions a bit more obvious. >> >> >> I think we came to the conclusion that "--recursive" isn't needed. But >> I've found that there are cases where "--force" is required to make sure >> git checks out a submodule correctly. >> >> >> -- >> Rebecca Cran >> >> >> >