経緯
最初に作業ブランチとしてmasterからworkブランチを作成。
その後作業の関係でdevelopから同じworkという名前で
SourceTree上で作業ブランチを切り直したのがよくなかったみたいです。
(実はプッシュする時にもエラーが出たのでそれは余裕がある時に、、、)
見た目的には下記のブランチが存在してる感じ。
・ origin/work/master
・ origin/work/develop
#発生したエラー
で、 work/develop を origin/develop にマージして
デプロイコマンドを実行したときに下記のエラーが発生。
error: cannot lock ref 'refs/remotes/origin/work/develop': 'refs/remotes/origin/work' exists; cannot create 'refs/remotes/origin/work/develop'
From github.com:< gitRepository_url >
! [new branch] work/develop -> origin/work/develop (unable to update local ref)
error: cannot lock ref 'refs/remotes/origin/work/master': 'refs/remotes/origin/work' exists; cannot create 'refs/remotes/origin/work/master'
! [new branch] work/master -> origin/work/master (unable to update local ref)
error: some local refs could not be updated; try running
'git remote prune origin' to remove any old, conflicting branches
#原因と解消方法
最初に origin/work を作っちゃったからそんなブランチないよ、と怒られてるようです。
詳しい原因はこちらの記事にわかりやすく説明されていました。
エラー文見ると
git remote prune originしてブランチのコンフリクト解消してよ〜ってことなので下記を実行。
# git remote prune origin
事象変わらず…( ;´Д`)nazee
# sudo git remote prune origin
これでいけました!sudoってすごいんだな。。。
#参考