python在windows調(diào)用svn-pysvn的實(shí)現(xiàn)
作為EBS開發(fā)人員,開發(fā)工具用的多,部署代碼類型多,管理程序麻煩,操作繁瑣,一直是我最討厭的事情。部署一次程序要使用好幾個(gè)工具,改來改去,上傳下載,實(shí)在難受。
扣了一下python,打算做一款集成工具,把代碼管理、程序部署一步搞下來。中間有幾個(gè)技術(shù)難點(diǎn)需要打通:
1. ERP調(diào)用linux的ssh執(zhí)行shell獲得源代碼,下載到本機(jī)
2. 將源代碼結(jié)構(gòu)化存儲(chǔ)并放到svn下,上傳svn同步版本
3. 調(diào)用Jenkins執(zhí)行部署,將源代碼部署到正式環(huán)境
4. 該操作步驟做記錄留底
現(xiàn)在測(cè)試的就是python調(diào)用svn,上傳源代碼。
百度上面好多文章,大部分說的都是ubuntu或者centerOS的,或者就是調(diào)用os執(zhí)行cmd,我是一直沒有測(cè)通。又發(fā)現(xiàn)又說pysvn這個(gè)類是可以完美調(diào)用svn的,但是使用pycharm直接調(diào)入pysvn這個(gè)類,版本知識(shí)0.1.0,而且里面什么都沒有,和文章里說的完全不是一個(gè)東西。不得已翻墻問了下google,還真的是使用pysvn這個(gè)類,但是是.exe的安裝文件,一番折騰,缺失可行,做以下記錄。
參考文檔:Pysvn 程序員指南
pysvn的文檔:PySVN - The pythonic interface to Subversion
上面那個(gè)參考文檔內(nèi)容基本就是pysvn官網(wǎng)里面“SVN Programmer's Guide”例子的中文翻譯,說的很詳細(xì)的例子。
嗯,這個(gè)網(wǎng)址國內(nèi)也可以打開,但是我用百度是沒搜到的。
1. 下載和安裝
PySVN - The pythonic interface to Subversion
上面地址里,有download,點(diǎn)進(jìn)去對(duì)應(yīng)不同python和操作系統(tǒng)的版本,下載下來安裝就好。
我是python3.6,windows10,下載的exe文件,直接雙擊安裝就好。
默認(rèn)是安裝到python的“\Lib\site-packages\pysvn”下面,這個(gè)文件夾下面有“pysvn_prog_guide.html”里面有比較全的例子可以參考使用
安裝的時(shí)候有個(gè)小插曲,我原來的pycharm里面有一個(gè)pysvn,這個(gè)pysvn安裝完成后,pycharm里面的例子還是不能用。
我就先把pycharm的pysvn刪掉了,直接在setting->Project Interpreter里面找到它,然后點(diǎn)右邊的減號(hào)就好
然后,我在“\Lib\site-packages\pysvn”點(diǎn)擊uninstall(好像是這個(gè)名字),把pysvn刪掉,再重新安裝一次,重啟pycharm,例子就可用了
我的例子(add一個(gè)文件夾,也可以是文件到svn,并且commit)
import pysvn # write a file foo.txt # f = file('./examples/pysvn/foo.txt', 'w') # f.write('Sample versioned file via pithon\n') # f.close() client = pysvn.Client() #schedule the addition; # the working copy will now track the file as a scheduled change client.add(r'D:\dev_home\EBS\EBS_SVN1\DEV_LIST\Migration\XXCUS\BRAYDEN20230213001xx1') #committing the change actually adds the file to the repository client.checkin([r'D:\dev_home\EBS\EBS_SVN1\DEV_LIST\Migration\XXCUS\BRAYDEN20230213001xx1'], 'Adding a sample file')
查看svn的log是成功了的。
到此這篇關(guān)于python在windows調(diào)用svn-pysvn的文章就介紹到這了,更多相關(guān)python在windows調(diào)用svn-pysvn內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Pytorch實(shí)現(xiàn)tensor序列化和并行化的示例詳解
這篇文章主要介紹了Pytorch實(shí)現(xiàn)tensor序列化和并行化,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,感興趣的同學(xué)們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-12-12python 循環(huán)結(jié)構(gòu)練習(xí)題
這篇文章主要給大家分享的是python 循環(huán)結(jié)構(gòu)練習(xí)題,求兩個(gè)數(shù)最大公約數(shù)、整數(shù)反轉(zhuǎn):如12345,輸出54321等多個(gè)練習(xí)題,需要的朋友可以參考一下2021-11-11Python?OpenCV的基本使用及相關(guān)函數(shù)
這篇文章主要介紹了Python-OpenCV的基本使用和相關(guān)函數(shù)介紹,主要包括圖像的讀取保存圖像展示問題,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-05-05Python3 ffmpeg視頻轉(zhuǎn)換工具使用方法解析
這篇文章主要介紹了Python3 ffmpeg視頻轉(zhuǎn)換工具使用方法解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08python實(shí)現(xiàn)發(fā)送和獲取手機(jī)短信驗(yàn)證碼
這篇文章主要介紹了python實(shí)現(xiàn)發(fā)送和獲取手機(jī)短信驗(yàn)證碼的相關(guān)資料,講解了python如何解決接口測(cè)試獲取手機(jī)驗(yàn)證碼問題,感興趣的小伙伴們可以參考一下2016-01-01