列表存储在JGit中应用冲突

伊壁鸠鲁

我正在使用StashApplyCommand该类将隐藏的提交应用于工作树。如果发生冲突,call()此类方法将抛出StashApplyFailureException

但是,我找不到一种方法来检索冲突列表。与不同MergeCommandStashApplyCommand不会将列表作为call()方法返回值的一部分返回

是否完全有可能检索由JGit中的隐藏应用程序引起的冲突?

鲁迪格·赫尔曼(RüdigerHerrmann)

我遇到了同样的问题,无法找到一种方法StashApplyCommand告诉我哪些文件引起了冲突。

我当前使用的解决方法是使用aResolveMerger来查看是否可以应用隐藏。如果存在冲突的文件,则合并程序可以列出它们。

例如:

ObjectId headCommitId = // id of head commit
RevCommit stashCommit = // parsed stash (commit) to be applied
ObjectId stashHeadCommit = stashCommit.getParent( 0 );
ResolveMerger merger = ( ResolveMerger )MergeStrategy.RESOLVE.newMerger( repository, true );
merger.setWorkingTreeIterator( new FileTreeIterator( repository ) );
merger.setBase( stashHeadCommit );
if( !merger.merge( headCommitId, stashCommit ) ) {
  // look into merger.getFailingPaths() and merger.getUnmergedPaths()
}

请注意,上述代码段无法检测到索引冲突,因为在我的环境中,索引永远不会导致冲突。尽管应该可以扩展这种方法来检查索引是否存在冲突。IIRCstashCommit.getParent( 1 )指向隐匿的指数。

希望有一天解决方案过时,我提出了一项增强请求:https : //bugs.eclipse.org/bugs/show_bug.cgi?id=501475

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

应用Git冲突存储的最佳实践?

来自分类Dev

通过冲突从列表中删除

来自分类Dev

在IIS应用程序变量中存储字典或数组列表

来自分类Dev

在IIS应用程序变量中存储字典或数组列表

来自分类Dev

在共享首选项中的存储列表上应用 notifyDataSetChanged

来自分类Dev

如何反向应用带有冲突的存储?

来自分类Dev

如何反向应用带有冲突的存储?

来自分类Dev

JGit中的pull-rebase发生冲突时如何接受我的

来自分类Dev

使用JGit获取修订版中的文件列表

来自分类Dev

在 Mysql 中存储列表

来自分类Dev

Rails应用程序中的jQuery冲突

来自分类Dev

Coq中的列表构造函数冲突

来自分类Dev

unique_ptr列表中的访问冲突

来自分类Dev

Realm 如何解决列表中的冲突?

来自分类Dev

如何从Windows 8存储区中的列表中删除应用程序?

来自分类Dev

使用JGit创建新的本地存储库失败,“裸存储库中没有可用的树...”

来自分类Dev

如何在Play Framework 2应用程序中存储Akka演员列表?

来自分类Dev

从Python应用程序从Gerrit存储库中检索标签列表

来自分类Dev

如何在Play Framework 2应用程序中存储Akka演员列表?

来自分类Dev

将列表存储在本地存储中

来自分类Dev

在列表中存储int或str

来自分类Dev

在Firebase中存储ID列表

来自分类Dev

在Java中存储无序对的列表

来自分类Dev

存储类中的对象列表

来自分类Dev

类中的Python存储列表

来自分类Dev

在列表中存储多个词典并遍历列表

来自分类Dev

遍历R中的列表并存储列表

来自分类Dev

R:如何在列表中存储列表?

来自分类Dev

如何在不使用jgit签出的情况下在远程存储库中创建git分支

Related 相关文章

热门标签

归档