提高编程技能的最好方法是编写更多代码。第二种最好的方法是阅读别人的代码。
还有什么比在开放源码项目中协作更好的方法呢? 本文将介绍一个能够帮助你开始对开源做出贡献的项目—First contributions
如果你的电脑上尚未安git, 请按照下面的安装指引进行安装。
点击图中的按钮去Fork这个代码仓库。 这个操作会将代码仓库复制到你的账户名下。
接下来,将复制后的代码仓库克隆到你的电脑上。点击图中的绿色按钮,接着点击复制到剪切版按钮(将代码仓库地址复制下来)
随后打开命令行窗口,输入如下的git命令:
git clone "刚才复制的 url 链接"
“刚才复制的 url 链接”(去掉双引号)就是复制到你账户名下的代码仓库地址。获取这链接地址的方法请见上一步。
比如:
git clone https://github.com/你的Github用户名/first-contributions.git
‘你的Github用户名’ 指的就是你的Github用户名。在这一步,你将复制到你账户名下的first-contributions这个代码仓库克隆到本地电脑上。
下面的命令能在命令行窗口中,把目录切换到 first-contributions
cd first-contributions
接下来使用 git checkout
命令新建一个代码分支
git checkout -b <新分支的名称>
譬如:
git checkout -b add-myname
(新分支的名称不一定需要有* add 。然而,在新分支的名称加入 add *是一件合理的事情,因为这个分支的目的是将你的名字添加到列表中。)
打开 Contributors.md
这个文件,更新文件内容,将你的名字加上去,保存修改。git status
这命令会列出被改动的文件。接着git add
这命令则可以添加你的改动,就像如下这条命令。
git add Contributors.md
现在就可以使用 git commit
命令 commit 你的修改了。
git commit -m "Add <你的名字> to Contributors list"
将 <你的名字>
替换为你的名字
使用 git push
命令发布代码
git push origin <分支的名称>
将 <分支的名称>
替换为之前新建的分支名称。
前往 Github 你的代码仓库,你会看到一个 Compare & pull request
的按钮。点击该按钮。
接着再点击 Create pull request
按钮,正式提交 pull request。
额外的信息
我们假定你之前已经完成了基本的教程。附加的信息将提供关于高级Git技术的一些信息。
从存储仓库中删除分支
该文档提供了如何从存储库中删除分支的信息。
https://github.com/Roshanjossey/first-contributions/blob/master/additional-material/removing-branch-from-your-repository.md
将你的fork与存储库同步
该文档提供了关于如何使你的分叉(forked)存储库与基本存储库保持同步的信息。这很重要,希望你和其他人能够为这个项目做出贡献。
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