Questions tagged «open-source»

有关免费提供原始源代码并可以重新分发和修改的软件的问题。

4
有图表可以帮助我在开放源代码许可证之间做出决定吗?[关闭]
开源计划在其“流行且广泛使用的或具有强大社区的许可证”列表中列出了9种不同的许可证。 我想将我的项目许可为开源。不幸的是,我不会讲法文。我可以参考一些图表来帮助我做出正确的选择,或者至少将我指向正确的方向吗?例如,汇总许可证之间差异的表格,或者使用我的要求引导我找到适合我的正确许可证的流程图? 我也打算与律师见面,但是任何开始的信息都会有所帮助。

5
您将如何评估程序员的Github个人资料?[关闭]
开源社区中的许多人说,他们在招聘时强烈考虑候选人的Github个人资料。 我活跃在Github上,有一些我自己的项目,也有一些对其他项目的贡献。但是,如果以我自己的身份查看自己的个人资料,就会发现很多杂音:我克隆但从未参与过的项目等等。我引以为傲的项目和补丁并没有脱颖而出。 如果您评估人们的Github个人资料,该如何做?作为开发人员,我应该做些其他事情吗?例如,删除我不积极从事的克隆存储库?

1
参与Github(如何找到项目)[关闭]
我想为Github上的开源项目做贡献。通常,我只想开始修复一些小错误或添加功能。我没有特定的项目。我想从事C,C ++,Python,.NET,Java等项目。但是,我的问题是我不知道如何在Github上找到任何东西。 我确实在Explore Github上找到了一个页面,其中列出了C项目。基本上,它列出了前5个“受监视的” C项目。好的,那很好,但是我想看到不止5个。 Sourceforge很棒,因为您可以使用编程语言浏览项目。此外,SourceForge曾经或曾经有一个论坛来查找寻求帮助的项目。我在Github上找不到任何东西。有一个“搜索”功能,对于寻找要贡献的项目似乎毫无用处。我尝试了高级搜索,将其编程语言设置为“ Repositories”和“ C”。但是,您必须在搜索中添加一些内容。尽管我只想浏览项目的标题和描述。 因此,我尝试放置“网络”只是为了看看会发生什么。它仅列出了每个项目的每个分支。 我有什么办法可以以通俗的方式,例如通过第三方或其他方式搜索项目?似乎Github应该有这样的东西;我可以从Sourceforge中选择,因为我可以在那里搜索,但是我想建立一个Github个人资料,因为那是本月的风趣,而且Hacker News上所有这些狂热者似乎都认为Github个人资料比Resume更好。 /简历。:)

5
“ Nightly Builds”是什么意思?
我使用开放源代码项目已有一段时间,并且一直在开发开放源代码应用程序,每隔一段时间我会碰到“ Nightly Build”一词,而我一直对它的真正含义感到好奇。从字面上看,这是否意味着这些项目纯粹是作为副项目完成的(通常是在每个人完成日常工作后的晚上),并且没有真正的贡献者/专门的开发团队,还是比这更复杂?

12
公开开源项目而不会感到尴尬[关闭]
我一直在一个相当大的开源项目上工作了一段时间,现在已经接近要发布它的地步了。但是,我是自学成才的,我真的不认识任何可以充分审查我的项目的人。 几年前,我发布了一些代码,这些代码在我发布它的论坛上几乎被撕碎(在某种意义上)。尽管该代码有效,但批评是准确而残酷的。它促使我开始寻找所有事物的最佳实践,最终我觉得这使我成为了一个更好的开发人员。我已经遍历了项目中的所有内容,试图使它变得完美,以至于我数不清。 我相信我的项目,并认为它有潜力帮助很多人,而且我觉得我已经用有趣的方式做了一些很酷的事情。不过,由于我是自学成才,所以我不禁要问自己的自我教育存在哪些差距。我上次撕开我的代码的方式并不是我想重复的。我认为释放我的项目花了无数小时,这让我最大的两个恐惧是绝对尴尬的,因为我由于自我教育而错过了一些明显显而易见的事情,或者更糟糕的是,将其释放到of的声音中。 有没有遇到过类似情况的人?我不害怕建设性的批评,只要它具有建设性,而不仅仅是我如何搞砸的话。我知道StackExchange上有一个代码审查站点,但它并不是真正为大型项目设置的,而且我不觉得那里的社区足够大,如果我要零散发布项目的一部分,我也不会得到很好的反馈(我尝试了一个文件)。我该怎么做才能使我的项目至少取得一定程度的成功,而又不会在此过程中感到尴尬或沮丧?


2
启动开源项目的清单[关闭]
启动一个开源项目不仅是将源代码丢到某个公共存储库中,然后对此感到满意。您应该拥有技术(除用户之外)文档,有关如何贡献的信息等。 如果创建一份重要任务清单,您将包括哪些内容?

