用于管理大量github存储库的cli工具
repobee的Python项目详细描述
RepoBee-在GitHub和GitLab上管理Git存储库的工具
Important: RepoBee v2.0.0 is out now! There are some breaking changes, see the release notes for details
概述
repobee是一个用于管理大量数据的命令行界面(cli)工具
在github和gitlab平台上的git存储库,包括云和
自我托管最基本的用例是自动生成学生
基于master(即模板)存储库的存储库,可以包含
例如指令和框架代码。给一个或多个主人
存储库,为学生或小组生成这些存储库的副本
命令离开!不过,这只是表面现象:RepoBee也有
更新学生报告的功能(也许你忘了什么?),批次
克隆学生报告(修改任务时方便),给学生
只读访问其他学生的回购供同行评审,更多!
还有一个plugin system在
允许python程序员以各种方式扩展repobee的地方,并结束
用户可以简单地安装其他人创建的插件。这种插件的一个例子
是^{
repobee目前正用于 KTH Royal Technical Institute of Technology。这个 课程有大约200名学生和数千个知识库, 允许我们在相当大的范围内测试repobee。
在学术背景下引用RepoBee
如果您想在论文中引用repobee,请引用以下论文:
Simon Larsén and Richard Glassey. 2019. RepoBee: Developing Tool Support for Courses using Git/GitHub. In Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science Education (ITiCSE '19). ACM, New York, NY, USA, 534-540. DOI: https://doi.org/10.1145/3304221.3319784
特色亮点
- 兼容GitHub和GitLab(云和自托管)
- GitLab支持在alpha中,并且正在不断更新,请参见 GitLab docs用于 细节。
- 基于主(模板)存储库为学生生成存储库
- 批量克隆学生存储库
- 同行评议的特点:让学生阅读其他学生的 要进行代码复查的存储库。一旦审查完成,就可以轻松撤消读取权限 完成。
- 支持小组作业(每个存储库有多个学生)
- 打开、关闭并列出选定学生存储库的问题
- 用 plugin system
- 在github/gitlab端只需要很少的配置
- 唯一的要求是拥有一个具有私有存储库的组织/组 能力!
- 不需要本地配置
- 尽管setting a few defaults 强烈推荐
安装
repobee在pypi上,所以python3 -m pip install repobee
应该能做到。见
install instructions
更详细的说明。
开始
开始使用repobee的最好方法是 Docs,你(和其他人 会发现 user guide。 它通过实例介绍了repobee的各种命令的使用, 应该让你不费吹灰之力就走上正确的道路。
为什么是repobee?
repobee是在kth皇家技术学院开发的,目的是帮助
教师和助教管理GitHub存储库它是教师的工具
老师,我们在日常工作中使用它。repobee的所有功能
正被我们积极利用,所以也应该对其他老师有用。
对于新手来说,RepoBee提供了一个自以为是的工作流程,很容易采用,
而更高级的用户可以利用插件系统来增强他们的
经验。我们还认识到锁定是一个问题,因此
与github和gitlab兼容,并希望扩展支持
在某个时刻咬人。但你真正想要的可能是
repobee可以做到,下面是repobee的完整功能列表
由--help
选项描述(不包括插件!).
$ repobee -h
usage: repobee [-h] [-v]
{show-config,setup,update,migrate,clone,open-issues,
close-issues,list-issues,assign-reviews,
end-reviews,check-reviews,verify-settings}
...
A CLI tool for administrating large amounts of git repositories on GitHub and
GitLab instances. See the full documentation at https://repobee.readthedocs.io
positional arguments:
{setup,update,migrate,clone,open-issues,close-issues,list-issues,assign-reviews,end-reviews,check-reviews,show-config,verify-settings,config-wizard}
setup Setup student repos.
update Update existing student repos.
migrate Migrate repositories into the target organization.
clone Clone student repos.
open-issues Open issues in student repos.
close-issues Close issues in student repos.
list-issues List issues in student repos.
assign-reviews Assign students to peer review each others' repos.
check-reviews Check which students have opened peer review issues.
end-reviews Delete review allocations created by `assign-reviews`.
DESTRUCTIVE ACTION: read help section before using.
show-config Show the configuration file
verify-settings Verify core settings.
config-wizard Interactive configuration wizard to set up the config
file.
optional arguments:
-h, --help show this help message and exit
-v, --version Display version info
路线图
截至2018年12月17日,repobee的cli是一个稳定的版本,并坚持Semantic Versioning 2.0.0内部结构 RepoBee的不遵循此版本控制,因此使用RepoBee作为库 不推荐。
插件系统被认为处于alpha阶段,因为它已经看到了很多 比其他cli使用更少的实时操作。功能不太可能 但是当新的用例出现时,钩子可能会被修改,因为 repobee需要修改。如果您开发了一个插件,请与我们联系,以便 如果对 插件系统。
即将推出的功能
还有很多东西等着RepoBee下面是一个主要的路线图 正在开发的功能
Feature | Status | ETA |
---|---|---|
Full support for GitLab | Work in progress (See docs) | Late 2019 |
Video tutorials | Planning | August 2019 |
GUI | Planning | Late 2019 |
许可证
这个软件是根据麻省理工学院的许可证授权的。见LICENSE 详细信息请归档。