如何从Github导入特定项目

4

1
我已经编辑了我的答案,并加入了在Eclipse中的示例。 - VonC
1个回答

4
你可以查看 git sparse-checkout:该命令可用于检出 Git 存储库的部分内容。但这需要使用最新的 Git 2.26 版本。
我的意思是 Git-core,就像 Git SCM,而不是 Egit(不支持新的 sparse-checkout 命令)。
尽管该命令是新的且仍处于实验阶段,但在你的情况下应该很有用。
git clone --no-checkout /url/a/repo
cd repo
git sparse-checkout init --cone
git sparse-checkout set spring-boot-modules/spring-boot-crud

然后在Eclipse中打开相关项目。

在Git存储库中创建一个项目(.project,位于存储库的根文件夹中)

这将为您提供:

git clone -n https://github/git/git git2
cd git2
git sparse-checkout init
git sparse-checkout set Documentation

此时,您已经拥有仓库git/git,但是检出了文件夹Documentation(其他所有内容均不在工作树中)

# create an empty project in C:\path\to\git2 in Eclipse

Eclipse中的 Sparsed-checkout 仓库

如您所见,在 Git 暂存区视图中没有检出的所有其他文件都不会显示。只有当前已检出并修改的文件才会列出。

第一步必须在命令行中完成,因为 JGit 不支持 sparse-checkout 指令(请参见 but 383772change 33)。


这个操作会克隆整个仓库,但只检出一个文件夹,对吗?你所说的“最新Git”是指命令行Git(git-core),而不是EGit,对吗?请明确说明你正在谈论一个与被要求的工具不同的工具。你测试过这两个工具是否可以一起使用(显示历史记录、提交、推送等)吗? - howlger
@howlger 是的,git-core。一旦工作树正确填充,您可以在Eclipse中打开项目。 - VonC
1
@howlger 不确定。即使是JGit似乎也不支持稀疏检出:https://bugs.eclipse.org/bugs/show_bug.cgi?id=383772和https://git.eclipse.org/r/#/c/110964/33 - VonC
@howlger 我刚刚使用 Eclipse 2020-03/JDK14/Git 2.26.2 进行了测试:当我尝试导入 Git 项目时,无法检测到已经稀疏检出的存储库。 - VonC
感谢提供错误报告的链接。很高兴知道它已经可以使用git-core。我希望EGit/JGit能够尽快支持sparse-checkout(已经有一个实现提案)。 - howlger
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接