做(mkdir repo和cd repo之后)的区别是什么:

git init
git remote add origin git://github.com/cmcculloh/repo.git
git fetch --all
git pull origin master

and

git clone git://github.com/cmcculloh/repo.git

我的意思是,显然有一个更短,但除此之外,它们基本上是在做同样的事情吗?


当前回答

完整的项目或存储库将作为一个单独的目录下载。不仅仅是变化 它只会获取已经完成的更改,而不是整个项目

其他回答

用外行的话来说,我们可以说:

克隆:获取远程存储库的工作副本。 拉:我正在做这个,请给我其他人可能会更新的新变化。

Git克隆是获取现有存储库的本地副本的方法。对于给定的存储库,它通常只使用一次,除非您希望它有多个工作副本。(或者在搞砸了本地的拷贝后,想要一份干净的拷贝…)

Git pull(或Git fetch + Git merge)是如何从远程存储库更新本地副本的。如果您正在与他人合作,这是一个您将经常运行的命令。

正如第一个示例所示,可以使用其他git命令的分类来模拟git clone,但git pull所做的事情与git clone“基本上相同”(反之亦然)并非真的如此。

克隆-:它将在您的本地机器上创建完全相同的远程存储库项目副本。

Pull-:假设两个或两个以上的人共享同一个存储库。 (假设另一个人叫Syam) (存储库是你的项目存在于Github的地方)所以如果Syam在他的本地的同一个项目中做了一些更改,并将其推到远程存储库,所以无论Syam做了什么更改,这些更改都不会反映在你的本地。因此,要在本地反映这些新变化,你必须使用git pull。总的来说,我们使用git pull来更新项目。

所以基本上我们只使用git clone一次,而我们使用git pull很多次。

虽然git fetch命令将获取服务器上您还没有的所有更改,但它根本不会修改您的工作目录。它将简单地为您获取数据,并让您自己合并数据。然而,有一个叫git pull的命令,在大多数情况下,它本质上是一个git fetch,然后是git merge。

阅读更多信息:https://git-scm.com/book/en/v2/Git-Branching-Remote-Branches#Pulling

克隆:将远程服务器存储库复制到本地机器。

Pull:获取其他已添加到本地机器的新更改。

这就是区别。

克隆通常用于获得远程回购副本。

Pull用于查看其他团队成员添加的代码,如果您在团队中工作。