13
重新创建/开源您先前为另一家公司编码的程序是否合法
在我之前的工作中,我创建了一个通用的仪表板来自动化任务,事实证明它非常有用-当然,我以前的老板拥有我在那工作时编写的所有代码。现在,我不再在那里了,从内存中重新创建仪表板并将代码开源对我来说合法吗?如果我确实重新创建它,则代码(也许2k-3k行)可能与原始代码几乎相同,因为我的记忆力非常好,并且倾向于遵循我通常的编码风格和命名约定。 编辑:更多背景知识-这是一个相当通用的软件,仅由一家全球性公司中的一个小型团队(<10)在内部使用。“公司”甚至都不知道这个系统,因为它是我主动创建的。它基于python / django构建。几乎相同的意思是,例如django模型将具有相同的名称/字段,视图将使用类似的查询来返回相同的对象集。

4
如何处理GitHub中的遗弃问题?
如果有人在GitHub上发布问题,但询问并且从未给出更多信息来重现该错误,则正常程序是什么?实例。 作者在这里指出“导航中断”。虽然我相信它是固定的,但我希望作者能确保我们正在谈论同一件事。但有时候,问题的记者就消失了。为遗留的问题设置到期日期是一种好/常见的做法吗? 类似于以下情况: 对此问题提出了一个问题,以便能够对其进行调试。 自开发团队上一次未回答的问题/评论以来,已经过去了2到6个月。 错误在关闭时无法复制(出于任何原因,也许永远都无法复制)。 关闭警告前2周会发出警告。 项目通常做什么?我在Google上找不到任何东西。另外,我将如何记录呢?README.md中的简单注释是否详细说明了上述要点,并在问题中提供注释以说明为什么将其关闭就足够了? 注意:与该问题有所不同,因为该错误可能仍然是相关的(或无关),但是缺少信息。

