相关疑难解决方法(0)

如何从 git 存储库克隆、获取或稀疏检出单个目录或目录列表?

如何从 git 存储库克隆、获取或稀疏检出单个文件或目录或文件或目录列表,以避免下载整个历史记录或至少保持历史记录下载最少?

为了登陆这里的人的利益,这些是对其他类似问题的参考:

很久以前就有人问过这些类似的问题,从那以后 git 不断发展,最终导致了大量不同的答案,有些更好,有些更糟,具体取决于所考虑的 git 版本。问题在于,上述问题中没有一个答案能满足所有这些问题的所有要求,这意味着您必须阅读所有答案并在头脑中编译自己的答案,最终才能满足所有要求。

这里的这个问题扩展了前面提到的问题,提出了比所有其他问题加起来更灵活和严格的要求。所以,再一次:

如何从 git 存储库克隆、获取或稀疏检出单个文件或目录或文件或目录列表,以避免下载整个历史记录或至少保持历史记录下载最少?

git git-fetch git-checkout revision-history git-sparse-checkout

7
推荐指数
1
解决办法
1425
查看次数

从 Git 存储库克隆单个文件

我想克隆一个子目录https://github.com/CoreyMSchafer/code_snippets/tree/master/Django_Blog/12-Password-Reset/django_project

从父目录

https://github.com/CoreyMSchafer/code_snippets.git

我浏览了一些 Stack Overflow 答案,他们说 Git 的设计目的不是从根文件夹下载特定文件。

我在 cmd 中尝试了以下命令

git clone https://github.com/CoreyMSchafer/code_snippets.git -b code_snippets/tree/master/Django_Blog/12-Password-Reset/django_project但没有成功。

如果这可能是一个可能的重复问题。

git

7
推荐指数
1
解决办法
1万
查看次数

如何使用相对路径浅层克隆本地git存储库?

本地目录的浅克隆需要file://如下所述:git clone:warning:在本地克隆中忽略--depth; 使用file://代替

但是如何使用相对路径呢?

例如:如果我myrepo在当前目录中有一个repo ,那么我这样做:

git clone --depth 1 file://mymodule mymodule2
Run Code Online (Sandbox Code Playgroud)

然后它失败了:

Cloning into 'mymodule2'...
fatal: No path specified. See 'man git-pull' for valid url syntax
Run Code Online (Sandbox Code Playgroud)

如果我尝试:

git clone --depth 1 file://./mymodule mymodule2
Run Code Online (Sandbox Code Playgroud)

它失败了:

Cloning into 'mymodule2'...
fatal: '/./mymodule' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
Run Code Online (Sandbox Code Playgroud)

我能找到的唯一解决方法是将其转换为绝对路径,从以下开始/:

git clone --depth 1 …
Run Code Online (Sandbox Code Playgroud)

git

6
推荐指数
1
解决办法
2557
查看次数

如何使用 GitHub 上的部署密钥下载单个原始文件?

我使用部署密钥在 GitHub 上克隆一个私有 git 项目。我没有访问该存储库的用户名和密码。

我想知道,如何从存储库中只下载一个文件,而不克隆整个项目?

下载原始文件的 GitHub API 似乎仅支持 HTTP。

git github ssh-keys github-api

6
推荐指数
0
解决办法
997
查看次数

如何从 GitLab 下载单个文件?

我知道可以获取然后使用带有路径/到/文件的结帐来下载该特定文件。

我的问题是我每天有 1 MB 的数据上限,并且 git fetch 无论如何都会下载所有数据,即使在我使用 git checkout 之前它不会将它们保存到磁盘。我仍然使用我的数据

我对 git fetch/checkout 的理解是否正确?有没有一种方法可以下载特定文件,以便在继续下载之前查看是否有新版本。

python linux git

6
推荐指数
2
解决办法
2万
查看次数

如何使用 ansible 从 git 存储库检索单个文件?

我试图从 bitbucket 分支检索单个文件,而不是使用 git 模块获取整个分支。获取整个分支需要 2 分钟多的时间,而我实际上只需要那个文件。

git bitbucket ansible

6
推荐指数
1
解决办法
6681
查看次数

从Git存储库中分叉文件,而无需克隆存储库

有没有办法在不克隆整个存储库的情况下从外部Git存储库派生文件?

git

5
推荐指数
1
解决办法
3616
查看次数

在git repo中推送子树

我对Git很新:我来自SVN,在那里我发现了非常强大的外部功能.在Git中我找不到类似的东西:

  • 子模块非常适合添加并非总是需要的项目模块.它们必须在repo克隆后初始化,并且不能仅包含原始项目的子目录.
  • 子树非常适合添加库(它们也允许子目录包含),但推送它们真的很痛苦.

所以场景是这样的:我有一个项目,我想在其中包含一些库.我希望有可能改变所有这些库并将它们推送到自己的库中.此外,这些库中的一些是较大项目的子目录(例如,如果项目还包括演示或自述文件,我将不会在我的项目中包含这些目录).

我怎样才能做到这一点?

我试过了:

好吧,如果你已达到这一点,感谢你的耐心,现在我想要别的东西尝试,因为现在我的结论是:"Git中不允许子树推送"ç_ç

git git-subtree

5
推荐指数
1
解决办法
1561
查看次数

Git-archive 远程端挂了

我试图从 Github 签出单个文件。按照这个 线程后,我试过

git archive --format=tar --remote=ssh://git@github.com:user/project.git HEAD:README.md
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)

编辑:我尝试通过从git ls-remote url. 然后使用这个头,我使用 wget 获得了文件。但我想知道如何使用 git 命令来做到这一点。

git github

5
推荐指数
1
解决办法
2276
查看次数

错误:GitHub 目前无法显示这么大的文件 - 但该文件只有 1.06 MB

我通过两种不同的方式将 HTML 文件上传到 GitHub 存储库:拖放以及使用终端上的 Git 添加/提交/推送。在这两种情况下,我都收到了文件太大而无法显示的错误,但它只有 1.06 MB。我已经在 GitHub 和 SO 上搜索了文档。有什么想法吗?

在此输入图像描述

git terminal github

5
推荐指数
1
解决办法
1万
查看次数

gitlab 中的 maven settings.xml 重复

我有多模块 Maven 项目。每个模块都有自己的 git repo。根据 gitlab文档,每个模块都必须有 .m2/settings.xml 文件用于 CI/CD 通过 .gitlab-ci.yml 才能工作。

我想避免在每个模块中都有相同的 .m2/settings.xml 文件。有没有办法实现这一目标?

continuous-integration maven gitlab

3
推荐指数
2
解决办法
3200
查看次数