私は、GIT リモート リポジトリから複製された Eclipse のプロジェクトに取り組んでいます。Eclipse eGit プラグインを使用すると、GIT について何も理解していなくても作業を開始できます。最終的に、「HEAD リビジョンとの比較」を行うと、リモート リポジトリとの比較ではなく、ローカル リポジトリとの比較であることに気付きました。リモート リポジトリから更新を取得する必要があることは理解しましたが、ローカルの変更がどうなるかはわかりません。私はこれらの変更をコミットしていません。理由の 1 つは、リモート リポジトリを更新している可能性があると思っていたからです (更新しないことに気付きました)。また、Package Explorer のファイル装飾 (">") がファイルの識別に役立つことがわかっているためです。変更しました。コミットすると、これらの兆候は消えると思います。
私の質問:
- 変更を失わずにローカル リポジトリを更新するにはどうすればよいですか?
- 変更されたファイルのインジケーターを失わずにこれを行うことはできますか?
更新:これの一部がどのように機能するかを理解したと思っていましたが、特にワークスペースと(ローカル)リポジトリとの関係によって、今は本当に迷っています。
Team->Pull を使用してリポジトリを更新しました。変更をコミットしていないので、これが競合なしで機能することを期待していましたが、ワークスペースとレポの間のすべての変更に競合としてフラグが立てられました (混乱 #1)。
他の VCS の場合と同様に、Team->Synchronize を使用してワークスペースに変更を反映する必要があると想定しました。実行すると、変更が表示されますが、非競合の更新でさえワークスペースに適用されておらず、これを行うための「更新」操作がないため、それらを適用する方法がわかりません (混乱 #2) .
競合する更新については、手動で変更をワークスペースのコピーにマージし、「マージ済みとしてマーク」を使用しましたが、これは何もしないようです。競合は解消されません。この時点で、変更はワークスペースでのコミットされていない変更にすぎないと思います (混乱 #3)。
競合を取り除くには、Team-> Add および Team-> Commit を使用する必要があることを他の場所で読みましたが、最初に説明したように変更をコミットしたくありません (混乱 #4)。
私が混乱しているのがわかります!どんな助けでも大歓迎です。