5

私はEclipse用のGitプラグインを使用しています。作業ディレクトリを更新するために、以前はPullまたはFetch+Mergeを実行していました。解決すべき競合がある場合は、マージ ツールを使用します。しかし最近、私は新しいアプローチを試みました。

他のユーザーが変更した内容を確認するには、Fetchを実行し、その後Synchronize Workspaceを実行します。チーム同期ビュー内でコードを直接更新した後にコミットとプッシュを実行しようとすると、「rejected-non-fast-forward」エラーが発生します。

チーム同期ビューを使用して作業ディレクトリを更新できるかどうか、またはそれを行う唯一の方法が Egit のマージアクションによるものかどうかを知りたいです。

4

1 に答える 1

9

「ワークスペースの同期」とチーム パースペクティブは、変更を表示する別の方法です。どちらも、基になる git ワークフローを変更しません。共有リポジトリにプッシュするときは、変更をコミットする前に、受信する変更を常にマージする必要があります。

ただし、入ってくる変更を自分のローカルの変更と常にマージしたい場合は、ローカル ブランチの「リベース」プル戦略を検討することをお勧めします。これは基本的に、独自の変更を一時的に削除し、リモートの変更をブランチにプルして、独自のローカルの変更を再適用します。マージの競合が発生した場合は、解決する必要があります。

于 2013-04-24T19:10:16.793 に答える