我正在尝试将更改从远程分支合并到本地存储库,但是我无法使其正常工作 - 可能是对实现的误解。提取似乎工作正常,因为我可以看到服务器上的更新,但我认为当尝试拉动时,我正在破坏。
我试过了:
repo.Checkout( branch.TrackedBranch, CheckoutOptions.None, OnCheckoutProgress );
这似乎可以满足您对Clone调用的期望。我也找不到合并的方法。正如我所读到的,git pull
就像调用fetch,然后是合并一样。
我看过回购中的一些测试,例如MergeFixture,但它似乎并不是我希望的那样。
答案 0 :(得分:9)
截至2014年4月更新
LibGit2Sharp中添加了Pull
的便捷方法。
repo.Network.Pull(signature, pullOptions);
您可以在test fixtures中找到更多基本用法。
答案 1 :(得分:6)
Pull
确实是Fetch
和Merge
的组合。
Fetch
已准备就绪Merge
正在进行中(如@EdwardThomson所述)我看过回购中的一些测试,例如MergeFixture,但它似乎并不是我希望的那样。
由于完整的合并过程尚不可用,所以还没有很多测试。但是,MergeFixture.cs
包含合并
CommitFixture.cs
中还有其他相关位
Libgit2还包含一些 lower level bits 来处理用户已解决的冲突。
合并功能现已在LibGit2Sharp中提供(请参阅 pull request #608 )