问题标签 [jgit]

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 投票
1 回答
11650 浏览

eclipse - 如何使用 EGit 从头部替换最新版本的 Eclipse 项目?

我有一个 Eclipse 工作区,里面有一堆来自 git 的项目,我正在使用 egit 来管理项目。我通常会尝试失败的实验,并且我想将一个项目恢复到它在 git repo 的 HEAD 中的状态。

我如何用 EGit 做到这一点?

我试图右键单击导致 Eclipse 崩溃的项目 Replace With > Head Revision。我是从 svn 迁移的 git 的新手。是否有一个项目的 svn revert 等价物?

0 投票
1 回答
3524 浏览

git - 从 JGit 中的提交中获取已更改文件的列表

我试图通过提供提交 ID 来获取所有提交的文件。

上面的代码不起作用,有人可以找出这里出了什么问题或任何其他方法来让它工作吗?

0 投票
1 回答
779 浏览

android - 安卓上的 Jgit 克隆

我创建了测试 android 应用程序。在应用程序中,我使用 jgit 调用克隆操作,但出现错误:

但是在 agit 中,这个操作执行没有错误。我研究了 agit 的代码,但不明白为什么会这样。

告诉我,我做错了什么?

我的代码:

0 投票
1 回答
550 浏览

amazon-s3 - JGit S3 仅支持标准美国存储桶吗?

除了美国标准之外的其他位置是否可以使用 JGit 的 S3 存储桶(即通过配置文件等)或者我在这里做错了什么?

如果我尝试使用位于欧盟的 JGit 的 S3 存储桶,jgit 会抛出错误

但是当我尝试使用位于美国标准中的存储桶时,一切正常。

0 投票
1 回答
1138 浏览

git - 我如何用 jgit 做相当于“git remote update”的操作?

我正在管理使用 --mirror 克隆的 git repos,我需要git remote update使用 JGit 进行操作。

我是使用 FetchCommand,还是有其他命令?

a 的等效 FetchCommand 是git remote update什么?

0 投票
4 回答
2370 浏览

git - 是否应该在 gerrit 管理的 git 存储库上定期运行“git gc”?

定期运行 cgit 会造成任何伤害(因为 gerrit 使用 JGit 操作 repo)?JGit 会自动执行这个功能吗?

0 投票
1 回答
633 浏览

java - 从索引中找出文件的 SHA1

短篇故事:

就像标题所说,如何使用 JGit 从签出文件的索引中获取 SHA1 或哈希?

很长的故事:

我正在编写一个 GUI 应用程序并使用 JGit 来修改一个文件。因此,用户可以打开一个窗口,该窗口在一个漂亮的表格中包含该文件的所有修订。

用户可以进行更改并提交。此外,用户可以及时返回并从表中选择较旧的版本进行处理。

这个工作流程非常简单。我在内部对 JGit 所做的是我只使用一个分支(主分支)。HEAD 总是指向这个分支,这个分支的尖端总是最新的提交。当用户选择较旧的修订版时,我只需实例化CheckoutCommand类,使用设置文件路径addPath()并使用分支master使用setName().

以上导致 HEAD 指向 master 分支,而 master 分支又指向最新版本(不是用户选择的版本)。但是索引和工作目录本身现在处于用户选择的修订版中。

所以,最后,我希望能够向用户展示表中的哪些修订当前已签出或激活,或者您想要调用的任何内容。此修订将在下面的屏幕截图中突出显示。但我不能为此目的使用主分支的尖端。我需要以某种方式从索引中获取 SHA1。

发布了一个问题,这正是我想要的,但在 JGit 的上下文中(问题的作者使用 git)。

代表版本的表格

编辑:经过多一点分析后,我发现我可以使用 JGitDirCache来访问索引的内容。因此,使用DirCache类我可以在索引中获取文件的 SHA1,就像在这个问题中一样。但是现在我看到这个散列与我签出的修订散列不同。意思是,我不能使用这种方法来确定表中的哪个修订被签出。

那么,有没有其他方法可以使用我描述的工作流程来确定用户选择进行哪些修订?甚至,也许有人可以提出不同的方法。

我目前解决这个问题的方法是使用 JGit AddNoteCommand。当用户签出修订版时,我将简单地在此修订版中添加一个带有一些“键:值”的注释。该键将指示修订是否已签出。有人有更好的建议吗?

0 投票
3 回答
1397 浏览

java - 使用 JGit 提交字符串

一个 JGit 初学者问题:

我使用 JGit 从存储库中读取文件 (BLOB) 并操作其内容。之后,我想将具有相同文件名的新内容作为新提交写回存储库。但是如何使用 JGit 提交新内容呢?

我的伪代码:

我是否必须将其写入文件并使用AddCommandCommitCommandnewContent提交该文件?或者我可以将字符串“on-the-fly”以相同的文件名写入存储库吗?

网络上是否有任何使用 JGit 提交的示例?

0 投票
2 回答
4460 浏览

remote-access - JGit:连接到远程存储库

我搜索了谷歌、论坛和 JGit 用户指南,但找不到如何使用 API 连接到远程存储库。任何人都有一个例子或只是一个关于如何做到这一点的想法?

谢谢你的帮助。

0 投票
3 回答
4255 浏览

git - JGit:遍历 repos 时如何获取分支

缺少的 JGit 文档似乎没有说明如何在使用 RevWalk 时使用/检测分支。

这个问题说的差不多。

所以我的问题是:如何从 RevCommit 中获取分支名称/ID?或者我如何事先指定要遍历的分支?