1

いくつかの機能を追加したいバンドルがいくつかあります。SVN 経由でバンドルを更新すると、追加/更新は置き換えられますか?

4

3 に答える 3

2

バンドルの更新中にカスタム編集されたバージョンを意図せずに上書きしないようにするためのばかではない方法は次のとおりです。

  1. 既存のバンドルを編集する代わりに、新しいバンドルを作成し (バンドル エディタの左下隅にある [+] ドロップダウンをクリックし、[新しいバンドル] をクリックします)、一意の (ただしわかりやすい) 名前を付けます。

  2. 次に、変更したいスニペット、マクロ、コマンドなどを元のバンドルからコピーして、バンドル エディターの新しいスニペット/マクロ/コマンド ウィンドウに貼り付け、編集を開始します。

  3. この方法で作成したバンドルに、イニシャルで始まり、その後に変更したバンドルの名前が続く名前を付けたい場合があります (例: 'DY-python')。

  4. ただし、上書きされないようにするために依存するのは一意の名前ではありません。実際、TextMate は、名前がリポジトリ内のどのバンドルの名前とも一致しないという事実によってこれらを認識します。そのため、舞台裏で、TM はそれらを他のバンドルとは異なる場所 (例: ~/Users/dougmbp) に保存します。 /Library/Application\ Support/TextMate/Bundles (ユーザーが変更したもの)、リポジトリから更新された TM バンドルのデフォルトの場所は /Applications/TextMate/Contents/SharedSupport/Bundles/ です。

  5. これら 2 種類のバンドルの動作には、ユーザーが認識できる違いはまったくありません。従来のバンドルと同様に、アクセス、編集、および呼び出しが行われます。このようにして、あなたの変更は、バンドルの更新、TM バージョンの更新、および悪いこと (バックアップ場所のリストに上記のパスを追加することを確認してください) に耐えます。

于 2009-12-10T06:17:42.257 に答える
2

通常、グローバル/Library/Application Support/TextMate/Bundlesディレクトリでバンドルのリポジトリをチェックアウトする必要があります。その後、変更を加えた場合、変更は に保存され~/Library/Application Support/TextMate/Bundles、(a) 変更を元に戻すか、(b) 競合することなくバンドルを更新することが簡単にできます。

正直なところ、~/Library/Application Support/TextMate/Bundles代わりにバンドルをチェックアウトするとどうなるか忘れてしまいました。独自の変更がバンドル自体と混ざり、更新時に競合が発生する可能性があると思います。

于 2009-12-09T19:35:28.277 に答える
1

いいえ、追加が SVN で行われた変更と競合する場合は、2 つのバージョンを比較および編集して、それらの競合を解決する必要があります。

于 2009-12-09T19:36:25.323 に答える