企业颠覆框架

enversion的Python项目详细描述



什么是环境?

enversion是一个服务器端工具,位于subversion
存储库的前面并验证传入的提交。它可以检测到各种各样的有问题的提交([over 80](/lib/evn/constants.py l34))并在预提交阶段阻止它们。


enversion是专门为企业级subversion部署而设计的,
它们的使用模式与典型的开源subversion存储库有很大不同。

ki](/../../wiki/)有关详细信息:
-[教程1-创建新的、启用环境的Subversion存储库](/../../wiki/tutorial-1-new-repository)
-[教程2-针对现有Subversion存储库启用环境](/../../wiki/tutorial-2-existing-repository)

安装和快速入门:备忘单
-需要:
````
%wget http://repo.continum.io/miniconda/miniconda/miniconda-3.3.0-linux-x86-linux-x86-64.sh
%bash miniconda-3.3.0-linux-x86-64.sh
%source~/.bashrc
%conda-config-conda-config-add channels-enversion
`````
`````
````
>`````
``
```````>>%conda-conda-install-enversion
````````````
/>要更新到最新版本:
```
%conda upd要创建具有不同版本的独立环境:
````
%conda create-n evn-0.2.5.5 enversion=0.2.5
%conda create-n evn-0.2.5.5 enversion=0.2.5
%conda create-n evn-0.2.5
````
`````
%conda create-n evn-0.2.6 enversion=0.2.6
%sourceactivatevn-0.2.2.6
```````````

%conda create-n-n-0.2.5
````````````>创建新的Subversion存储库Automatically Pro受环境保护:
```
%evnadmin create foo
```


以验证环境是否已安装并正在工作:
````
%evnadmin show repo hook status test
+??——|(/home/evnadm/test)存在吗?有效吗?EXE?CNFGRD?EnBLD?RDB?|
>-----------------------------------------+
--------------------------------------------------------------
------------------------------------------------------------------------------------Y Y N
预锁|Y n
提交后y-y| Y | Y | N |
| pre-revprop-change| Y | - | Y | Y | Y | N |
|=====================|=========|========|======|=========|========|======|
| evn.sh| Y | Y | Y | 9/9 | 9/9 | - |
+-------------------------------------------------------------------------+
```

要针对现有存储库启用环境版本,首先分析它:
```
%evnadmin analyze myrepo
````

AL 2-启用针对现有Subversion存储库的环境](/../../wiki/tutorial-2-existing-repository)

\继续.io)。

>;已经安装了"conda"?环境安装很简单:
>;```
>;%coNDA配置--添加通道环境
>;%conda安装环境
>;```

ttp://conda.pydata.org/miniconda.html miniconda)
(18MB到30MB取决于平台)。

[水蟒](https://store.continuum.io/cshop/anaconda/)是一个成熟的,
完全免费的、面向企业的大型数据的python发行版科学计算。[它附带了超过125个最流行的python软件包,用于科学、数学、工程和数据分析](http://docs.continuum.io/anaconda/pkgs.html)。

[miniconda](http://conda.pydata.org/miniconda.html)是一个简单的小蟒蛇版本,它只包括python软件包的一个子集
是"conda"所必需的。

>;pro提示:已安装miniconda,但要试用anaconda吗?简单运行:
>;`````
>;%conda install anaconda install anaconda
>;`````


35 ; minconda安装(Linux)minconda installa安装(Linux)




/>
/>
--2014-03-25 08:12:37--http://repo.continuum.io/miniconda/miniconda-3.3.0-linux-x86_.sh
正在解析repo.continuum.io…72.21.195.181
连接到回购连续体IO 72.21.195.181:80…已连接。
已发送HTTP请求,正在等待响应…200确定
长度:1999899995(19m)[application/x-sh]
保存到:`mininconda-3.3.0-linux-x86-linux-x86-64.sh'



