【发布时间】:2014-04-23 11:23:42
【问题描述】:
我在将提交过程与 LibGit2Sharp 同步时遇到问题。 我有一个例程可以更改一个文件并将其提交到 Git 中。该例程可能会快速连续出现。还有一个问题,当最后一次提交正在运行时,下一个提交例程正在运行并因 EmptyCommitException 而崩溃。
这是一个简单的例子:
for (int i = 0; i < 100; i++)
{
using (StreamWriter sw = new StreamWriter(@"...\Test3.txt", false))
{
sw.WriteLine(Guid.NewGuid().ToString());
}
repo2.Index.Stage(@"...\Test3.txt");
repo2.Commit("new"); //2nd call crashes with EmptyCommitException
}
有没有办法等待完成最后一次提交?
我试过用这个:
while (repo2.Info.CurrentOperation != CurrentOperation.None)
{ }
但第一次它不起作用,第二次主动等待不是最好的策略
【问题讨论】:
-
Commit方法返回什么? -
该函数调用 Git 中的 Commit-Function,如果有效则返回新的 Commit。对不起,我忘了写我使用 LibGit2Sharp-Library :-(
标签: c# .net git libgit2sharp