0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

フェッチについて

Posted at

SourceTreeで failed to push some refs ~ と出た時の対処法

作業開始時にプルをして、プッシュするときにこのエラーが出た。

やったこと

フェッチをしてから再度プルした。

わかったこと

調べたらたくさん出てきたので書いておきます。

SourceTreeで failed to push some refs〜のエラーが出る

原因① リモートブランチに先に誰かの変更が入っている

→プルするとローカルにリモートの変更がマージされるのでプッシュできるようになる

運用ルールに沿って変更を反映するには以下の手順でやり直し

  1. フェッチ->SoureTereeでローカルブランチとリモートブランチが枝分かれした状態が見えるようになる
  2. ローカルブランチから作業用ブランチを作成
  3. ローカルブランチをチェックアウト
  4. ローカルブランチを枝分かれする前のコミットまで巻き戻す
  5. プル->枝分かれが解消
  6. 作業用ブランチをチェックアウト
  7. 作業用ブランチをプッシュ->プルリクエスト

原因② 一度コミットした変更を上書きコミットで変更した

→そもそも一度プッシュしたコミットは変更してはいけない
→自分しかブランチを見ていなければ、こっそりリモートブランチを削除してプッシュし直しても平気

誰かに見られている場合は以下の手順でやり直し

  1. SourceTreeで見るとローカルブランチとリモートブランチが枝分かれした状態になっている
  2. ローカルブランチを枝分かれする前のコミットまでまで巻き戻す
  3. プル->枝分かれが解消
  4. 変更を追加コミット->プッシュ

最後に

何はともあれ私の場合はフェッチしてからプッシュしたらちゃんとリモートにプッシュされていました。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?