私はGITを使い始めました。 devAとdevBという2人の開発者しかいない非常に小さなチームを考えてみましょう。ここで私は自分の仕事をマスターに統合した後、誰かがgitリポジトリのマスターに新しいコミットをプッシュしたが、プッシュしなかった場合はどうすればよいですか?
はシナリオです:
- 彼らはすべてのver-01コミットに基づいて作業しています。
- DevAはver-02をコミットし、中央リポジトリにプッシュしました。
- DevBがver-03をプッシュしたが、devBがマスターをフェッチし、今ver-03を含むマスターとver02を含むorigin/masterを持つようになりました。彼はorigin/masterとmasterをマージし、ver-02とver-03の両方を含むver-04を持っていて、通常は中央リポジトリにプッシュします。
私が知りたいことは、DevBがコードをマージしているときに、DevAが別のバージョン05をプッシュしたことです。 DevBがマスターをorigin/masterとマージした後も、ver-04とver-05の間の競合を解決しなければならないため、まだプッシュできません。私がDevBならば、私は 'git fetch origin master'を走らせましたが、どのコマンドを実行してマージする必要がありますか?私は 'git merge origin master'を試みましたが、それは私に 'すでに最新のものです。'と言いますが、私がそれを押すと失敗しました。版である>は、最新のリモート変更が含まれている、 - >が03のver-
- は、マスターは:
は、私が実際に3つの支店があることがわかりました-05
- HEAD - > origin/master - >にはver-02とver-03からマージされたver-04が含まれています。
次に何をすればよいですか?
はgitのフェッチ ''試してみてくださいGitのmerge'や解決が
gitのは、 "メッセージ"
Gitのプッシュを-mをコミット競合
(リモート変更の上、変更を適用します) 'または' git pull' –
何かをする前にあなたの仕事をバックアップすることをお勧めします! – Matt
'git pull origin master'、もしあればコンフリクトを修正してから(コミットしてください)、' git push origin master' –