私はOSとしてWindowsを使用しており、Macを使用している友人とプロジェクトに取り組んでいます。彼はコードをGithubにチェックインしました。
私は彼がしたことすべてをgit pullしようとしていて、サードパーティのコードの「filename too long」エラーで中止しました。
私に何ができる?
私はOSとしてWindowsを使用しており、Macを使用している友人とプロジェクトに取り組んでいます。彼はコードをGithubにチェックインしました。
私は彼がしたことすべてをgit pullしようとしていて、サードパーティのコードの「filename too long」エラーで中止しました。
私に何ができる?
回答:
Gitのmsysgit FAQ は、古いmsysgit チケット#110にリンクしているため、長いパスでファイルディレクトリを作成できません。ただし、後のチケット#122によると、問題はmsysgit 1.9で修正されたため、次のようになります。
git config core.longpaths true
これまでのところ、それは私のために非常にうまくいきました。
チケット#122のコメントで重要な通知に注意してください
ここに戻って、Windowsエクスプローラー、cmd.exe、bash、または使用しているすべてのツールが壊れると文句を言わないでください。
Solution1-次のコマンドを実行して、グローバル構成を設定します。
git config --system core.longpaths true
Solution2-または、以下のように特定のgit構成ファイルを直接編集できます。
YourRepoFolder-> .git-> config:
[core]
repositoryformatversion = 0
filemode = false
...
longpaths = true <-- (add this line under core section)
Solution3-新しいリポジトリを複製する場合:ここ。
数年遅れますが、これを一気に行う必要がある場合は(私が行ったように)、cloneコマンドの間に構成設定を設定できることを付け加えておきます。これを試して:
git clone -c core.longpaths=true <your.url.here>
git version 1.8.4.msysgit.0
、何かアイデアはありますか?
.gitconfigファイルを開いてlongpathsプロパティを追加します。したがって、次のようになります。
[core]
symlinks = false
autocrlf = true
longpaths = true
WindowsのJavaリポジトリでこの問題に絶えず遭遇した誰かとして、Cygwin(https://www.cygwin.com/)をインストールし、すべての> devel> gitでgitインストールを使用するのが最善の解決策です。
これが私が遭遇した最良のソリューションである理由は、Cygwinが長いパス名を管理するため、他の提供されたコマンドが役立つためです。例:find、cp、rm。Windowsで長すぎるパス名を削除しなければならないときに、本当の問題が始まります。
ファイルをファイルシステムのルートに近づけるようにしてください。詳細:技術的な理由により、絶対パスが260文字を超える場合、Git for Windowsはファイルまたはディレクトリを作成できません。
Windowsでは、管理者として「cmd」を実行し、コマンドを実行します。
"C:\Program Files\Git\mingw64\etc>"
"git config --system core.longpaths true"
または、gitがインストールされているフォルダーのchmodを実行する必要があります。
またはmanullayパス「Git \ mingw64 \ etc」に移動して手動でファイルを更新します
[http]
sslBackend = schannel
[diff "astextplain"]
textconv = astextplain
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true
[credential]
helper = manager
**[core]
longpaths = true**