问题标签 [libgit2sharp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2290 浏览

windows - 有没有人用 libgit2、libgit2sharp、Ngit 替换 msysgit 的 Windows?

嗨,我喜欢 Git,但与人和朋友共享 windows 项目似乎并不好玩,因为与 tortoisehg 或 tortoisesvn 相比,gitextensions tortoisegit 开箱即用很难(不是说它是 DVCS)。仅在 bash shell 中使用 msysgit 也不像 linux/Mac 一样好。

那么是否有任何新的竞争者(alpha 项目等(甚至与其他库))?

我很想看到这些新的 Git 库起飞!

0 投票
1 回答
439 浏览

git - 如何在 LibGit2Sharp 中获取有关 Stashes 的详细信息?

有什么方法可以获取存储列表及其名称(可能还有其他信息),然后查看哪些文件发生了变化和差异?

我正在使用 LibGit2Sharp

0 投票
1 回答
1873 浏览

c# - 使用 LibGit2Sharp 循环遍历 Git 存储库中的每个提交?

我尝试循环遍历new LibGit2Sharp.Repository(path).Commits,但它似乎只通过 master 中的提交(或者我猜 HEAD 指向哪里?)。

我将如何遍历存储库中的每个提交,无论它在哪个分支中,并按照提交发生时间(日期)的顺序遍历它们?

我这样做的目的是git log为了按日期顺序列出不考虑分支的提交。

如果我还可以循环遍历未引用的提交(即,如果您git reset远离某些提交并且这些提交不再被引用并且即将获得 gc'd),则可以加分。

想法?

0 投票
1 回答
1392 浏览

git - 如何找到具有特定父级的所有提交?

如何在存储库中找到具有特定父级的所有提交?

例如,如果我有一个 commit A,我想找到与A. 什么是最有效的,即在 LibGit2Sharp 中执行此操作的高效而正确的方法?

0 投票
1 回答
556 浏览

c# - 限制在 LibGit2Sharp 中查询的提交数量?

我正在做一个循环:

它工作正常,但有没有办法可以限制结果的数量?例如,我想获得最新的 100 个提交,而忘记旧的。

0 投票
2 回答
486 浏览

git - How to achieve `git rm --cached` and `git rm -f`with LibGit2Sharp?

1) I tried using repo.Index.Remove(item.Filename);, but it's giving me:

Additional information: Unable to remove file 'file.txt'. Its current status is 'Modified'.

I need to find a way to do git rm file.txt -f (i.e. force removal).

2) I need a way to do git rm file.txt --cached so that the file is only removed from the repository (staged for removal), but still keeping it in the filesystem. Is there a way to do this in LibGit2Sharp?

3) Is it OK to call repo.Index.Remove() if the given path has never been part of the repository (i.e. the file is untracked)?

0 投票
1 回答
390 浏览

c# - 提交到 Git 对象数据库有什么好处?

在这个libgit2sharp 问题中的评论讨论中,强调了我可以针对对象数据库创建提交?

什么是提交到对象数据库?

为什么比执行普通的 git add 和 git commit 更有优势?

我正在尝试将提交历史记录从另一个源代码控制系统 SourceGear 导入 Git。目前,我的逻辑只是遍历另一个源代码控制系统中的文件,获取某个版本及其提交信息,然后执行 a repo.Index.Stageand then repo.Commit。我假设这是正确的,我应该使用对象数据库吗?

0 投票
1 回答
159 浏览

c# - 如何在查询 refs 时排除 stash?

我正在尝试查询提交:

否则没关系,但它也会返回 stash。我怎样才能排除藏匿处?我知道,当我遍历结果时,我猜我可以忽略它们,但是我不会像我想要的那样拥有 100 个。

0 投票
2 回答
852 浏览

c# - 如何恢复提交?

我尝试查看 LibGit2Sharp 中的每个对象,但我无法找到恢复特定提交的方法。是否可以恢复 LibGit2Sharp 中的提交或尚未撤消?

我本来会期待类似的repo.Revert(commit.Sha),甚至可能是commit.Revert().

也许可以通过对更改进行差异来实现这一点,并手动创建一个 blob 并提交它?

0 投票
1 回答
161 浏览

c# - 比较磁盘上的文件和 Head 上的相应版本?

我将如何在磁盘上的文件和 HEAD 上的相应版本之间进行比较?

我试过了:

DiffTarget.Index仅区分索引和头部树之间的变化。这很好,但我还想要一种方法来检索工作副本和树之间的更改。这可能吗?

我怎么能将差异限制在某个文件上——而不是整个索引?