django存储和浏览git存储库的视图

django-gitstorage的Python项目详细描述


一个django应用程序,用于浏览git存储库并在其上构建web应用程序。

gitstorage是:

  • 一个djangostorage来浏览存储库的内容(您在工作副本中看到的内容) 从光秃秃的存储库(没有工作副本);
  • Models以丰富git对象,即向blob添加元数据并允许访问树
  • MIXIN ^ {A3}将与基于类的视图相结合,以浏览存储库并添加或移除对象。 在存储库的顶部;
  • Management commands

gitstorage构建在PyGit2libgit2之上,它不从命令行调用git。

Storage

Django存储支持大部分存储API:打开、保存、存在、Listdir…缺少的特征包括MTIME, ctime和atime,因为git不直接存储这些值。

存储空间和任何git存储库一样有限。它是为一个作家和许多读者设计的。同时发生的 写作甚至没有经过测试。也没有努力优化读取访问。你的里程可能不同。

存储是一个有趣的概念证明,但即使是git storage的其余部分也直接加载git对象。

Models

BlobMetadata

将元数据添加到blob,目前仅限mimetype。

TreePermission

默认情况下只允许管理员用户。将对树及其blob(但不是其子树)的访问权共享给普通用户。

Views

这些视图被设计为基于类的视图的基础,如TeMtPaveVIEW和FraveVIEW, 以及你自己的商业逻辑。

RepositoryView

分派到专用于每个git对象类型(即blob和tree)的视图的主视图。

实际上不是混合函数,因为它是功能性的,但专用视图是混音(见下文)。

TreeViewMixin

树的默认视图,列出其内容。

BlobViewMixin

blob的默认视图显示其信息。

PreviewViewMixin

如果可能,请在浏览器中预览当前blob,否则请下载。

DownloadViewMixin

强制下载当前blob。

DeleteViewMixin

删除当前blob。

UploadViewMixin

将新文件上载到当前树(作为blob)。

SharesViewMixin

当前树权限列表并删除所选权限。

ShareViewMixin

通过添加树权限将对当前树的访问权共享给用户。

Management Commands

sync blobmetadata

浏览存储库以计算每个未知blob的元数据。

在将新提交推送到存储库之后调用,最好是从git钩子调用。

不处理孤立blob的元数据清理。

Tests

一个最小的django项目被用来运行测试套件。尝试make coverage(在编写本文时为100%)。

Migrations

Gitstorage使用南方。

License

gitstorage是版权所有的bors有限公司,其想法来自pygit2项目。

gitstorage是在gnu通用公共许可版本3下发布的。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
开始编码器(Java)验证字符串输入,并在输入正确的输入后结束循环   java如何修复请求属性的跨站点脚本?   java打印密码生成器   带有数组或字符串的java JSON解析实例类型   java通过类使用jsoup从页面获取值   java如何更改微调器后面的背景?   java如何在libgdx(风险游戏)中定义可高亮显示、可单击的自定义对象   java反射式地创建一个匿名类   java如何在Spring应用程序(类内)中处理国际化   java获取“ShortenedMonth/dd”格式的日期   java菱形运算符ArrayList   java如何按列和行添加到for循环中的矩形数组   在Java中查找数组中彼此距离最小的两个数字   JAVA中JTextField内的swing设置IP地址   java如何更新代码布局   带Mac的java开放JAR