SVN.PushMergeInfoを使用したGIT-SVN:自己参照のMergeInfo行を回避する方法

StackOverflow https://stackoverflow.com//questions/9700998

  •  13-12-2019
  •  | 
  •  

質問

最近のバージョンのgitでは、設定svn.pushmergeinfoが導入されました:

config key:svn.pushmergeinfo

このオプションにより、GIT-SVNは可能な限りSVNリポジトリのSVN:MergeInfoプロパティを自動的に入力しようとします。現在、これは、すべての親が最初の両親がすでにSVNにプッシュされていることがすでにプッシュされていることを早送りしていないマージをDCommittingする場合にのみ実行できます。

これを使用して、開発者がSVNを使用し、git-svnを使用する混合環境を使用しています。これは、SVNブランチをGITで分岐してマージしてからSVNに戻ってSVNに戻り、実際にMergeInfoプロパティをほとんどすべての場合に正しく入力するときに機能します。ただし、特定の状況では誤っています。

これは主に、トランクをその分岐にマージした後(効果的にSVN再統合に相当する)、マスター(トランク)に分岐をマージするときに起こります。

ブランチからブランチへのマージは、(必要に応じて)その分岐上のトランクのMergeInfo行を追加しますが、BranchからTrunkのMergeInfoに戻るトランクコピーからトランクコピーにマージされ、効果的に自己参照回線を作成します。トランクのMergeInfoプロパティ自身を指す。私がこの自己資源が起こらないことを知っている限り、SVNだけを使用するときは起こりません。だから、私はこれをgit-svnのバグ(私が報告しましたここで)) 。これにより、他のSVNユーザーに影響を与え、将来のコミットでMergeInfoが破損した道路の下に問題が発生します。

私が探しているものは回避策です:マージされているブランチのMergeInfo行をコピーしないようにGitを簡単に言うことができます。コミット時の参照(または自己参照ングマージインポートラインにつかわない、その他のSVNの他の品質を保持する他のソリューション:GITからのMergeInfo作成)。

(明確化のために、私はgit manualを引用すること、またはGIT-SVNとのマージは危険であり、サポートされていないことを教えてくれます。問題を助けるか、代替ワークフローを提案します。関連するGITコードへのポインタは、これを解決するためのパッチを作成できるようにする可能性があるために役立ちます。ありがとう!)

役に立ちましたか?

解決

アップデートだけです。 パッチを作成したように見えます。

http://lists-archives.com/git/765571-git-svn-dcommit-avoid-self-referential-mergeInfo-lines-svn-pushmergeinfo-is-configured.html

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top