我目前正在设计一个应用程序,该应用程序使用GIT存储库作为一组属性文件的持久性单元,该应用程序将测试存储库中的属性文件的维护工作发布(推送)到生产存储库之前
该应用程序使用JGit与Git存储库集成。
这里的复杂之处在于,用户必须能够在将release
推送到生产环境之前从测试存储库中添加和删除提交,每个提交都映射到单个属性文件中的更改。所有未推送到远程生产存储库的提交都必须保留un-pushed
。
因此,请想象下一种情况:
测试仓库有4次提交
c1-c2-c3-c4
但是用户选择仅推送提交c1
和c4
。
推送后的预期生产提交应该为c1-c4
,但是没有推送到生产仓库的提交应该保留在测试仓库中。
我已经看过一些不同的本机GIT解决方案,但无法真正通过JGIT实现预期的输出,下面是我研究过的一些解决方案:
DROP
操作,EDIT
也无效我想我的问题是,有谁知道JGit支持的将实现预期功能的本地git操作吗?
我发现几乎没有关于JGit的文档,检查JGit api的最佳位置是查看these examples。如果还有更多我找不到的文档,我也希望获得一个链接。