1
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?

More than 3 years have passed since last update.

Git「マージする前に、変更をコミットするか、それらを隠してください」と出たら...

Posted at

チーム開発をしていて、Macのターミナルに

error: Your local changes to the following files would be overwritten by merge: Please commit your changes or stash them before you merge.

と出たので、対処してみた。

##エラーが起きたタイミング

チームで開発しているので、まず

$ cd checkout master

でMacのターミナルにて、マスターへ移動。

次にチーム開発で使っているGithubより

$ git pull origin master

でmasterブランチを最新に更新。そこでエラー文が登場!

error: Your local changes to the following files would be overwritten by merge:
	//ここは関係するファイル名が表示される
Please commit your changes or stash them before you merge.

何でだろうと考えつつ、対処法をまとめてみました。

##対処法

エラー文をそのまま、グーグル翻訳してみると、以下のようになりますね。

エラー:次のファイルに対するローカルの変更はマージによって上書きされます:マージする前に、変更をコミットするか、それらを隠してください。

ふむふむ。

コンフリクト、つまり「競合」「衝突」となっているみたい。

対処法として

  • 対象ファイルを削除する
  • 指摘されたファイルを退避させる
  • 強制的にマージさせる

という方法があるようです。

私としては「削除」でもいいかなと思ったのですが、初心者ゆえに不安もあったため、二番目の「一時退避」を選びました。

$ git stash

これで、現在の作業を一時退避させます。stashというコマンドで。

コンフリクトがなくなったと思うので、再度以下のコマンドです。

git pull origin master

はい、エラー文がなくなりました!
わーい!

##まとめ

初学者の場合、エラーが出ると恐怖に陥りますよね...

でも嬉しいことに、先駆者がエラーが出た時の対処法をまとめてWeb上に投稿してくださっています。感謝でしかないですね。

今回ご紹介した方法以外に、良い対処法があるかと思いますので、どうぞご教授ください。

【参考にさせていただいたサイト】
本番環境でpullしたらコンフリクト?解決法3パターン!【Please commit your changes or stash them before you merge】

1
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
1
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?