これはxcodeの警告/エラーであることを理解していますが、コマンドラインからgitk --all
を実行しようとすると発生します。
YuFei-Zhus-MacBook-Pro:test phil88530$ gitk --all
2012-08-02 21:14:49.246 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme:
2012-08-02 21:14:49.252 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme:
2012-08-02 21:14:49.293 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme:
2012-08-02 21:14:49.295 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme:
2012-08-02 21:14:49.474 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme:
2012-08-02 21:14:49.476 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme:
2012-08-02 21:14:50.731 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme:
2012-08-02 21:14:50.734 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme:
YuFei-Zhus-MacBook-Pro:test phil88530$
新しいディスクを交換し、osxを新規インストールして、Mountain Lionに更新し、x11とxcodeをインストールしました。なぜこれが起こるのか提案はありますか?
エイリアスgk = 'gitk --all 2>/dev/null&'(私はMacを使用しています)
私はそれを〜/ .bash_loginファイルに持っています、そしてそれはそれを解決します:D
.bashrcファイルに入れることもできます
$ alias gitk='gitk 2>/dev/null'
ここでも同じ問題があります。これは、誰かがこの解決策に答えるまでの簡単なヒントです。
MacPortsユーザーの場合、tcl/tkを8.6.0にアップグレードします。
$ Sudo port install tcl tk
新しいバージョンのtcl-tkでgitkを実行すると、この問題が解決するようです(Mac OS X 10.8.4でテスト済み)。 Homebrewをインストールしている場合は、以下が機能するはずです。
brew install tcl-tk
_alias gitk='"$(brew --prefix tcl-tk)/bin/wish" "$(which gitk)"'
ターミナルを再起動すると、「CFURLCopyResourcePropertyForKey」エラーが発生することなく、通常どおりgitkを実行できるようになります。
私はちょうど今このエラーを受け取り、それを解決するための解決策を見つけました。
プロジェクトで関数getResourceValue:forKey:error:を呼び出そうとしましたが、OSのバージョンは10.7.5です。
+ URLWithString:を使用して新しいNSURLオブジェクトを初期化しましたが、以前に問題が発生しましたが、+ fileURLWithPath:に置き換えた後、問題はありません。
機能の異なる2つのオブジェクトの差の値は/ Volumes/Data/a file:// localhost/Volumes/Data/a /です。
Appleは、以下のNSURLクラスについて次のように述べています。
オブジェクト作成の失敗の処理渡されるパスが整形式でない場合、NSURLクラスは新しいNSURLオブジェクトの作成に失敗します。パスはRFC2396に準拠している必要があります。成功しないケースの例は、スペース文字と高ビット文字を含む文字列です。 NSURLオブジェクトの作成が失敗した場合、作成メソッドはnilを返します。これは、処理する準備が必要です。ファイルシステムパスを使用してNSURLオブジェクトを作成する場合は、fileURLWithPath:またはinitFileURLWithPath:を使用する必要があります。これらは、URLパスとファイルシステムパスの微妙な違いを処理します。不正な形式のパス文字列を許容したい場合は、CoreFoundationフレームワークが提供する関数を使用して文字列をクリーンアップする必要があります。
Mountain Lion 10.8.2で、tclとtkのインストール/アップグレードに関するこの問題を修正しました–前述のとおり。
brew install tcl
brew install tk
GitkのUIは変更される可能性がありますが、〜/ .gitkで微調整できます。
このブログ投稿は、これに関する私の問題を解決しました:
http://blog.jasonsemko.com/post/51668282398/easy-fix-for-cfurlcopyresourcepropertyforkey-failed
その長短はgitk
がXcodeに付属しているgitのバージョン文字列を正しく解析しておらず、余分な詳細を調べています。
したがって、修正するには、クリーンなバージョン番号でgitをインストールできます。
brew install git
PATH
で検索されるディレクトリの順序を変更して、brewのバージョンのgitが呼び出されるようにする必要がある場合があります(たとえば、/usr/bin/local
の前に/usr/bin
をロードする必要がありました)。または、brewによってインストールされた絶対パスにgitをエイリアスすることもできます。