python在windows調(diào)用svn-pysvn的實現(xiàn)
作為EBS開發(fā)人員,開發(fā)工具用的多,部署代碼類型多,管理程序麻煩,操作繁瑣,一直是我最討厭的事情。部署一次程序要使用好幾個工具,改來改去,上傳下載,實在難受。
扣了一下python,打算做一款集成工具,把代碼管理、程序部署一步搞下來。中間有幾個技術(shù)難點需要打通:
1. ERP調(diào)用linux的ssh執(zhí)行shell獲得源代碼,下載到本機
2. 將源代碼結(jié)構(gòu)化存儲并放到svn下,上傳svn同步版本
3. 調(diào)用Jenkins執(zhí)行部署,將源代碼部署到正式環(huán)境
4. 該操作步驟做記錄留底
現(xiàn)在測試的就是python調(diào)用svn,上傳源代碼。
百度上面好多文章,大部分說的都是ubuntu或者centerOS的,或者就是調(diào)用os執(zhí)行cmd,我是一直沒有測通。又發(fā)現(xiàn)又說pysvn這個類是可以完美調(diào)用svn的,但是使用pycharm直接調(diào)入pysvn這個類,版本知識0.1.0,而且里面什么都沒有,和文章里說的完全不是一個東西。不得已問了下google,還真的是使用pysvn這個類,但是是.exe的安裝文件,一番折騰,缺失可行,做以下記錄。
參考文檔:Pysvn 程序員指南
pysvn的文檔:PySVN - The pythonic interface to Subversion
上面那個參考文檔內(nèi)容基本就是pysvn官網(wǎng)里面“SVN Programmer's Guide”例子的中文翻譯,說的很詳細的例子。
嗯,這個網(wǎng)址國內(nèi)也可以打開,但是我用百度是沒搜到的。
1. 下載和安裝
PySVN - The pythonic interface to Subversion
上面地址里,有download,點進去對應不同python和操作系統(tǒng)的版本,下載下來安裝就好。
我是python3.6,windows10,下載的exe文件,直接雙擊安裝就好。
默認是安裝到python的“\Lib\site-packages\pysvn”下面,這個文件夾下面有“pysvn_prog_guide.html”里面有比較全的例子可以參考使用
安裝的時候有個小插曲,我原來的pycharm里面有一個pysvn,這個pysvn安裝完成后,pycharm里面的例子還是不能用。
我就先把pycharm的pysvn刪掉了,直接在setting->Project Interpreter里面找到它,然后點右邊的減號就好
然后,我在“\Lib\site-packages\pysvn”點擊uninstall(好像是這個名字),把pysvn刪掉,再重新安裝一次,重啟pycharm,例子就可用了
我的例子(add一個文件夾,也可以是文件到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)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python自動化實現(xiàn)ODT到DOCX的批量轉(zhuǎn)換
在當今數(shù)字辦公環(huán)境中,文檔格式的兼容性問題常常令人頭疼,本文將深入探討如何利用Spire.Doc for Python庫實現(xiàn)ODT到DOCX的批量轉(zhuǎn)換,感興趣的小伙伴可以了解下2026-02-02
python 字符串轉(zhuǎn)列表 list 出現(xiàn)\ufeff的解決方法
下面小編就為大家?guī)硪黄猵ython 字符串轉(zhuǎn)列表 list 出現(xiàn)\ufeff的解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06
Python for循環(huán)及基礎(chǔ)用法詳解
這篇文章為大家介紹python for 循環(huán),它常用于遍歷字符串、列表、元組、字典、集合等序列類型,逐個獲取序列中的各個元素2019-11-11
Python報錯KeyError: ‘missing_key‘的有效解決方法
在 Python 編程中,報錯信息常常讓開發(fā)者感到困擾,其中,“KeyError: ‘missing_key’”是一個較為常見的報錯,它可能在各種數(shù)據(jù)處理和字典操作的場景中出現(xiàn),本文將深入探討這個報錯的原因,并提供多種有效的解決方法,幫助開發(fā)者快速解決此類問題2024-10-10
Python代碼集pathlib應用之獲取指定目錄下的所有文件
這篇文章主要介紹了Python代碼集pathlib應用之獲取指定目錄下的所有文件,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03

