1. 概述

在Git中,forkclone是常见的操作,它们都创建了Git仓库的副本,但用于不同的场景并追求不同的目标。

在这篇教程中,我们将探讨这两个看似相似的Git操作。

2. Git fork

Git fork是在服务器端复制现有公开仓库的一个过程。 当我们想要为某个项目贡献时,可以fork现有的项目仓库,在我们的个人服务器上创建一个副本。我们可以通过git pull(/git-guide#103 git pull - 同时更新和应用)从原始仓库获取所有更新到我们的个人服务器端仓库。

然而,如果我们想将fork仓库的更改推送到公共仓库,我们需要提出拉取请求。拉取请求允许维护者选择他们允许在公共仓库中合并的更改。此外,这也提供了一个方便的协作方式。

fork一个仓库,只需访问公共仓库并点击Fork按钮。这将在我们的账户上创建一个服务器端副本:

另外,我们还可以通过GitHub CLI工具来fork仓库。首先,需要安装GitHub CLI工具。然后,从终端运行auth命令,并按照浏览器指示进行身份验证:

$ gh auth login --web

登录后,我们就可以为所需的仓库运行fork命令:

$ gh repo fork https://github.com/<your_repository_here>

一旦fork完成,我们可以在本地机器上克隆它并开始工作。

我们可以使用Git fork进行开源协作贡献或个人实验。也可以fork公共仓库以备个人备份,以便参考。

3. Git clone

Git clone(/git-guide#2 git clone - 克隆外部仓库)复制现有Git仓库的内容。 当我们clone一个仓库时,会在本地机器上复制整个项目,包括所有分支和提交历史。

这使得我们可以在离线模式下工作,进行测试,创建新分支。简而言之,我们在不影响原始仓库的情况下进行更改。然而,为了让我们的更改反映到原始仓库中,必须将更改推回到远程仓库。

我们可以通过执行以下Git命令来clone仓库:

$ git clone https://github.com/<your_repository_here>

Git clone有助于离线访问、个人工作,或者获取代码库以进一步使用。

4. 总结

在这篇文章中,我们了解了Git fork如何在服务器端创建仓库副本。而Git clone则在本地创建一个可工作的仓库副本,即使在离线状态下也能操作。