2

で最新のものを入手しようとしていたところgit pull origin master、いくつかの構成ファイルに競合があることに気付きました。しかし、チェックインする他のファイルもありますが、それらを失いたくないのです。

これらの競合はローカルの構成ファイルであるため、単純に削除し、新しいプル リクエストを実行して再度取得することを望んでいました。

今別のことをしようとするgit pull origin masterと、それは言う

「ファイルのマージが解除されているため、プルはできません。作業ツリーでそれらを修正してから、必要に応じて 'git add/rm' を使用して解決をマークするか、'git commit -a' を使用してください。」

では、これらの削除された構成ファイルをリポジトリから最新の状態で復元するにはどうすればよいでしょうか? (これらのファイルへのローカルの変更は気にしなかったので、削除しました)

各構成ファイルに対して次のようにします。

git checkout -- path/to/individual_file

ありがとう、

4

2 に答える 2

2

コミットするファイルがいくつかある場合は、それらを stash してから withにgit stashリセットし、変更をプルしてすべての競合を修正し、新しい HEAD に stash を適用しますHEADgit reset --hard HEADgit pullgit stash apply

branchローカルの変更を保存したい場合は、一時ブランチを作成して、マスターをリセットしてプルし、ローカルの変更を一時ブランチから復元することもできます。

于 2012-12-11T13:24:45.370 に答える
0

$ git reset --hard HEAD状態を返すことができますHEAD

次に、git pullもう一度実行して競合を修正し、修正をコミットします。

于 2012-12-11T12:21:41.803 に答える