<100%[=============================================================19998995 1.81m/s 9.2s


2014-03-2014-03-25-03-08-25 08:12:12:50(2.079999999995(19989995(19999999-3.3.0-linux-x86_64.sh'已保存[19998995/19998995]

[evnadm@centos5x64~]$
```


下载后,只需通过bash执行文件即可安装:

```
[evnadm@centos5x64~]$bash miniconda-3.3.0-linux-x86-64.sh

过程中,请检查许可协议。
请按回车键继续
>;
==============================================================================><;snip>;


1。在派生软件的所有副本中都包含此EULA的副本。
2.在用水蟒制造的产品的广告和标签材料中,您是否批准许可条款?[是否]
[否]>;>>是


miniconda现在将安装到此位置:
/home/evnadm/miniconda

-按enter确认位置
-按ctrl-c中止安装
-或在下面指定其他位置

[/home/evnadm/miniconda]>;gt;
前缀=/home/evnadm/miniconda
安装:python-2.7.6-1…
安装:openssl-1.0.1c-0…
安装:pycosat-0.6.0-py27-0…
安装:pyyaml-3.10-py27-u 0…
安装:readline-6.2-2…
安装:sqlite-3.8.4.1-0…
安装:system-5.8-1…
安装:tk-8.5.13-0…
安装:yaml-0.1.4-0…
安装:zlib-1.2.7-0…
安装:conda-3.3.0-py27_0…
python 2.7.6::continuum analytics,inc.
创建默认环境…
安装完成。
是否希望安装程序预先设置miniconda安装位置
到/home/evnadm/.bashrc中的路径?[是否]
[否]>;>是

prepending path=/home/evnadm/miniconda/bin to path in/home/evnadm/.bashrc
将备份到/home/evnadm/.bashrc miniconda.bak


米尼康达!
```

/>对conda的访问:

`````
[evnadm@centos5x64@centos5x64~]$source.bashrc
[evnadm@centos5x64~]$whwhwhwhconda
~/mininconda/bin/conda
```


>然后简单运行以下命令安装环境:
`````
``````
````>[evnadm@centos5x64~]$conda instainstainstainstainstaenversion取包GE元数据:…
解决包规范:。
要在环境/home/evnadm/miniconda中安装的包计划:


将下载以下包:

151 kb
expat-2.1.0 0 307 kb
httpd-2.2.26 0 4.3 mb
pcre-8.31 0 535 kb
serf-1.2.1 0 307 kb
sqlite-3.7.13 01.9 MB
Subversion-1.8.8 Py27_0 11.8 MB
SWIG-2.0.12 Py27_0 1.8 MB
——包build
---------------
conda-3.3.0 py27_0
sqlite-3.8.4.1 0


以下包将被链接:

包build
-|——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
expat-2.1.0 0硬链接
httpd-2.2.26 0硬链接
pcre-8.31 0硬链接
serf-1.2.1 0硬链接
sqlite-3.7.13 0硬链接
subversion-1.8.8 py27_0硬链接
swig-2.0.12 py27_0硬链接

继续([y]/n)?y

Fetching packages ...
enversion-0.2.5-py27_1.tar.bz2 100% |################| Time: 0:00:00 1.48 MB/s
expat-2.1.0-0.tar.bz2 100% |#########################| Time: 0:00:00 1.51 MB/s
httpd-2.2.26-0.tar.bz2 100% |########################| Time: 0:00:02 2.12 MB/s
pcre-8.31-0.tar.bz2 100% |###########################| Time: 0:00:00 1.86 MB/s
serf-1.2.1-0.tar.bz2 100% |##########################| Time: 0:00:00 1.39 MB/s
sqlite-3.7.13-0.tar.bz2 100% |#######################| Time: 0:00:01 1.89 MB/s
subversion-1.8.8-py27_0.tar.bz2 100% |###############| Time: 0:00:06 2.06 MB/s
swig-2.0.12-py27_0.tar.bz2 100% |####################| Time: 0:00:00 1.97 MB/s
Extracting packages ...
[ COMPLETE ] |##################################################| 100%
Unlinking packages ...
[ COMPLETE ] |##################################################| 100%
Linking packages ...
[ COMPLETE ] |##################################################| 100%
[evnadm@centos5x64~]$
```


这将安装enversion,它通过命令行程序
``evnadmin``和所有必需的依赖项进行管理。注意,整个安装
都包含在miniconda安装中,确保没有任何
与可能安装在您的
系统。

另外,由于enversion conda包管理所有依赖项,因此不需要根访问,也不需要任何基本系统RPM依赖项。这是conda是推荐安装技术的原因之一。

````
[evnadm@centos5x64~]$哪个svn
~/miniconda/bin/svn
[evnadm@centos5x64~]$哪个evnadmin
~/miniconda/bin/evnadmin
[evnadm@centos5x64~]$evnadmin create test
[evnadm@centos5x64~]]$evnadmin show repo hook status测试-已存在的名称·································有效吗?EXE?CNFGRD?EnBLD?RDB?|
+——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————|Y Y Y 124;年| - | Y | Y | Y | N |
| post-commit| Y | - | Y | Y | Y | N |
| pre-revprop-change| Y | - | Y | Y | Y | N |
|=====================|=========|========|======|=========|========|======|
| evn.sh y y y 9/9 9/9-版本
获取包元数据:…
解决包规范:。
要在environment/home/evnadm/miniconda中安装的包计划:

-|————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————环境——0.2.5|py27_1


将链接以下包:


包构建
----------
环境-0.2.6 py27_0硬链接


继续([y]/n)?y

Fetching packages ...
enversion-0.2.6-py27_0.tar.bz2 100% |################| Time: 0:00:00 421.03 kB/s
Extracting packages ...
[ COMPLETE ] |##################################################| 100%
Unlinking packages ...
[ COMPLETE ] |##################################################| 100%
Linking packages ...
[ COMPLETE ] |##################################################| 100%
[evnadm@centos5x64 ~]$ evnadmin version
0.2.6
```

If there are no new versions available:

```
[evnadm@centos5x64~]$conda update enversion
正在获取包元数据:…
所有请求的包都已安装。
erage``conda``支持独立环境安装不同版本的enversion。下面的示例创建两个完全隔离的环境,分别命名为"enversion-0.2.5"和"enversion-0.2.6"(分别用于v0.2.5和v0.2.6):

```
[evnadm@centos5x64~]$conda create-n enversion-0.2.5 enversion=0.2.5
获取包元数据:…
解决包的特定性NS:.
用于在环境中安装的包计划/home/evnadm/miniconda/envs/enversion-0.2.5:

将链接以下包:

包生成|0硬链接
apr-iconv-1.2.1 0硬链接
apr-util-1.5.3 0硬链接
enversion-0.2.5 py27_1硬链接
expat-2.1.0 0硬链接
httpd-2.2.26 0硬链接
openssl-1.0.1c 0硬链接
pcre-8.31 0硬链接
python-2.7.6 1硬链接
readline-6.2|2硬链接
serf-1.2.1 0硬链接
sqlite-3.7.13 0硬链接
subversion-1.8.8 py27 0硬链接
swig-2.0.12 py27 0硬链接
system-5.8 1硬链接
tk-8.5.13 0硬链接
zlib-1.2.7 0硬链接

继续([y]/n)?y

Linking packages ...
[ COMPLETE ] |##################################################| 100%
#
# To activate this environment, use:
# $ source activate enversion-0.2.5
#
# To deactivate this environment, use:
# $ source deactivate
#
[evnadm@centos5x64~]$source activate enversion-0.2.5
丢弃/home/evnadm/miniconda/bin从路径
前置/home/evnadm/miniconda/envs/enversion-0.2.5/bin到路径
(enversion-0.2.5)[evnadm@centos5x64~]$哪个evnadmin
~/miniconda/envs/enversion-0.2.5/bin/evnadmin
(enversion-0.2.5)[evnadm@centos5x64~]$evnadmin version
0.2.5
(enversion-0.2.5)[evnadm@centos5x64~]$source deactivate
从路径
[evnadm@centos5x64~]$conda create-n enversion-0.2.6 enversion=0.2.6
获取包元数据:…
solving package specifications:.
用于在environment/home/evnadm/miniconda/envs/enversion-0.2.6中安装的包计划:


将链接以下包:

package build-1.5.0 0硬链接
apr-iconv-1.2.1 0硬链接
apr-util-1.5.3 0硬链接
enversion-0.2.6 py27 0硬链接
expat-2.1.0|0硬链接
httpd-2.2.26 0硬链接
openssl-1.0.1c 0硬链接
pcre-8.31 0硬链接
python-2.7.6 1硬链接
readline-6.2 2硬链接
serf-1.2.1 0硬链接
sqlite-3.7.13 0硬链接
subversion-1.8.8 py27 u 0硬链接
swig-2.0.12 py27个硬链接
系统-5.8 1个硬链接
tk-8.5.13 0个硬链接
zlib-1.2.7|0硬链接

继续([y]/n)?y

Linking packages ...
[ COMPLETE ] |##################################################| 100%
#
# To activate this environment, use:
# $ source activate enversion-0.2.6
#
# To deactivate this environment, use:
# $ source deactivate
#
[evnadm@centos5x64~]$source activate enversion-0.2.6
丢弃/home/evnadm/miniconda/bin从路径
前置/home/evnadm/miniconda/envs/enversion-0.2.6/bin到路径
(enversion-0.2.6)[evnadm@centos5x64~]$哪个evnadmin
~/miniconda/envs/enversion-0.2.6/bin/evnadmin
(enversion-0.2.6)[evnadm@centos5x64~]$evnadmin版本
0.2.6
(enversion-0.2.6)[evnadm@centos5x64~]$
````

``````
` ` ` ` ` ` ` ` ` ` ` ` `
evnadmin create foo
svn mkdir-m"初始化存储库"文件://`pwd`/foo/trunk
svn mkdir-m"初始化存储库"svn mkdir-m"初始化存储库"svn mkdir-mkdir-m"初始化存储库"文件://` pwdpwd d`/foo/分支
svn mkdir-m"初始化存储库"。file://`pwd`/foo/tags
svn cp-m"分支主干到1.x."file://`pwd`/foo/trunk\
file://`pwd`/foo/branches/1.x
svn cp-m"分支主干到2.x."file://`pwd`/foo/trunk\
文件://`pwd`/foo/branches/2.x
svn cp-m"tagging 1.0."文件://`pwd`/foo/trunk\
文件://`pwd`/foo/tags/1.0
``````

根跟踪:
`````
%evnadmin show roots foo
显示r6存储库"foo"的根:
{'/branchs/1.x/':{'created':4},
'/branchs/2.x/':{created':5},
'/tags/1.0/':{copied_from':('/trunk/',5),
'copies':{},
'created':6,
'creation_method':'copied',
'errors':[]},
'/trunk/':{'created':1}
%
````

单个根信息:
```
%evnadmin根信息/branchs/1.x/foo
'/branchs/1.x/':{
'副本':{},
'复制自':('/trunk/',3),
'创建方法':'复制',
'错误':[],
'创建':4,
}
```

```
%evnadmin根信息/trunk/foo/trunk/trunk/foo
'/trunk/trunk/':{
'拷贝数:{
>3:[('/branch/1.x/'/1.x/',4],
>4:[('/branch/2.x/',5],
>5:[('/tag/1.0/'/1.0/',6]
},
}},
'创建方法:'crecreate',
'创建:1,
>`````````
```````

3:/>
e扩展保护[针对超过80种类型的不希望的提交](/lib/evn/constants.py l34):

````
%svn co file://`pwd`/foo foo.wc
%cd foo.wc
%svn mkdir branches/3.x
%svn ci-m"手动创建目录"。
添加分支/3.x
svn:e165001:提交失败(详细信息如下):
svn:e165001:提交被预提交挂钩(退出代码1)阻止,输出:
错误:错误:
{'/branches/3.x/':['手动创建的分支目录]}


ORT工作人员:

%svn ci-m"删除标记"。标记/1.0
删除标记/1.0
svn:e165001:提交失败(详细信息如下):
svn:e165001:由预提交挂钩(退出代码1)阻止的提交,输出:
错误:错误:
{'/tags/1.0/':['tag removed']}

r警告可以由以下存储库管理员强制通过:<;none>;或支持人员:
````

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

推荐PyPI第三方库


热门话题
java为什么@DELETE REST不起作用?   带有JPA2的java表值参数。1和Hibernate,Sql Server   如何将Java类添加到Xamarin VS2017项目   绘制多边形时出现java空指针异常   java Apache WebClient 303状态未重定向   java如何用一组字符串数组从数据库中获取数据   java是否可以使用Google Drive API向文件中添加脚本?   java组织。阿帕奇。贾斯珀。JspC jar文件下载   java在整个JSON映射中将单个值作为JSON流   通过命令行将文件输入到java   java rs.next()总是返回false   java标记异常,通知调用方利用异常消息   java Spring YML数组属性为空