3

Linuxでgit 1.7.10を使用して、約100のコミットのブランチで git rebase -i を使用しようとしています。私は定期的にこの問題に遭遇しますが、常にではありません:

どの変更を加えたいかを示した後... たとえば。アップストリーム部分のかなり近くで言い換えを行うだけです.gitは実行を続け、コミットを適用している間、コマンドラインにカウンターを表示します:[17/100]のように...

これは通常、非常にスムーズな操作ですが、多くの場合、次のように言って途中で停止します。

[分離された HEAD 5e1a3c8] コミット メッセージ
作成者: ユーザー名
1 ファイルが変更され、14 回の挿入 (+)、3 回の削除 (-)
致命的: '/[リポジトリへのパス]/.git/index.lock': ファイルが存在します。

適用できませんでした 05e6b8ef その他のコミット メッセージ

git rebase --continue を実行すると、現在のコミットのコミットメッセージが表示され、ファイルを閉じると git rebase は続行しますが、そのコミットは省略されます...それはまったく役に立たないので、今のところ --abort を実行します。しかし、それは苦痛です...

問題のあるコミットを手動でコミットしてから --continue することは可能かもしれませんが、まだ調べていません。

いずれにせよ、私が行ってチェックすると、index.lockは存在しません。git が作成しようとした瞬間に存在していたのかもしれませんが、ファイル ブラウザで見る前に削除されたことは間違いありません...

ps : リベース中に gitg を開いていないと、これを再現できないようです。

手がかりはありますか?

更新: gitg 2.6 に更新すると問題が解決したようです

4

1 に答える 1

3

このファイルは、2つのクライアントが同じリポジトリに対して相互に干渉しないようにするために作成されています。私はtorgoisegitでこの問題を抱えていました。他の場合にも発生する可能性があります。インタラクティブなリベースはかなり集中的な操作であるため、その場合にヒットする可能性が高くなります。リベースを行う前に、gitgと他のクライアントを閉じてください。

于 2012-04-26T20:49:59.243 に答える