文档介绍:JGit新手指南-编稈开发技术JGit新手指南木文由ImportNew-hunter翻译自javacodegeeks0欢迎加入翻译小组。转载请见文末要求。如果你想知道像?gitinit,?gitcheckout?等等的基本Git命令是如何在JGit上运行的话,请往下看。本教程提供了最常用的git命令以及它们在JGit上对应部分的概述。本教程将依次介绍:创建一个存储库,从远程获取内容,向历史版本屮添加和删除文件,检查历史操作,并最终将更改的文件推回到原始存储库。JGit提供了一个类似于Git高级命令的APT,niit().setMessage("mit?,).call();mit-m"mit所有的?JGit命令?有一个cal1()方法,在命令被建立之后用來实际执行它。这些类的命名是在各自的Git命令后加上后缀命令。虽然有些命令提供一个公共构造函数,还是建议使用Git的工厂类来创建命令,如在上面的示例屮所示。获取库但是在更深入到JGitAPT之前,让我们先得到库。。但是如果你更喜欢OSGi捆绑,也有P2仓库供你使用。下载页面?上列出了整合该库的必要信息。对于本文所涉及的范围来说,整合在?project/.Eclipse,jgit核心库已经足够了°如果你对其他JGit的源代码库感兴趣,我推荐阅读JGit资源介绍创建一个仓库首先,我们需要一•个仓库。为了得到一个仓库,我们可以初始化i个新的存储库或克隆一个现有的。我们可以用Tnit命令创建一个新的仓库。下面的语句Gitgit二Git<init().setDirectory(u/path/to/repo”).cal1();将在setDirectoryO下设置的路径屮创建一个带工作H录的仓库。・gitH录将会直接在?/path/to/repo/.git路径下而。对Init命令的详细解释请参阅文章在JGit中初始化git仓库。().setURT("https:///eclipse/").setDirectory("/path/to/repo")call();现有的仓库可以用Clone命令克隆Gitgit=().setURI("").setDirectory("/path/to/repo")call();上面的代码将克隆远程JGit仓库到本地H录的路径^repath/to/po,下c所有Clone命令的选项在?如何在JGit中克隆Git仓库中进行了更加详细的解释。结束吋关闭Git注意那些会返回实例的命令例如Init命令或者Clone命令当不再需要时如果没有明确地关闭()的话,可能会造成文件句柄泄露。幸运的是,Git实现了Autocloseable以便你可以使用try-with-resources声明。填充仓库现在我们有仓库了,我们可以填充它的历史了。但为了提交文件首先需要将它添加到所谓的索引(又名临吋区)。mit命令考虑。因此JGit命令就是(你猜一下)Add命令。DirCacheindex=().addFile卩&tteTn(''"