没有.git目录的Git克隆[复制]

问题描述 投票:122回答:3

可能重复: How to do a “git export” (like “svn export”)

做克隆时是否有传递给git的标志,比如说不克隆.git目录?如果没有,克隆后删除.git目录的标志怎么样?

git version-control git-clone
3个回答
198
投票

使用

git clone --depth=1 --branch=master git://someserver/somerepo dirformynewrepo
rm -rf ./dirformynewrepo/.git
  • 深度选项将确保复制最少的历史记录以获得该回购。
  • 分支选项是可选的,如果未指定则获得master。
  • 第二行将使您的目录dirformynewrepo不再是Git存储库。
  • 如果您正在执行递归子模块克隆,则depth和branch参数不适用于子模块。

26
投票

因为你只需要文件,所以你不需要把它当作git仓库。

rsync -rlp --exclude '.git' user@host:path/to/git/repo/ .

这仅适用于本地路径和远程ssh / rsync路径,如果远程服务器仅提供git://或https://访问,则它可能无效。


0
投票

你总能这样做

git clone git://repo.org/fossproject.git && rm -rf fossproject/.git
© www.soinside.com 2019 - 2024. All rights reserved.