3

例如,我想使用一些位于 Github 上的框架。有没有办法在没有.git结构的情况下克隆存储库?这样我可以添加新的远程 url 并适当地推送到我自己的存储库吗?

编辑

这样做的目的是让我可以从 Github 中取出一个框架并将其放入我自己全新的存储库中,而无需从框架的存储库中导入任何 git 数据(如 git 日志)。我知道你可以克隆和删除适当的数据,或者你可以使用 Github 的工具下载一个 tarball,但我只是想知道是否有更简单的方法来做到这一点,比如一个git clone,最好是一个命令。

4

2 回答 2

3

如果您只想要 repo 的最新内容,而不需要任何 git 信息,那么 tarball 是最好的解决方案,并且可以使用单个命令行完成:

curl -L https://github.com/username/reponame/tarball/master | tar zx

或者

wget --no-check-certificate https://github.com/username/reponame/tarball/master -O - | tar xz

即使在 Windows 上,您也可以使用来自GoW (Gnu On Windows)的类 unix 命令来完成。

这将允许您将该新目录添加为您自己的目录之一。

注意:子模块会更好,但这不是您特别要求的。


OP Steven Lu 在评论中补充道:

我想这适用于 Github,但如果 repo 不是由 Github 托管,你会怎么做?

对于任何其他 repo,您​​可以使用命令git archive --remote,如“git archive带有 bitbucket 的命令”中所示:

例如:

git archive --remote=ssh://git@bitbucket.org/username/reponame.git --format=tar --output="file.tar" master
于 2012-08-22T05:55:06.313 回答
-1

如何在不修改历史记录的情况下进行快速克隆?

git clone --depth 1 your_repo_url

来源:https ://git.wiki.kernel.org/index.php/GitFaq#How_do_I_do_a_quick_clone_without_history_revisions.3F

于 2012-08-22T05:08:41.457 回答