私はgitリポジトリをRepository.Cloneを使って複製しようとしています。ここでLibGit2Sharp.NameConflictException "ファイル名または拡張子が長すぎます。"
は、cloneコマンドのために使用されるコードの例ピースです。
public string Clone(string remoteRepository, string path, string username, string password)
{
string myPassword;
CloneOptions options = new CloneOptions();
options.CredentialsProvider = (url, user, cred) =>
{
return new UsernamePasswordCredentials {Username = username, Password = password};
};
return Repository.Clone(remoteRepository, path, options);
}
コードは、いくつかのリポジトリ上で正常に動作しますが、他人のために、私は例外
は、ここで私は
は{ "ファイルをのstatに失敗しました取得しています例外は『切り取ら』のget:ファイル名をまたは拡張子が長すぎます。\ r \ n "}
『それの全体が切り取ら』パスが270文字の長さです。だから私はこれが非常に古いMAX_PATHルールの悪いことであることを知っています。
は、Windowsのドキュメントのいくつかによると、あなたは長いパスは、Windows APIの呼び出しで使用できるようになりますパスの先頭に\?\を追加することによって、ユニコードパスを使用することができます。しかし、これはLibGit2Sharpでは機能しません。
それは長いパスで作業できるようにLibGit2Sharpに設定を供給する方法はありますか?そうでないと、この動作を可能にする代替のナゲットパッケージがありますか?
。 –
それは別のDLLですか? DLLを変更する必要があります。 – Prajwal