不需要克隆的Git checkout

7

我对Git很陌生。有人能帮助我理解以下内容吗?

  1. 我正在编写一个构建脚本,首先从远程库检出/更新代码。我与本地机器无关。那我是否仍需要在本地克隆远程库并随后检出代码呢?
  2. 如果我克隆存储库,它会复制整个代码以及在本地占用存储空间吗?
  3. 如果我真的需要先克隆然后检出/更新,在我的构建脚本中,我将如何检查(使用Python或ANT)是否已经克隆了该存储库。

7
你能否每个帖子只问一个问题? - CharlesB
2个回答

11

我找到了一种非常有用的git克隆语法,可用于构建,其中您不需要整个git修订历史记录。请注意,这似乎需要Git版本1.9以上:

git clone -b <remoteBranch> --single-branch --depth 1 ssh://username@servername.net:serverport/PathToProject <FolderName>

注意:

这将克隆并检出“remoteBranch”,不包括其他分支,深度为1(因此仅有最近的文件快照),并将其放入名为“FolderName”的文件夹中。


1
那使我的下载大小减少了77%(下载时间缩短了1/4)!github的语法:git clone -b master --single-branch --depth 1 git@github.com:totalgood/nlpia - hobs

4
  1. 是的
  2. 是的
  3. 检查.git目录是否存在。

请参考CharelsB的评论,了解如何获得更详细的答案 ;)


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