简体   繁体   English

在GitHub上发布同一软件包的两个版本的最佳方法是什么?

[英]What's the best way to release two versions of the same software package on GitHub?

A collaborator of mine wrote a software package in Python 2.7 , took advantage of it to run some tests and obtain some scientific results. 我的一个合作者用Python 2.7编写了一个软件包,利用它来运行一些测试并获得一些科学结果。 We wrote together a paper about the methods he developed and the results he obtained. 我们一起写了一篇关于他开发的方法和他获得的结果的论文。 Everything worked out well so he recently put this package publically available on his GitHub webpage. 一切顺利,因此他最近在GitHub网页上公开提供了此软件包。

Then I thought it would have been useful to have a Python 3.5 version of that package. 然后我认为拥有该包的Python 3.5版本会很有用。 Therefore I downloaded the original software and made the proper changes to have it working on Python 3.5. 因此,我下载了原始软件并进行了适当的更改,以使其能够在Python 3.5上运行。

Now I don't know how to properly release this Python 3.5 package. 现在,我不知道如何正确发布此Python 3.5软件包。

I envision three possibilities: 我设想了三种可能性:

  1. Should I put it on his original GitHub project repository ? 我应该把它放在他最初的GitHub项目存储库中吗? This option would lead to some confusion, because people would have to download both the Python 2.7 and the Python 3.5 code. 这个选项会引起一些混乱,因为人们必须同时下载Python 2.7和Python 3.5代码。

  2. Should I create a new repository only for my Python 3.5 package, in addition to the Python 2.7 one released by my collaborator? 除了我的协作者发布的Python 2.7 之外 ,我是否应该仅为我的Python 3.5包创建一个新的存储库 This option would lead to the existence of two running code repositories, and to some confusion as well, because people might not know which is the "official one" to use. 此选项将导致存在两个正在运行的代码存储库,并且还会造成一些混乱,因为人们可能不知道使用哪个是“正式的”。

  3. Should I create a new repository only for my Python 3.5 package, and ask my collaborator to delete his Python 2.7 repository? 我是否应该仅为我的Python 3.5软件包创建一个新的存储库 ,并要求我的协作者删除其Python 2.7存储库? This option would make our paper inconsistent, because it states that tests were done with Python 2.7. 此选项会使我们的论文前后矛盾,因为它指出测试是使用Python 2.7完成的。

Do you envision any other option I did not include? 您是否设想我没有其他选择?

Do you have any suggestion? 你有什么建议吗?

I think number 1. and 2. should both work as long as you provide enough details in the README.md file in the repository. 我认为编号1和2都应该起作用,只要您在存储库的README.md文件中提供足够的详细信息即可。

In case of option 1, you should ask your collaborator to add you as a collaborator to the repository. 对于选项1,您应该要求您的协作者将您作为协作者添加到存储库中。 In case of number 2, you should definitely cross-link each other's repositories in your README-files respectively. 如果是数字2,则您绝对应该分别在README文件中交叉链接彼此的存储库。

I'd definitely add a requirements.txt file for each python version so that the users can conveniently install your dependencies with pip install -r requirements.txt or pip3 install -r requirements.txt . 我肯定会为每个python版本添加一个requirements.txt文件,以便用户可以使用pip install -r requirements.txtpip3 install -r requirements.txt方便地安装依赖项。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 使用 PyPi 发行版 package 大型文件集的最佳方法是什么? - What is the best way to package large filesets with a PyPi release? 在两个不同版本的 Python 上安装相同的 package - Install the same package on two different versions of Python 用相同的修改日期和时间重命名文件的最佳方法是什么? - What's the best way to rename files with the same modified date and time? 嵌套具有相同迭代次数的循环的最佳方法是什么? - What's the best way of nesting a loop with the same number of iterations? 管理来自同一个 API 的多个请求的最佳方法是什么? - What's the best way to manage many requests from the same API? 找到两个字符串之间交集的最佳方法是什么? - What's the best way to find the intersection between two strings? 连接这两个Django模型的最佳方法是什么 - What's the best way to connect these two Django models 在Python中,获取二维最接近整数的最佳方法是什么? - In Python, what's the best way to get the closest integers for two dimensions? 在没有pygame的情况下监听键保持,键按下和键释放事件的最佳方法是什么 - What's the best way to listen key hold, key press and key release events without pygame github上Python包的自述文件的格式是什么? - What format for a Python package's README on github?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM