0
我沒有得到使用sharpsvn的合併方法合併2個修訂版時觸發的衝突事件。我嘗試使用SvnMergeArgs和SvnUpdateArgs中的衝突事件。我調用了合併方法,接着是sharpsvn的更新方法。合併只是用舊版本覆蓋工作副本,更新不會觸發事件。合併不發射衝突事件
我在這裏錯過了衝突沒有被解僱。以下是我的代碼。
private static void MergingBranchedScript()
{
using (SvnClient client = new SvnClient())
{
client.Merge(@"path\abc.sql",
new Uri("file:///path/Trunk/Script/abc.sql"),
new SvnRevisionRange(4,7), new SvnMergeArgs());
SvnUpdateArgs args = new SvnUpdateArgs();
SvnUpdateResult result;
client.Update(@"path\Script", args, out result);
args.Conflict += new EventHandler<SvnConflictEventArgs>(args_Conflict);
}
}
public static void args_Conflict(object sender, SvnConflictEventArgs e)
{
//implementation
}
直到Subversion 1.8,衝突處理程序不會被調用各種衝突。我們發現了一些並未要求樹木衝突的情況。從1.8開始,應該要求所有衝突,但在某些情況下要晚於1.7,因爲我們試圖在致電衝突處理程序之前完成儘可能多的工作。 – 2013-12-15 23:53:07