【Source Tree】Source TreeでPermission Deniedが出たときの対処法の1パターン

Source TreeでPermission Deniedが出てプルできない(と言われた)現象があったので、
根本的な原因はわかりませんがその対症療法をメモしておきます。

現象

  • Source TreeでPullやPushを行うとPermission Deniedというエラーが出た
  • リモートリポジトリにブラウザからはアクセスできる
  • どのリポジトリに対しても起こる(GitHubでもGitLabでもBitBucketでも)
  • Pullなどの操作を行うと直ちにエラーになるので、そもそも通信までいっていなさそう
  • Source Treeからターミナルを開くと以下のようなメッセージが出てgitが起動しない
Creating /dev/shm directory failed.
POSIX semaphores and POSIX shared memory will not work


Creating /dev/mqueue directory failed.
POSIX message queues will not work

解決方法

ツール > オプション > Git > Update Embeddedから
Source Treeの内蔵Gitを更新することで解決しました。

ただしgit_localフォルダを消さないとGitが更新できませんでした。
このあたりは下記の記事を参考にしました。

qiita.com