User Defaults をコマンドラインオプションで指定する
はてブのcocoa新着経由で、Command Line Processing in Cocoa。コマンドで渡した引数がUser Defaultsに反映されるとのこと。コメントにあるように、AppleのドキュメントにもUser DefaultsのArgument Domainとして書いてある。
Xcode.app/Contents/MacOS/Xcode -IndexOnOpen NO
で、IndexOnOpenの値がNOになる。ユーザのplistなどで値が設定されていたときは、このプロセス内のみ一時的に上書きされる。
ユニットテストでDefaults使うときに悩んだことがあるけど、これを利用しテストの実行時に値を入れるのがよさそう。