如何在5分钟内做出你的第一个开源贡献
2018年02月08日 由 yining 发表
759565
0
提高编程技能的最好方法是编写更多代码。第二种最好的方法是阅读别人的代码。
还有什么比在开放源码项目中协作更好的方法呢? 本文将介绍一个能够帮助你开始对开源做出贡献的项目—First contributions
如果你的电脑上尚未安git, 请按照下面的安装指引进行安装。
Fork(复制)本代码仓库
点击图中的按钮去Fork这个代码仓库。 这个操作会将代码仓库复制到你的账户名下。
Clone(克隆)代码仓库
接下来,将复制后的代码仓库克隆到你的电脑上。点击图中的绿色按钮,接着点击复制到剪切版按钮(将代码仓库地址复制下来)
随后打开命令行窗口,输入如下的git命令:
git clone "刚才复制的 url 链接"
"刚才复制的 url 链接"(去掉双引号)就是复制到你账户名下的代码仓库地址。获取这链接地址的方法请见上一步。
比如:
git clone https://github.com/你的Github用户名/first-contributions.git
‘你的Github用户名' 指的就是你的Github用户名。在这一步,你将复制到你账户名下的first-contributions这个代码仓库克隆到本地电脑上。
新建一个分支
下面的命令能在命令行窗口中,把目录切换到 first-contributions
接下来使用
git checkout
命令新建一个代码分支
譬如:
git checkout -b add-myname
(新分支的名称不一定需要有* add
。然而,在新分支的名称加入 add *是一件合理的事情,因为这个分支的目的是将你的名字添加到列表中。)
对代码进行修改,然后Commit(提交)修改
打开
Contributors.md
这个文件,更新文件内容,将你的名字加上去,保存修改。
git status
这命令会列出被改动的文件。接着
git add
这命令则可以添加你的改动,就像如下这条命令。
现在就可以使用
git commit
命令 commit 你的修改了。
git commit -m "Add <你的名字> to Contributors list"
将
<你的名字>
替换为你的名字
将改动 Push(发布)到 GitHub
使用
git push
命令发布代码
将
<分支的名称>
替换为之前新建的分支名称。
提出 Pull Request 将你的修改供他人审阅
前往 Github 你的代码仓库,你会看到一个
Compare & pull request
的按钮。点击该按钮。
接着再点击
Create pull request
按钮,正式提交 pull request。
额外的信息
我们假定你之前已经完成了基本的教程。附加的信息将提供关于高级Git技术的一些信息。
从存储仓库中删除分支
该文档提供了如何从存储库中删除分支的信息。
- 只有在你的pull request被合并后才执行下面步骤。
https://github.com/Roshanjossey/first-contributions/blob/master/additional-material/removing-branch-from-your-repository.md
将你的fork与存储库同步
该文档提供了关于如何使你的分叉(forked)存储库与基本存储库保持同步的信息。这很重要,希望你和其他人能够为这个项目做出贡献。
- 如果你的fork在parent库中没有任何更改,请遵循这些步骤。
https://github.com/Roshanjossey/first-contributions/blob/master/additional-material/keeping-your-fork-synced-with-this-repository.md
重新提交
这个文档提供了关于如何在远程存储库中恢复提交的信息。当你需要撤销已经被推到Github的提交时,它会很方便。
https://github.com/Roshanjossey/first-contributions/blob/master/additional-material/reverting-a-commit.md
修改提交
这个文档提供了关于如何在远程存储库中修改提交的信息。
https://github.com/Roshanjossey/first-contributions/blob/master/additional-material/amending-a-commit.md
撤销一个本地提交
这个文档提供了关于如何撤销本地存储库中的提交的信息。这是当你感到你已经将本地存储库弄乱并希望重新设置本地存储库时需要做的事情。
https://github.com/Roshanjossey/first-contributions/blob/master/additional-material/undoing-a-commit.md
解决合并冲突
这个文档提供了关于如何解决合并冲突的信息。
https://github.com/Roshanjossey/first-contributions/blob/master/additional-material/resolving-merge-conflicts.md
删除一个文件
该文档提供了如何从本地存储库中删除文件的信息。
https://github.com/Roshanjossey/first-contributions/blob/master/additional-material/removing-a-file.md
将提交转移到不同的分支
这个文档提供了关于如何将提交转移到另一个分支的信息。
https://github.com/Roshanjossey/first-contributions/blob/master/additional-material/moving-a-commit-to-a-different-branch.md
配置git
本文提供了关于如何在git中配置用户细节和其他选项的信息。
https://github.com/Roshanjossey/first-contributions/blob/master/additional-material/configuring-git.md
为什么要为开源项目贡献自己的力量呢?
对开源项目做出贡献是有很多好处的,比如有很多乐趣,提高你的技能,结识志同道合的人,找到很棒的导师,还会对你的职业生涯有所帮助等等。尽管如此,我还是觉得每个人都应该有自己的贡献。
这里是人们为开源贡献的原因的汇编:
https://github.com/nickdesaulniers/What-Open-Source-Means-To-Me