6

チーム プロジェクトを保持しているリモート リポジトリからいくつかの変更を取得しました。

これはプルで受け取ったメッセージです:

チェックアウトの競合

どうやら、私のパートナーの 1 人が私と同じファイルに変更を加えたようです。

ここから先はどうすればいいですか?メッセージは非常に曖昧です。エラーはありましたか?自分がしたことを元に戻す必要がありますか? 彼はしなければなりませんか?

4

4 に答える 4

11

私は今日この問題に直面しましたが、以下の解決策がうまくいきます。

  1. git stash を実行します。これにより、すべてのローカルおよび競合する変更が統合されます。
  2. 今すぐ git pull を実行する
于 2016-04-06T11:02:38.457 に答える
2

パートナーの変更をコードに組み込み、手動でマージされたファイルをコミットすることにより、競合を手動で解決する必要があります。

または、変更がそれほど複雑でない場合は、そのファイルへの変更を元に戻し (破棄し)、パートナーの変更を取得するようにコードを更新してから、作業をやり直すことができます。

http://wiki.eclipse.org/EGit/User_Guide#Manual_conflict_resolutionを参照してください

于 2014-09-09T13:04:22.543 に答える
2

作業コピーにあるファイルにコミットされていない変更がありますか? または、作業コピーはクリーンですか? EGit のドキュメントでは、後者のシナリオについて説明しています。

私の経験では、@lmray によって投稿されたエラー ダイアログは、ローカルの作業コピーにコミットされていない変更がある場合に EGit が表示するものです。EGit はリモートからの情報をマージしたいと考えていますが、ダーティな作業コピーは変更しないと言われています。続行するには、最初にローカルで変更をコミットし、フォールバック ポイントを指定してから、再度マージをリクエストする必要があります。マージは、できれば競合なしで、マージされたファイルを生成する必要があります。

@Bに感謝します。私を正そうとしたダルトン - 私の汚い作業コピーファイルにはコミットされていない変更があり、ローカルの git ウィザードが説明してくれました。

余談: これは、(私のように) SVN での作業に慣れている場合の精神的な調整です。SVN は、リモートの変更をダーティなローカル作業ファイルに喜んでプルします。それが良いと言っているわけではなく、git の動作が異なるだけです。私はまだ、SVN で訓練された直感を Git に対する適切な期待に変換するのに苦労しています。

于 2015-06-29T12:11:51.763 に答える
0

エクリプスで:-

  1. 右クリック→「インデックスに追加」をクリック

ステージングされた領域に競合ファイルを追加する

  1. 右クリック -> コミットをクリック

競合ファイルをローカル リポジトリに追加する

  1. 引く

すべての変更を取得します (リモート リポジトリとローカル リポジトリの変更)

ヘッド ( <<<<<< HEAD ) として言及されている変更はあなたの変更であり、ブランチ ( >>>>>>> ブランチ) で言及されている変更は他の人の変更です。それに応じてファイルを更新できます。

  1. 右クリック -> インデックスに追加をクリック

  2. 右クリック -> コミットしてプッシュ

于 2020-07-20T11:47:33.150 に答える