2016-01-08 19 views
9

git-lfsを使用して大きなファイルを保存するリポジトリの作業コピーがあります。 git-lfsバイナリがインストールされていますが、作業コピーの中で "git lfs install"を実行していない可能性があります。私はLFSファイルの追加後に、私のローカルの作業コピーを更新したい場合は、私はこれらのコマンドを実行します。限りLFSのファイルが追加されていたとしてうまく働いgit lfs(Large File Storage)は、git lfsのプル後にlfs管理ファイルが変更されたと言います。

git pull 
git lfs pull 

。そして、リポジトリが変更されたいくつかのLFSのファイルを持っていたと私はgit pullを実行したとき、私は、エラーメッセージました:

Your local changes to the following files would be overwritten by merge 
.... 
.... 

をそして、それはプルによって変更されようとしたLFSのファイルのすべてを記載されています。

作業コピーの中でgit lfs installを実行しましたが、正常に動作しましたが、git statusにはこれらのファイルがすべて変更されて表示され、git pullで同じエラーが表示されます。

私の質問は基本的に、私がlfsを使用している場合、自分の作業コピーを更新するための正しい手順は何ですか?このスティッキーな状況をどうやって解決しますか?

答えて

10

作業コピー内のgit lfs installの実行が解決策の半分であることが分かりました。後半は作業コピー内git resetを実行することでした:

  • は場所に大きなファイルを残し
  • gitのは、彼らが実際に汚れていませんでしたし、うまくだったことを知っている
  • レット

そして今、私はもはや最新の大きなファイルを入手するために、git lfs pullを明示的に行う必要はないようです。最初のgit pullは正常に動作します。

+2

私はコメントなしでdownvoteを得ましたか? ¯\ _(ツ)_ /¯ – greggles

+0

これは素晴らしいです!私は何時間も私を悩ませている同じエラーがある!ありがとうございました! – user40780

0

私にとっては、私がクローンになる前に、私はgit lfs installを最初に、次にgit cloneにします。すべてが解決される!私はこの質問が非常に重要であり、共通の解決策(少なくとも一見一目瞭然ではない)を示すことなく、GitHubの議論がたくさんあることはよくあることだと思います!あなたの答えgregglesありがとう。

+0

まだgitクローンを作成していないのであれば、これはまともな解決策のようです。私の場合はすでにgitクローンを実行していて、lfs管理ファイルを取得する必要がありました。 – greggles

関連する問題