Antecedentes
O OneDrive não permite excluir diretórios por nome, e isso é algo que não será alterado em breve :
[OneDrive’s representative response on a UserVoice request:] Not right now
Algumas pessoas recomendam que desmarque os diretórios que você não deseja sincronizar nas configurações do OneDrive, mas isso se tornou impossível com .
Sobre o OneDrive-Files-On-Demand-0e6860d3-d9f3-4971-b321-7092438fb38e "> Arquivos do OneDrive por demanda .Solução
No entanto, você pode resolver isso ajustando as coisas no lado do Node.js. Torne o diretório node_modules
um link simbólico arquivo para um lugar diferente:
# Open any place outside OneDrive
cd D:\node_dependencies
# Make a symlink target. After linking, node_modules for your project
# will be installed here
mkdir node_modules_for_my_project
# Open the project directory
cd <the project directory>
# Make a *file* link from node_modules to the newly created directory.
# You will need to delete existing node_modules directory if it exists
cmd /C "mklink node_modules D:\node_dependencies\node_modules_for_my_project"
A parte importante aqui é que você cria um link simbólico arquivo , não um diretório . O OneDrive não reconhecerá nem sincronizará esse link simbólico, enquanto o Node.js funcionará como esperado:
TestadocomoOneDrivev17.3.7101.1018earquivosOneDrivesobdemandaativados.
Desvantagens
Estanãoéumasoluçãouniversal.UmadesvantagemdissoéqueoExplorer,oPowershelleoutrasferramentasnãoreconhecemnode_modules
comoumdiretório:
Noentanto,oseditoresdecódigobaseadosnoNode.jsirãolê-lobem: