schedule2021-09-27

Github DesktopでcommitするときにError Cannot find moduleとエラーがでる

Github Desktopでコミットしようとすると次のようなエラーが出てコミットできなくなった。

picture 2

環境

  • Windows 10 Home
  • Github Desctop version 2.9.3

Github Desctopは現時点で最新のversion 2.9.3を利用しています。

コマンドやVSCodeでのコミットは通ります。 Github Desctopではコミット以外のプッシュやフェッチなどの機能は正常に動作しました。

エラー内容

/c/Users/suzumura/AppData/Roaming/npm/yarn: line 5: cygpath: command not found
internal/modules/cjs/loader.js:892
  throw err;
  ^

Error: Cannot find module 'C:\Users\suzu6\AppData\Local\GitHubDesktop\app-2.9.3\resources\app\git\node_modules\yarn\bin\yarn.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:889:15)
    at Function.Module._load (internal/modules/cjs/loader.js:745:27)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
    at internal/main/run_main_module.js:17:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}

エラーの原因

同じエラーがGitHub Desktopのissueに上がっていた。

https://github.com/desktop/desktop/issues/10326

まず、モジュールが無いと言われているC:\Users\suzu6\AppData\Local\GitHubDesktop\app-2.9.3\resources\app\git\node_modules\yarn\bin\yarn.jsは無かった。 むしろC:\Users\suzu6\AppData\Local\GitHubDesktop\app-2.9.3\resources\app\git\に** node_modulesフォルダが存在しない**。

これがエラーの原因だと思われる。 何らかの要因でnode_modulesが消えたか、パス変数が変わってしまったのかもしれない。

最近yarnを入れ直したりしたためだろうか?

解消方法

issueでは手動でnode_modulesをコピーすると直ったとあるので試す。

C:\Users\suzu6\AppData\Roaming\npm\node_modulesにyarnがあるので、C:\Users\suzu6\AppData\Local\GitHubDesktop\app-2.9.3\resources\app\git\へコピーする。

picture 1

コピーしたら、コミットが通るようになりました!!!