2012-06-22 43 views
5

私はSalesforceの中規模Web開発の仕事を始めています。私は、導入プロセスに関するいくつかのフィードバック/洞察を求めています。今は、視覚的な力と頂点を使ってかなりの量のカスタム作業をするように見えます。私が生産組織(データまたはメタデータ)に何かをねじ込むと、まだ機能しているスナップショットまたは以前リリースされたバージョンのものにロールバックする方法があるのでしょうか?平凡な開発ツールでは、バグが発生したときに私が状況に対処する良い速い方法を持っていないことを心配しています。Salesforceでの変更のロールバック

私はここでソース制御を設定するさまざまな方法について読んでいた: How can multiple developers efficiently work on one force.com application?

しかし、私は基本的に設定の変更を元に戻すか、枝を変更するプロセスを歩いて誰にも発見していません。セールスフォースに組み込まれている保護機能は十分で、プロダクションのバグを心配する必要はありませんか?私は変更セットを元に戻すことを心配する必要はありませんか?

+0

誰かがスナップショットというアプリで私を指摘しました。誰もそれを使いましたか? http://www.dreamfactory.com/appexchange –

+0

私たちは数年前に彼らの製品をデモしました、そしてそれはとても良かったです。私たちはEclipse(Force.com IDE)を使用して終了しましたが、本当に満足していません。サンドボックス環境は、どんなツールでも使用する必要があります。 – Hraefn

答えて

2

私はそれは私が欲しいものを私に与えるように、少なくとも見えるアプリ交換でアプリを研究してきました。製品はSnapshot by Dreamfactoryです。興味深いことに、私がDreamfactoryで話したセールスマンは、salesforceが内部的に自分のアプリを使って変更を管理していると言いました。この機能は私のライセンスには含まれていませんが、残念ながら私の特定の質問に役立つ具体的な内容は次のとおりです。

組織のスナップショットを取る機能他の組織にコピーまたは展開することができます。これにより、変更を展開/ロールバックすることができます。

(異なる組織からの)2つの異なるスナップショットを比較し、何が変更されたかの詳細を表示する機能。これにより、問題が発生したときに問題の原因を突き止めるのに役立ちます。

5

これを処理する方法の1つは、プロダクションオーガニゼーションに関連付けられたサンドボックス組織を適切に使用することです。他のサンドボックス組織を使用して本番環境への展開を目的とした大規模な開発を行う際に、すべての「祝福された」インスタンスを持つサンドボックス組織を常に維持することができます。開発用サンドボックスの新しい開発とプロダクションの間に深刻な問題が発生した場合は、あなたの恵まれたサンドボックスからロールフォワードして以前に完全に機能していたものに戻すことができます。

これは、生産上のバグを心配しないように頼んでいるということです。それが起こるわけではないので、彼らはそうするのではなく、あなたがすぐに何が壊れた手段のために異なった感覚を得るようになるでしょう。変更セットは、ある組織から別の組織に変更を加えるための1つの方法であり、プラットフォーム上での最近の開発です。カスタム設定データを移動しないなど、いくつかの制限がありますが、一般的にはうまく機能します。

しかし、単体テストがうまくいけば、残りのすべての参照整合性チェックと相まって、「ビルドを中断する」ことが一般的ではありません。別の時点のすべてのグローバルスナップショットに戻します。私の経験では、隔離されたユニットを元のバージョンに戻すことが頻繁にあり、修正が見つかるまで前のバージョンを前方に押すことで、サンドボックスやソース管理でこれを行うことができます。

アダム

+2

Adamの回答に、開発者用サンドボックスの1つを本番バックアップとして使用することもできます。大規模な展開の前にバックを開始するだけで、構成全体のコピーが作成されます。その後、その環境からプロダクションに再デプロイすることができます。 –

+0

正確です。それは実際に私がすべての祝福されたインスタンスを持つサンドボックス組織を持つことによって意味されたものです。しかし、それを生産バックアップと呼ぶのはこの目的のためにはっきりしていますが、生産バックアップをサンドボックスに入れるという知恵には疑問があります。 – Adam

+0

あなたは、祝福されたサンドボックスやバージョンコントロールからどのように前進していくかをもう少し詳しく説明してくれますか?メタデータのapi/antスクリプトを使用しますか?新しいカスタムオブジェクトやフィールドを削除できるようにする必要があるようです。私はあなたがチェンジセットで物事を削除することはできないことを知っています。メタデータAPIを使用してそれを行うことはできますか? –

関連する問題