2009-07-16 6 views
1

私のメインサイトはInvision Power Boardの上に構築されています。バージョン3がリリースされたばかりで、私はきれいなコードベースから始めてすべての変更を作り直したいと思いますが、問題はInvisionが新しいバージョンをリリースしたときに修正を追跡して再適用できるようにすることですする。この新しいバージョンはsvnに保存されますが、私はまだ効率的に新しいバージョンに更新するのに苦労します。サードパーティアプリケーションへのコード変更を効果的に管理する方法

ありがとうございます。

答えて

2

私はまだこれを試していないが、私はこのようなプロセスはうまくいくかもしれないと想像:

  1. は、IPBの最新バージョンをダウンロードして、「IPB-純粋な」というフォルダに入れて。ここにGitリポジトリまたはMercurialリポジトリを作成し、すべてをコミットします。

    • このリポジトリを他の場所で複製し、「ipb-custom」と呼んでください。ここですべてのカスタマイズを行い、それらをコミットします。カスタマイズを「ipb-pure」に戻さないでください。

    • 新しいバージョンのIPB(公式リリース)は、 'ipb-pure'リポジトリにコミットできます。 Git/Mercurialを使ってこれらの変更を 'ipb-custom'に引き込み、ヘッドをマージします。運が良ければ、git/hgはすべてを自動的にマージします。

+0

これは本当に良い提案だと思います。私は美しく動作すると思います。 SVNとは対照的に、GitやMecurialをバージョン管理することについて特に興味があります。私は個人的にはGitが好きですが、この種のものを扱う方が良いかどうかは分かりませんでした。 – Christian

+1

私はGoogleのリーナス・トーバルズの話から得た印象はSVNは、手作業のヒープを必要とし、一方、Gitリポジトリ(とMercurialが)、自動的に枝をマージすることができるということです。私はこれが本当か、それとも私が書いた答えに当てはまるかを知るのに十分なほどSVNを使いません。 –

+1

全く同じ方法を使用しますが、PERFORCEを使用します。魅力のように動作します。 よろしく、 Sebastiaan –

1

したい場合にも、SVNでこれを行うことができます。 'vendor branches' in the svn book [svnbook.red-bean.com]

+0

素晴らしいです。私はGitかsvnが自分のコードをより良くマージするかどうかを試しています。 – Christian

+1

私はマージ機能についてあまり心配しないでしょう、これはほとんどの場合でも同じようにうまくいくでしょう(ただし、gitはやや良いと思われますが、特にリネーム/ムーブが含まれているようです)。この時点で、私がいうだけの理由で、より成熟したツール(TortoiseSVNの、VisualSVN、Subclipseは、...)の、ほとんどのプロジェクトでSubversionを使用しています。 IMHOを切り替える唯一の有効な理由は、gitの分散的な性質ですが、本当に必要ない場合は、svnがほとんど同じ仕事をします。 – jeroenh

関連する問題