美文网首页
github fork之后的操作

github fork之后的操作

作者: denvey | 来源:发表于2015-12-30 10:01 被阅读1186次

因为我 Fork 了 Mojo 的项目,这样才学会了如何使用 github. 因为其它一些项目是自己创建的,也就学不会怎么和其它团队合作。 现在给这部分不一样的经验分享给大家。希望有利于大家参与到开源的项目来。

1. 提交自己本地项目的修改到 github 的库中.

如果你自己的项目,或者是其它人的项目, 你 Fork 了以后, 一定是到本地来进行开发和测试。所以当你自己给自己的项目 clone 到本地后, 进行了一系列的修改后, 当你想提交时, 最方便的方式是直接使用 HTTP 的方式进行提交。 但当你提交的时候, 就会发现一直权限出错的提示:

error: The requested URL returned error: 403 Forbidden while accessing http://xxx

这时, 你需要修改你的项目目录下的 .git/config 这个 git 的配置文件。给其中的 url 选项中修改如下:

url = https://iakuf@github.com/iakuf/mojo

这其实就是给你的 github 的帐号名, 通过 @ 加到 URL 的前半部分, 这样才能成为 HTTP 认证的用户信息来进行接下来的认证. 这样就不用关心 SSH 的 Key 的问题了。

2. 当自己 Fork 后的项目更新后, 提交 ( Pull Requests) 给原作者合并

我原来一直使用 github 但只会提交修改, 后来在陈子的指导下学会了 Pull Requests 到原来的作者。其实很简单。 在界面上边有个 Pull Requests。

点进去, 然后就可以见到你和原作者项目的差异的代码,上面有个 "Create pull request". 点击后会让你写上本次提交合并“主题”,还有相关提交修改的内容的一些介绍, 这方便原作者理解和了解你的修改,并会考虑是否给你的提交合并到他自己本身的代码。 写完这些信息后, 然后提交过去。 作者的项目就会收到你这个请求了。如果他认为你写的代码没问题,介绍也合理, 就会合并到你的代码到他的主代码中。

3. 更新自己 Fork 的代码项目和原作者的项目进度一致的方法

经过一段时间, 有可能作者原来的代码变化很大, 你想接着在他最新的代码上修改, 这时你需要合并原作者的最新代码过来, 让你的项目变成最新的。这个需要接着在你的本地操作。假设前提是, 你现在你的代码是克隆下来在本地的。 例如我 Fork 了 sri (Mojo 的作者) 的 Mojo 项目, 我的项目地址是 https://github.com/iakuf/mojo. 我现在克隆这个在我的本地了。

git clone https://github.com/iakuf/mojo
cd mojo

接着, 我只需要添加 sri 项目的地址,也就是主项目的 remote 地址, 我们加入后, 给代码 fetch 过来, 然后进行 merge 的合并操作。

git remote add sri https://github.com/kraih/mojo
git fetch sri
git merge sri/master

这样就能给你的当前本地的项目变成和原作者的主项目一样。 然后你按正常的流程进行修改并提交到你的项目就好了。

git commit -am '更新到原作者的主分支的进度'
git push origin

要接着给修改提交给原作者,请参照第二步。

相关文章

  • github fork之后的操作

    因为我 Fork 了 Mojo 的项目,这样才学会了如何使用 github. 因为其它一些项目是自己创建的,也就学...

  • GitHub的Fork操作

    现在有这样一种情形:有一个叫做Joe的程序猿写了一个游戏程序,而你可能要去改进它。并且Joe将他的代码放在了Git...

  • github从fork到request

    1:在你需要fork的github页面上,点击fork按钮 fork完成之后,会跳转到你自己的github主页,你...

  • github fork后两个仓库之间如何同步代码

    说明: 整理一份github的fork的用法,以及相关的操作命令,重点是在于fork完成了之后,两个仓库之间如何同...

  • fork 的基本操作

    fork 的基本操作 1. 两个项目的地址,分别是 源 和 fork source:git@github.com:...

  • GitHub fork go get module declar

    背景 在GitHub上面fork了一个项目,修改之后,想在别的地方go get安装 操作 直接修改go.mod为自...

  • gitHub fork后同步更新

    在gitHub上fork别人项目之后,先clone到本地然后执行以下操作: 1.添加原作者的远程 git remo...

  • git clone并添加到其他仓库

    方法1:github fork (推荐) 方法2:手动操作(无法同步原仓库上的所有分支) 在 github 上预先...

  • GitHub学习

    github上fork别人的代码之后,如何保持和原作者同步的更新 1.从自己fork之后的版本库clone $ g...

  • 同步 fork(Syncing a fork)

    当我们 fork 一个开源仓库之后,应该怎样将上游的仓库同步到我们的 fork 上呢?以下文章翻译自 GitHub...

网友评论

      本文标题:github fork之后的操作

      本文链接:https://www.haomeiwen.com/subject/cxeihttx.html