git和hg的简化公共接口

wib的Python项目详细描述


githg的简化公共接口。

关于名字wib

这个想法是要有一个统一的接口到两个目前流行的 分布式版本控制系统(并建议合理的默认值)。这个 目的是有一个小的命令集来覆盖 不广泛使用版本控制的用户 语义上有意义的命令。

每个人都应该定期使用版本控制!

安装

$ pip install wib

如果您已经安装了WIB,请更新:

$ pip install --upgrade wib

分布式版本控制的简化视图

有三个位置需要记住:

  • 本地文件系统(无版本控制,使用标准视图 查看器)
  • 本地存储库(这通常是让用户绊倒的位置)
  • 远程存储库(我们假设它位于github.com, 它有一个很好的浏览界面。)

分布式版本控制背后的关键思想是 存储库包含所有内容,因此理论上不需要 “服务器”。但是,对于大多数新用户来说,因为本地存储库是 很难查看和浏览,这是一个不透明和混乱的混乱。我们希望 将命令限制为功能的一个子集以减少混淆。

考虑上面列出的三个位置。在 本地和远程存储库,使用一对命令updowndown命令还更新本地文件系统 自动。updown最常用于通信 和你的合著者。本地存储库背后的想法是 即使脱机也要维护版本。考虑一下情况 当你在编辑一个特定的文件,并想将其版本化时, 这是当您commita将其版本转换到存储库时。如果你有 犯了一个错误,您可以revert返回到先前提交的 版本。

命令

要了解如何使用它:

$ wib --help

命令摘要

向上/向下-使用 向上加载(反之亦然,使用向下加载)

$ wib up
$ wib down
$ wib down git@github.com:myname/myrepo.git

track/untrack-跟踪此文件/忘记跟踪此文件 文件。跟踪不会创建或删除实际文件,它只告诉 版本控制系统是否维护版本(跟踪) 文件的。

$ wib track myfile
$ wib untrack myfile

commit-将保存的更改提交到存储库。使用--name到 标签。

$ wib commit "why I am saving this version"
$ wib commit --name v0.3 "a release with cool new features"

revert-将更改的文件还原回存储库中的版本

$ wib revert myfile

status-查看更改、签入和上载了哪些文件。

$ wib status

log-查看历史记录

$ wib log

diff-查看上次签入后发生的更改。

$ wib diff myfile

启动新项目/存储库

我们建议初始化远程服务器上的存储库,例如 githubbitbucket 或者gitlab。然后复制 从服务器存储库(而不是网站)并使用down

例如,要获取此存储库的本地副本

$ wib down git@github.com:chengsoonong/wib.git

开发者注释

需要设置~/.pypirc,请参见示例this blog post

上传并发布:

PYPI测试

$ python setup.py sdist upload -r testpypi

PYPI实时

$ python setup.py sdist upload -r pypi

参考文献

这个包裹只是包裹在:

  • git
  • hg
  • git lfs(待办事项)
  • Mercurial大文件扩展名(TOdo)

长期、自动化(透明)检测和处理 二进制文件将简化用户体验。

统一接口的动机是:

  • Gitless和Santiago Perez de Rosso和Daniel Jac的论文克松, 目的、概念、错误之处和Git的重新设计,Oopsla,2016年
  • repo
  • 二进制处理 subversion

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

推荐PyPI第三方库


热门话题
DB H2和控制器的java集成测试   程序未通过if语句(Java)   java如何解决JPA更新时数据库中NOTNULL的值   3DES,Java代码结果产生不同于3DES在线工具和oracle数据库脚本的结果   java是否可以在XML中设置SwipeRefreshLayout的颜色方案?   java为什么JRBeanCollectionDataSource使用jr:List组件提供传递List的空字段?   java ScrollView只能托管一个直接子安卓   java是否有更短的代码或更简单的方法将元素添加到不同大小的多个数组中?   java为什么示例作者要硬编码正交摄影机的宽度和高度?(LibGdx僵尸鸟教程)   java不断得到非法的类型错误的开始,我如何才能纠正这一点并继续前进?   java如何获取正在运行的应用程序名称并将其与安卓上数据库中记录的名称进行匹配?   用于Java和if循环代码优化的if语句   if语句如果在JAVA中没有花括号,为什么if块可以放在另一个if块中   安卓操作系统。FileUriExposedException:file:///storage/emulated/0/test.txt通过意图暴露在应用程序之外。getData()   java索引不是错误,而是索引+索引=错误   java Android从改造调用中获取实时数据   java Tictaoe打印电路板   java Guice IoC怎么样?   java JLabel设置为文本列表项   java Hibernate MasterSubDetails映射