我正在使用 JavaHg 来构建自定义的 GUI 界面。我能够通过代码克隆如下:
BaseRepository repo = Repository.clone(new File(checkout_folder), url);
然而,这是一个 GUI 应用程序,它只会停止直到克隆完成。有什么方法可以执行此克隆命令,同时还允许 GUI 监视其进度?
我的直觉告诉我看一下 MercurialEclipse 插件,看看他们是如何在那里做的,但如果有人能提出一种方法,我会很高兴听到它。
问候,古尔塞
编辑:
感谢您提供两种观点的信息,一种是针对当前情况的现实,另一种是针对夜间骑手进度条的建议。
我最近选择了一种狡猾的解决方法,我现在似乎已经摆脱了。
由于我在 hgweb 服务器上托管我的 mercurial 项目,因此我尝试这样做:
- 在我的应用程序中触发结帐(好的,克隆!:))
- 我的应用程序通过 ssh 访问服务器,并在裸存储库上运行“du”命令,以便签出项目
- 因此,我的应用程序使用该裸存储库使用的返回的总磁盘空间作为对最终结帐应在本地工作文件夹上的总磁盘空间的估计
- 然后我的应用程序使用“du”命令每秒轮询一次本地工作文件夹,以查看结帐/克隆当前消耗的磁盘使用量
- 我使用这个 du 结果与来自服务器的 du 结果来显示我的进度条
它不是 100% 准确,但是哦,好吧,它似乎可以完成这项工作......