1
con.Client.EditFiles(foundFiles, new Options(EditFilesCmdFlags.None, changelist.Id, null));

現在、このコード行を実行すると、「リビジョン仕様 (# または @) はここでは使用できません」というエラーが表示されます。これは、foundFiles 内の一部のファイルの名前に「#」記号が含まれているためだと思われます。誰でもこれが問題であることを確認できますか? そして、誰かがそれを回避する方法を知っていますか? Client.AddFiles で同様のエラーが発生しましたが、AddFilesCmdFlags.KeepWildcards を使用して -f (強制) フラグを呼び出してこれをバイパスすることができました。残念ながら、同じことは EditFiles では機能しません。

注: ファイルの名前を変更することはできません。何千ものファイルがあり、それらを変更することは私の管轄外であるためです。

4

1 に答える 1

3

これはそれを行う必要があります:

Options opts = new Options(EditFilesCmdFlags.None, changelist.Id, null);
con.Client.EditFiles(FileSpec.UnversionedSpecList(foundFiles), opts);

UnversionedSpecList は、FileSpec の静的関数であり、FileSpec のリストを渡すことができ、バージョンを取り除きます。

于 2013-09-19T18:12:47.510 に答える