2

私は Git クライアントを初めて使用し、その操作に非常に混乱しています。私は、SVN や CVS などの他のバージョン管理ツールに精通しています。STS に Git プラグインをインストールし、かなりの時間を費やしてプロジェクトをチェックアウトしました。私のオペレーティング システムは Windows-7 で、STS Eclipse 2.8.1 で Eclipse Git 1.3.0 を使用しています。

最初は、「単純なコミット操作」が実際にファイルをサーバーリポジトリにチェックインしないことを知りませんでしたが、「上流にプッシュ」する必要がありました。コンフリクトが確認されなければ問題なかったのですが、みたいな操作をしたいときに大変困っています。

  1. ローカルの変更を元に戻す
  2. ローカルコミットを取り消す
  3. サーバー リポジトリと同期します (同期パースペクティブ ウィンドウは表示されません)。
  4. ほとんどの場合、リモートへのプッシュは機能しません

うまくいかないというのは、Git が例外をスローするということです。

以下は、私が以前に取得したいくつかのエラーです。

  1. マージ コマンドの実行中に例外がキャッチされました。org.eclipse.jgit.errors.MissingObjectException: コミット c6c4fce9e8a0a228ac1d60f4e5549b5adafa638a がありません

  2. 不明な c6c4fce9e8a0a228ac1d60f4e5549b5adafa638a がありません

  3. コミットの検索

  4. AnyObjectId[c6c4fce9e8a0a228ac1d60f4e5549b5adafa638a]

  5. マージ コマンドの実行中に例外がキャッチされました。org.eclipse.jgit.errors.MissingObjectException:

  6. 「refs/remotes/origin/master との結合」中に内部エラーが発生しました

コミットに競合や問題が発生するたびに、ワークスペースを(ハードに)リセットし、すべての作業をやり直す必要がありました。

このようなことを経験したことがある方も多いと思いますので、私がどのように対応できるか見ていきたいと思います。

これに関するコメントをお待ちしております。

4

1 に答える 1

6

git fetchこれらのエラーは通常、適切に更新されていないリポジトリ (または)を反映しており、git pullそれらの操作 (マージまたはプッシュ) を完了するための参照がありません。

このスレッドは、マージ時の「missing commit」エラーを示しています。

その問題を解決するには、ネイティブ git からプルする必要がありました。
その後、いくつかの理由で、マージされたソース ファイルがローカルでコミットされていないなどの理由で、ソース ファイルの一部に「変更済み」マーカーがありました。
マージされたコードを手動でコミットする必要がありました。プッシュはまだ失敗していました。最初にもう一度引っ張る必要がありました。

EGit の主な問題は、切り離された HEAD モードではないことを確認することです (「EGit を使用してアップストリームにプッシュできない」で詳しく説明されています)。

それに加えて、最初にEgit のチュートリアルマニュアルに従ってトレーニングすることをお勧めします(もちろん、最初に git を理解し、 gitimmersionなどのgit チュートリアルを使用します)。

于 2012-10-18T06:40:22.620 に答える