25

問題

SO、Git と GitHub のドキュメント、および遭遇したいくつかの Gist に関する多くの提案にもかかわらず、git LFSを使用しようとすると問題が発生しました。

私の問題は次のとおりです。

必要な手順を実行した後:

git lfs install
git lfs track "<file of interest>"
git commit

追跡されているファイルはまだありません。私が実行した場合

git lfs ls-files

空白になります。先に進んでプッシュを実行すると、ファイルが大きすぎると言ってトランザクションが失敗します。(さすがだけど、必死でした。)

4

4 に答える 4

27

私の(オリジナルポスター)「解決策」

その後、いくつかの修正を発見しました。そのうちのいくつかはバグのようで、いくつかは単に私には明らかではありませんでした。

  1. 既存のリポジトリで利用するにlfsは、ハックかBFGのコンバーターなどのサードパーティツールが必要なようです。

    • 私はその道を行きたくなかったので、新しいリポジトリをローカルで初期化し、それを実際のリポジトリに接続するという挑戦をしました。
    • 新しいディレクトリを作成してからgit init、など。
      • 私の場合、リモート リポジトリは GitHub でした。だから私はこれらすべての適切な接続を次のようにしましたgit remote add origin git@github.com:<my_id>/<my_repo>.git
  2. また、Git のトレーニング ビデオでは、 などのフォルダを指定するだけでよいと主張していますが"my_folder/"、私はこれを機能させることができませんでした。したがって、私はファイル名拡張子を巧みに使用して物事を管理しました。

    • たとえば、git lfs track "my_folder/"私にはうまくいきませんでしたが、git lfs track "*.zip"うまくいきました。
  3. 最初にファイルを更新し、.gitattributesその新しいファイルをコミットしてリモートサーバーにプッシュしない限り、LFS ファイルを正しく識別できませんでした。

    • git lfs track "*.zip"
    • git add .gitattributes
    • git commit -m "Updated the attributes"
    • git push
    • git add my_large_file.zip
    • git lfs ls-files
      • my_large_file.zipここで、追跡されていることを確認します。
    • git commit -m "Now I am adding the large file"
    • git push

いくつかのことがうまくいく可能性はありますが、私は単に間違ったことをしていました. しかし、上記の魔法に従ってようやく LFS が機能するようになったので、他の誰かが同じ問題を抱えている場合に備えて、これらの詳細を他の人に伝えたいと思いました.

于 2016-02-20T03:15:19.507 に答える