1. 概述
在Git中,fork
和clone
是常见的操作,它们都创建了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
则在本地创建一个可工作的仓库副本,即使在离线状态下也能操作。