1
MIT许可证中的条件到底意味着什么?
引用许可证本身: 版权(C)[年份] [版权所有者] 特此免费授予获得此软件和相关文档文件(“软件”)副本的任何人无限制地处理软件的权利,包括但不限于使用,复制,修改,合并的权利,发布,分发,再许可和/或出售本软件的副本,并允许具有本软件的个人遵循以下条件: 以上版权声明和本许可声明应包含在本软件的所有副本或大部分内容中。 我不确定粗体部分的含义。 可以说我正在创建一些库,并根据MIT许可证对其进行了许可。有人决定分叉该库并创建一个封闭源代码的商业版本。根据许可证,他应该可以自由地这样做。 但是,根据这些条款,他还需要做什么?相信我是创作者吗?我想“版权声明上方”是指“版权(C)[...”部分,但是,那不是将我列为他的代码的作者吗(尽管我从技术上说出了代码)? 而且,在我许可自己的图书馆的条件相同的情况下,现在他的图书馆实际上对它的许可中不包括“许可通知” 吗? 或者,我是否对此解释不正确?这是否表示我有义务包括版权和许可通知?

9
我们如何避免CI驱动的开发……?
我正在与其他许多常规贡献者一起进行一个由研究主导的大型开源项目。因为该项目现在很大,所以一个财团(由两名全职员工和几名成员组成)负责维护该项目,持续集成(CI)等。他们只是没有时间进行外部集成虽然贡献。 该项目由一个“核心”框架组成,该框架包含大约半百万行代码,由联盟维护的一堆“插件”,以及几个外部插件,而我们大多数都不是。甚至没有意识到。 目前,我们的CI正在构建核心和维护的插件。 我们面临的主要问题之一是,大多数贡献者(尤其是偶尔的贡献者)并未构建90%的可维护插件,因此,当他们提议对核心进行重构更改时(这些日子经常发生),他们在GitHub上发出拉取请求之前检查了代码是否在其计算机上编译了。 代码工作正常,他们很高兴,然后CI结束了构建,问题开始了:在由联盟维护的插件中编译失败,表明贡献者未在其计算机上构建。 该插件可能依赖于第三方库(例如CUDA),并且用户不希望,不知道该怎么做,或者只是出于硬件原因而不能编译该损坏的插件。 因此,那么-PR永远处于永远不会合并的PR的边缘-或贡献者在损坏的插件的源中抓取重命名的变量,更改代码,推入他/她的分支,等待CI会完成编译,通常会收到更多错误,并重复执行该过程,直到CI满意为止-或财团中两个已经超额预定的永久物之一提供帮助,并尝试在其计算机上修复PR。 这些选项都不可行,但我们只是不知道如何做不同。您是否曾经遇到过类似的项目情况?如果是这样,您如何处理这个问题?有没有我在这里看不到的解决方案?

3
我应该如何为(主要是)废弃的GitHub项目做出贡献?
我最近一直在尝试在GitHub中进行开源协作,并且遇到了一种情况,我对此感到好奇,这是首选的处理方式。 大约一个月前,我在GitHub上找到了一个项目库,该项目已经使用了一段时间,并且在其中找到(并修复了)一些错误。 作为与GitHub合作的最初尝试,我发现该回购似乎是最近活动量最大,修复了一个错误,添加了单元测试,推送到GitHub并发出请求的仓库。在几个小时内,我分叉的仓库的维护者接受了PR,并合并了其他也在等待中的PR。 受此刺激,我修复了另外三个bug,分别在我自己的repo的单独分支中,并分别提交了问题和请求请求。 那是一个多月前的事,从那以后,请求就一直没有动过。我分叉的存储库的用户似乎并不活跃,在过去的一年中,他在GitHub上总共贡献了7次,并且自从我提出第一个请求请求以来,该存储库就没有任何提交。 所以我的问题是: 在这种情况下如何进行?理想情况下,我想避免关闭库并在我自己的存储库中进行一堆未合并到父存储库中的更改来避免造成数据库碎片。尽管如此,我仍想继续进行错误修复并添加功能,但是如果我将所有内容合并到我的master分支中,并基于该分支建立所有新的修复程序,那么如果我分叉的仓库的维护者回来了,我就赢了。无法针对每个功能/错误修复将所有更改拆分为单独的拉取请求(我已经阅读到,拉取请求通常应该是每个功能或错误修复的一个拉取请求)。 我应该保留一个与原始存储库保持一致的分支,将所有新分支作为该分支的基础,然后将所有提交合并到我的主分支中吗?每次我需要将新更改合并到我的主分支中时,这似乎将给我留下大量的分支和越来越繁重的任务。 应对这种情况的典型方式是什么?在原始贡献者不在的情况下,一个项目将被放弃而无法审查新的请求请求,这似乎很普遍。是在这种情况下,有人应该承担起并掌舵吗?如果原始贡献者再次回来并希望再次从事该项目,则似乎会造成碎片。

6
没有许可证的开放源代码……我可以分叉吗?
几年前,有人创造了很多很棒的脚本。但是它们没有更新很长时间,现在不再需要工作(目标平台已更新,需要一些更改)。 他尚未获得任何许可证的释放。我想修复该错误(当前,许多目标用户无法使用它),并将其发布在GitHub上,最好是在公共领域风格的OSS许可下发布。我想知道法律后果是什么? 我已经发送了一封电子邮件给作者,但是(假设)他没有回复我的电子邮件。 在以下两种情况下,我们应该做什么: 如果脚本发布在私人网站上(没有任何源代码控制)。 如果脚本发布在GitHub上(没有任何许可提示)。 但是,可以清楚地看到,它似乎是开源的,意在使用/修改/以任何方式使用。

11
是否可以在不遵循最佳实践的开源项目上进行编码样式更改?
最近,我在GitHub上遇到了许多开源Ruby(或大多数是Ruby)项目,当使用诸如Rubocop之类的代码分析工具进行检查时,会造成很多冒犯。 现在,大多数此类违法行为包括使用双引号而不是单引号(未插值时),不遵循每级2个空格规则,超过80个字符的行长规则或对多行块使用{和}。 [The Ruby风格指南]推荐了最佳实践,以便现实世界中的Ruby程序员可以编写可由其他现实世界中的Ruby程序员维护的代码。〜资料来源:Ruby样式指南 尽管它们很小且易于修复,但是否适合通过修正违规并提出“拉取请求”来更改开源项目的编码风格?我承认,某些项目(例如Rails)不接受外观更改,而有些项目太大而无法一次“修复”(例如,在运行Rubocop时,Rails会产生80,000多个违规行为-不管它们有自己的一小套编码)贡献时应遵循的惯例)。毕竟,《Ruby样式指南》与诸如Rubocop之类的工具一起存在是有原因的。 人们喜欢一致性,因此对Ruby社区来说,进行此类更改通常是一件好事,对吧? [Ruby样式指南的作者]并非一无所有地提出了所有规则-它们主要是基于我作为专业软件工程师的广泛职业,以及来自Ruby社区成员和各种人的反馈和建议。高度评价的Ruby编程资源,例如“ Programming Ruby 1.9”和“ The Ruby Programming Language”。〜资料来源:Ruby样式指南 难道不是遵循社区编码风格的惯例和最佳实践基本上是在鼓励不良实践吗?

6
太早发布开源软件[关闭]
过早发布开源软件的道德责任是什么?例如,尚未完全测试的接近完成的产品。 程序员的期望是什么?等待,直到它经过完全测试,或者发布到开源,然后继续进行进一步的开发,测试和改进? 担心的是软件是开源的,并有可能为消费者带来问题。 这是没有根据的恐惧吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.