问题标签 [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.
git - 使用 LibGit2Sharp 截断 GIT 提交历史
我计划以非正统的方式使用 LibGit2/LibGit2Sharp 和 GIT,我要求任何熟悉 API 的人确认我的建议在理论上可行。:)
设想
只有主分支将存在于存储库中。将跟踪和提交大量包含大型二进制和非二进制文件的目录。大多数二进制文件将在提交之间更改。由于磁盘空间限制,存储库应包含不超过 10 个提交(磁盘现在经常被填满)。
API 没有提供一个函数,该函数将从指定的 CommitId 开始截断提交历史记录到主分支的初始提交,并删除任何因此而悬空的 GIT 对象。
我已经使用 ReferenceCollection.RewiteHistory 方法进行了测试,我可以使用它从提交中删除父母。这为我创建了一个新的提交历史,从 CommitId 开始回到 HEAD。但这仍然会留下所有旧提交以及这些提交所独有的任何引用或 blob。我现在的计划是自己简单地清理这些悬空的 GIT 对象。有没有人看到这种方法有任何问题或有更好的方法?
libgit2sharp - libgit2sharp:如何使用相同的键设置多个值
如何为配置键设置多个值?某些部分支持多个值:
像这样的东西在 gitLib2Sharp 中不起作用:
libgit2 - libgit2 是自动打包仓库吗
我在 LibGit2 中没有看到垃圾收集命令,所以我想知道它当前是否自动将文件打包到本地存储库中。
libgit2sharp - 如何使用 LibGit2Sharp 删除遥控器?
我检查了 libgit2sharp v0.15.0,似乎没有删除遥控器的方法。
有什么办法吗?
libgit2 - 一个 sha 值表示 git 存储库的状态
当前状态下 git 存储库的状态有一个 sha 值表示吗?
如果 git 具有此 sha 值,则每次对象数据库更新和引用更改时要更新的 sha 值。
换句话说,sha 值代表整个存储库的当前版本。
这是我计算当前引用的 sha 的代码。有 git 级别的 API 或接口吗?
libgit2 - 如何在 gitattributes 中应用语言的差异规则
例如,.gitattributes
文件lg2s
有*.cs diff=csharp
. 代码的输出
是(不久)
但输出git bash
是(很快)
第二行不一样。
看起来有一个深入的讨论Add .gitattributes support
libgit2/#508,但是 PR Add APIs for git attributes
libgit2/#516是否合并?
现在支持多少种语言?
我们可以在没有gitattributes
文件的情况下指定规则吗?
c# - C# 如何使用 libgit2Sharp 读取提交时间
我正在尝试使用 libgit2Sharp 列出存储库中的所有提交、它们的作者和提交日期,但提交对象没有创建提交的日期/时间的属性。
我没有找到 libgit2sharp 项目的任何文档,在官方页面上它说:
简单地说:我们目前缺乏适当的文档。对此主题的任何帮助将不胜感激;-)
如何访问提交的时间?
c# - 如何使用 lib2git 和 C# 正确结帐
更新2:[更新1在帖子的末尾)
我终于设法结帐了,这是个好消息;)。
坏消息是:一次提交需要 2 分 36 秒。如果我是这个程序的用户,我不会等那么久......
与往常一样,“git”是存储库的一个实例,包含存储库......接下来我的结帐电话:
如果您需要完整的源代码(99% 未注释),请询问,我会将当前版本放到网上....感谢您的回答 :)
你的,
弗洛里安·赖辛格
原帖:
标题说明了一切 ;) 什么是有效的:我有一个Commit[] 步骤,其中充满了来自 repo 的提交我想在 "i" git == Lib2Git Repo 位置签出提交
由于什么都没发生,我停止了程序。我确实输出了提交的数量,从 30 下降到 1....我真的需要帮助...
PS:我知道有过载
最后一件事是代表。所以我猜这个问题可以描述为“如何使用委托,虽然我不确定,但这将有助于解决从 30 次提交到 1 次提交的问题......
编辑:
更长的源代码。我想使用 C# 和 libgit 实现 bisect GUI.... 代码 1) 获取 Commit[] 步骤
用同样的方法,然后是 Bisect 的东西。我用 Commit 和一个表示特定值的 int 创建了一个 BisectStep 类......
最后但并非最不重要的 doStep 方法
“GBS”是一个带有 3 个按钮(好、坏、跳过)的 Win-Form
希望这个编辑只是一点点帮助;)
libgit2sharp - 如何确定捕获的 LibGit2SharpException 是 HTTP 401 错误?
当我尝试使用无效凭据获取更改( RepositoryExtensions.Fetch )时, LibGit2Sharp会抛出LibGit2SharpException并显示以下消息:
由于可能存在其他错误,有没有办法在不解析消息的情况下确定异常实际上是 HTTP 401 错误?
git - 为什么我在提交文件时收到 Libgit2 的错误“NoMemory”?
我正在使用 Visual Studio Online 和使用 Visual Studio 2013 作为客户端的 Git。
我正在尝试将文件添加到我的存储库中,当我提交它们时,我在团队资源管理器窗口中收到以下错误:
有没有人见过这个?