Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
libgit2sharp在分支之间获取不同的文件,忽略合并将处理的内容_Git_Libgit2sharp - Fatal编程技术网

libgit2sharp在分支之间获取不同的文件,忽略合并将处理的内容

libgit2sharp在分支之间获取不同的文件,忽略合并将处理的内容,git,libgit2sharp,Git,Libgit2sharp,我使用的是TFS工具,当执行拉请求时,它会告诉您需要合并的文件和差异。 对于Libgit2sharp(我认为),我也在使用以下命令: string mergeIntoReleaseBranch = "Release_XYZ"; string branchToBeMerged = "MyFeature1"; TreeChanges treeChanges = repository.Diff.Compare<TreeChanges>(repository.Branches[mergeIn

我使用的是TFS工具,当执行拉请求时,它会告诉您需要合并的文件和差异。 对于Libgit2sharp(我认为),我也在使用以下命令:

string mergeIntoReleaseBranch = "Release_XYZ";
string branchToBeMerged = "MyFeature1";
TreeChanges treeChanges = repository.Diff.Compare<TreeChanges>(repository.Branches[mergeIntoReleaseBranch].Tip.Tree, repository.Branches[branchToBeMerged].Tip.Tree);
string mergentoreleasebranch=“Release_XYZ”;
字符串branchToBeMerged=“MyFeature1”;
TreeChanges TreeChanges=repository.Diff.Compare(repository.branchs[mergeintorebasebranch].Tip.Tree,repository.branch[branchToBeMerged].Tip.Tree);
然而,我有时看到libgit2sharp返回的差异比TFS多得多。TFS正在删除将自动合并的项。我可以通过将发布分支合并到我的功能(
git checkout MyFeature1;git merge release\u XYZ;git push
)中,然后重新运行libgit2sharp代码来删除这些额外的项


在给定两个分支的情况下,如何获得需要合并的文件列表;删除将自动合并的项目。(这需要了解TFS在幕后是如何做的吗?

这似乎相关,我可以在某种程度上阐明这个问题。。TFS显示了可能的代码(左侧)和最新代码之间的差异?该分支的校验和不可用的分支(右侧合并到)。您可以通过多种方式获得它,但我发现的是这样做的
git-config--add remote.origin.fetch+refs/pull/*/merge:refs/remotes/origin/pr/*
然后
git-fetch
然后
git-checkout-pr/
从日志
git-log获取校验和。现在diff
git diff