Github Fork 使用详解

Fork 是对一个仓库的克隆。克隆一个仓库允许你自由试验各种改变,而不影响原始的项目。
一般来说,forks 被用于去更改别人的项目(贡献代码给已经开源的项目)或者使用别人的项目作为你自己想法的初始开发点。
提出更改别人的项目

使用 forks 提出改变的一个很好的例子是漏洞修复。与其记录一个你发现的问题,比如:

●Fork 这个仓库

●进行修复

●向这个项目的拥有者提交一个 pull requset

如果这个项目的拥有者认同你的成果,他们可能会将你的修复更新到原始的仓库中!

使用别人的项目作为你自己想法的初始开发点

开源的核心是共享代码,我们可以制作更好、更可靠的软件。

事实上,当你在 GitHub 上创建一个仓库时,你可以选择自动包含一个许可文件,这个文件决定你是否希望将你的项目分享给其他人。

Fork 一个仓库分为简单的两步:

1、在 GitHub 上,定位到 QingmingLi-LQM/Marlin3DprinterTool仓库。

2、在页面右上角,点击 Fork 按钮(如图所示)。
在这里插入图片描述
就这样!现在你已经 fork 这个原始的 QingmingLi-LQM/Marlin3DprinterTool 仓库。

同步你的 Fork 仓库

你或许已经 fork 一个项目为了提交更改向 upstream 或原始仓库。这种情况下,很好的实现了将 upstream 仓库定期同步到你的 fork。要做到这一点,你需要在命令行中使用 Git。你可以使用你刚刚 fork 的 QingmingLi-LQM/Marlin3DprinterTool 仓库去练习设置 upstream 仓库。

第一步:安装 Git

你首先应该 安装 Git,如果你还没有。也不要忘记 通过 Git 验证 GitHub。

第二步:为你 fork 的仓库创建一个本地克隆

现在,你已经成功 fork Marlin3DprinterTool 仓库,但在你自己的计算机上并没有这个仓库的文件。让我们克隆你 Fork 的代码到你本地的计算机上。

1、在 GitHub 上,定位到你 fork 的 Marlin3DprinterTool 仓库。

2、在你 fork 的仓库页面的右侧边栏,点击复制图标复制你 fork 的 URL。
在这里插入图片描述
3、打开 Terminal 命令(针对苹果系统用户)或者命令提示行(针对 Windows 和 Linux 用户)。

4、输入 git clone,然后粘贴在步骤 2 复制的 URL。它看起来就像如下所示,用你 GitHub 的用户名代替 YOUR-USERNAME:

$git clone https://github.com/YOUR-USERNAME/Spoon-Knife

5、按下 回车键 ,你的本地克隆就创建了。

$git clone https://github.com/YOUR-USERNAME/Spoon-Knife

Cloning into `Spoon-Knife`...
remote: Counting objects: 10, done.
remote: Compressing objects: 100% (8/8), done.
remove: Total 10 (delta 1), reused 10 (delta 1)
Unpacking objects: 100% (10/10), done.

现在,你已经有了针对你 fork 的 Marlin3DprinterTool 仓库的本地克隆代码!

第三步:通过配置 git 来同步你 fork 的原始 spoon-knife 仓库

当你 fork 一个项目是为了提出更改这个原始的仓库,你可以配置 Git 将原始的或者 upstream 的变化更改到你本地。

1、在 GitHub 上,定位到 QingmingLi-LQM/Marlin3DprinterTool 仓库。

2、在这个仓库页面的右侧边栏,点击复制图标复制这个仓库的 URL。

3、打开 Terminal 命令(针对 Mac 用户)或提示命令行(Windows 和 Linux 用户)。

4、更改到你在步骤 2(创建一个本地)创建的你的 fork 的本地的目录。

5、输入 git remote -v,按下回车键,你将会看到你的 fork 当前配置的远程仓库:

$git remote -v
origin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)

6、输入 git remote add upstream,然后粘贴你在步骤 2 复制的 URL 并按下回车键。它看起来如下所示:

$git remote add upstream https://github.com/octocat/Spoon-Knife.git

7、验证你 fork 里新指明的这个 upstream 仓库,再次输入 git remote -v。你将会看到你 fork 的 URL 作为原始的地址,而原始的仓库的 URL 作为 upstream。

$git remote -v
origin    https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin    https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
upstream  https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)
upstream  https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)

在这里插入图片描述

现在,你可以利用几个 Git 命令保持你的 fork 与 upstream 的仓库的同步。
Github链接

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GitHub中的fork是指将别人的代码库复制到自己的代码库中,并在自己的库中进行修改和改进。通过fork,你可以在托管平台上找到一个有趣的项目,将其复制到自己的库中,并对其进行修改和改进。一旦你对该项目做出了重要的改动,你可以向原项目提交一个pull request,请求将你的代码合并到原项目中。如果原项目的维护者接受了你的请求,你的代码就有可能会出现在原项目中了。通过fork和pull request的方式,GitHub为开源项目的贡献者提供了一个便捷的途径,使得合作和贡献变得更加容易和开放。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [github/gitlab中的fork操作](https://blog.csdn.net/m0_62357580/article/details/131050976)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [GitHubFork是什么意思](https://blog.csdn.net/weixin_30765319/article/details/99916482)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值