什么样的contributions会被Github计算在内?

夏婆子
• 阅读 11733

在热衷于在Github上刷contributions的人(比如我)看来,每周看着contributions涨涨涨,看着Contributions Calendar越来越绿意盎然,心里一股幸福感油然而生。

当然,这种心理现象就像LOL玩家喜欢看排名和胜盘一样,是病,得治。

有些时候,这些平凡而坚定的人,这些脱离了低级趣味的人,这些将有限的一生奉献到无限的为人类的爱与和平打代码的事业的人……惊奇地发现,自己push的commit没有被算入contributions里。或者自己赶在截止时间之前,辛辛苦苦地完成一个commit,结果发现算到新的一天里,然后苦心策划的连击就这样前功尽废了。这时候,so sad, so painful。

这种情绪是不好的,因为它意味着原本坚持打代码的朴素愿望已然变质,被外部化成为contributions的增加而打代码,失去了打代码的本意……不过要是没有这种contributions作为一种满足收集癖的动力,恐怕连坚持打代码的原本的朴素愿望也不会产生呢。这么说来真是说不清啊。好吧,让我们跳过纯粹道德批判,来看看主题:什么样的contributions会被Github计算在内?

为了弄清楚这个问题,避免悲剧的一再重演,我决定查看Github的相关政策法规,并且整理整理。现在就跟大家分享一下。

并非所有的contributions是生而平等的

正如人们所熟知,人生而不平等,同样的道理可以应用在contributions上。至少在Github上,有些contributions就是那么不幸。

contributions的创建时机

一个contributions被创建,需要满足“新建一个issue” || “发出一个pull request” || “创建一个commit”。

然而,如果一个contributions是通过创建commit来产生的,那么它就会面临生来的不平等。

尤其当你是一个commit contributions

commit contributions分为两种:

  1. 向一个不是你fork的版本库commit
  2. 向一个你fork的版本库commit

对于前者,必须是在默认的分支(一般为master)或者在gh-pages(就是当你直接在github上edit的时候创建的)分支上的commit才算数。

对于后者,要等到上游的人把代码merge到上游的默认的分支,你的commit才会被计算。如果你的comit没有被merge,那么自然就不会算数了。

当然还有些情况下不会计算到你的contributions里面的,比如你的commit记录是一年多以前的,或者那个commit的创建者没有跟你的Github帐号联系起来,等等。

BTW,对私有仓库的commit也是会被考虑在内的。具体的处理方式应该跟公有仓库是一样的。

contributions calendar什么时候开始新的一天?

貌似这个contributions calendar上新的一天的开始时间,曾经变过几次……不过一如《1984》所说,人们总是容易忘掉过去的状况,所以我也不太记得曾经是什么时候开始新的一天的,大概是下午吧。不过现在是跟当地时间是同步的。再也不用担心错过commit的时机了。

最后提醒一下,contributions机制可以鼓励人们坚持打代码,但是不要让自己写代码的激情被contributions给外部化了。
无论你的commit算不算数,能够为自己的项目添加新的功能,或者解决已有的bug,才是编程的目标。

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
7个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
我是阿沐 我是阿沐
4年前
一个因全局变量引发的故事!
前言科比问道:“你知道洛杉矶每天早上四点钟是什么样子嘛?”,我没见过,但是我经常见广州白云区四点钟的样子。是不是在早晨阳光下看着跟随自己前行的身影道:“起的比鸡早,睡的比狗晚,或许这是我最后一次努力的挣扎”。睡梦惊醒我有一个中午空出半个小时看书的习惯,那天中午看到1点钟的时候,确实有点困了,就急忙合上书躺椅子上睡一觉,正在做梦呢!突然一把被同事(妹子)推醒
Stella981 Stella981
3年前
DeFi Token 大热但我们想说:FOMO 是病,得治
!(https://oscimg.oschina.net/oscnet/0314f7712063486d8e611da3a48b9efc.gif)DeFiToken火了,火的毫无道理,火的一塌糊涂。从6月的Compound开始,到最近的YAM、CRV,一个接着一个的DeFi币种此起彼伏的出现在大众的视野中
可莉 可莉
3年前
18个常用 webpack插件,总会有适合你的!
!(https://oscimg.oschina.net/oscnet/71317da0c57a8e8cf5011c00e302a914609.jpg)来源| https://github.com/Michaellzg/myarticle/blob/master/webpack/Plugin何为插
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Easter79 Easter79
3年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
Sping中@Configuration@Bean如果出现bean的覆盖,会怎么处理?
前言不建议写这么奇葩的代码!!!这就有点像考试喜欢出的试题,有一堆overload和override的代码,选择题选择调用的是哪个。不建议写这种让人看着费劲的代码。问题引出言归正传,如果有一个这样的配置类,@Bean(https://my.oschina.net/bean)注解了相同name"cupc
Stella981 Stella981
3年前
Linux日志安全分析技巧
0x00前言我正在整理一个项目,收集和汇总了一些应急响应案例(不断更新中)。GitHub地址:https://github.com/Bypass007/EmergencyResponseNotes本文主要介绍Linux日志分析的技巧,更多详细信息请访问Github地址,欢迎Star。0x01日志简介Lin
Stella981 Stella981
3年前
ELK学习笔记之ElasticSearch的索引详解
0x00ElasticSearch的索引和MySQL的索引方式对比Elasticsearch是通过Lucene的倒排索引技术实现比关系型数据库更快的过滤。特别是它对多条件的过滤支持非常好,比如年龄在18和30之间,性别为女性这样的组合查询。倒排索引很多地方都有介绍,但是其比关系型