如何用JGit检出某个文件夹
How to checkout a certain folder with JGit
FetchResult fr = git.fetch().setCredentialsProvider(credentials).setCheckFetchedObjects(true).Call();
git.checkout().setCreateBranch(true).setName("origin/" + branchName).setStartPoint("origin/" + branchName + "path/to/folder").call()
这是我用来从远程存储库中检出单个文件夹的代码。
等效的 git 命令是:
git fetch origin
git checkout origin/branch -- path/to/folder
但是,Java 代码对我不起作用,我只能初始化本地存储库并配置远程存储库。结帐没有用,我无法找出我犯了什么错误。
尝试像这样在结帐部分进行更改
"origin/"
试一试。
不然你要做的就是一个sparse checkout
How do I implement sparse checkout in JGit?
为了使用 JGit 检出特定文件夹(稀疏检出),您需要告诉 CheckoutCommand
要检出哪个文件夹。
例如:
git.checkout().setName( "branch-to-check-out" ).addPath( "path/to/folder" ).call();
可以多次调用 addPath()
来检查每个给定的路径。该路径是相对于工作目录解释的。
FetchResult fr = git.fetch().setCredentialsProvider(credentials).setCheckFetchedObjects(true).Call();
git.checkout().setCreateBranch(true).setName("origin/" + branchName).setStartPoint("origin/" + branchName + "path/to/folder").call()
这是我用来从远程存储库中检出单个文件夹的代码。 等效的 git 命令是:
git fetch origin
git checkout origin/branch -- path/to/folder
但是,Java 代码对我不起作用,我只能初始化本地存储库并配置远程存储库。结帐没有用,我无法找出我犯了什么错误。
尝试像这样在结帐部分进行更改
"origin/"
试一试。
不然你要做的就是一个sparse checkout
How do I implement sparse checkout in JGit?
为了使用 JGit 检出特定文件夹(稀疏检出),您需要告诉 CheckoutCommand
要检出哪个文件夹。
例如:
git.checkout().setName( "branch-to-check-out" ).addPath( "path/to/folder" ).call();
可以多次调用 addPath()
来检查每个给定的路径。该路径是相对于工作目录解释的。