0

私は (ややぎこちなく) TFS を使用して OS X 上の iOS プロジェクトのソース管理を行っていますが、チェックインする前に新しいファイル (新しいグラフィック アセットなど) をワークスペースに追加するのを常に忘れていることに気付きました。一般的ですが、まだソース管理に追加されていないファイルの UI はありません (私が見つけたものです)。

フォルダー階層を手動で検索せずに、新しいファイルを見つけて追加するにはどうすればよいですか?

4

2 に答える 2

1

tfユーティリティ (TEE の CLI 部分)を使用して、このワンライナーを考え出しました。

find . -perm +0222 -and -type f -and -not -iname .DS_Store -print0 | xargs -0t -L 1 tf add

既に追加およびチェックアウトされている (またはロック解除されている) ファイルは、無害な例外をスローしますが、新しいファイルは関連するワークスペースに追加されます。ディスク上のローカル ワークスペースのルートで実行します。

(注:書かれているように、これにはクレデンシャルをキャッシュする必要があります。自分で追加するか、次を追加してキャッシュします:

export TF_AUTO_SAVE_CREDENTIALS=yes

... *sh~/.profileファイルに。次に、いくつかのミューテーション操作 [チェックアウトなど] を実行し、信用情報を提供します。TFS はそれらをローカルにキャッシュします。)


エクストラ:

特にiOSプロジェクトのユーザーデータを無視したい場合(xcuserdataファイル内のすべて。ロックを解除して常にチェックアウトするのは非常に面倒です)、次を使用できます。

find . -name xcuserdata -prune -o -perm +0222 -and -type f -and -not -iname .DS_Store -print0 | xargs -0t -L 1 tf add

-pruneアクションは、名前がxcuserdata.

また、 TFS で正しくチェックアウトされなかったロック解除されたファイルに対して、これと同じスキャンを実行するようにadd置き換えることもできます。checkout同じ取引: 追加されたファイルと既にチェックアウトされたファイルは重要でない例外をスローしますが、こっそりロック解除されたファイルはチェックアウトされます。

于 2012-08-10T18:43:31.750 に答える
1

2012 より前のバージョンの TFS では、onlineコマンドを TEE コマンド ライン クライアントに使用するだけで、ローカル ファイルシステムの変更をスキャンして保留します。例えば:

tf online -adds

ローカル ファイル システムに追加されたが、TFS への追加として保留されていないファイルを検出します。

于 2012-08-10T20:32:10.513 に答える