如何创建.bat文件实现从Azure Repos拉取代码并在VM上运行
实现Azure DevOps代码拉取与自动运行的BAT脚本方案
前提条件
- 所有目标VM已安装Git和Python,且两者均已添加到系统环境变量(命令行直接输入
git、python可正常执行) - 已为VM配置Azure DevOps仓库的访问权限:推荐使用个人访问令牌(PAT),权限仅需勾选"代码读取"即可
完整BAT脚本
@echo off chcp 65001 >nul :: 配置区域 - 请根据实际情况修改以下参数 set REPO_URL=https://dev.azure.com/[你的组织名]/[你的项目名]/_git/[你的仓库名] set LOCAL_CODE_PATH=C:\AzureDevOps_Code\MyPythonProject set PYTHON_MAIN_SCRIPT=main.py set AZURE_PAT=你的Azure DevOps个人访问令牌 :: 拉取/更新代码逻辑 echo 正在同步最新代码... if not exist "%LOCAL_CODE_PATH%" ( :: 首次运行,克隆仓库 git clone https://%AZURE_PAT%@%REPO_URL:~8% "%LOCAL_CODE_PATH%" ) else ( :: 已有本地仓库,拉取最新代码 cd "%LOCAL_CODE_PATH%" git pull origin main // 若默认分支不是main,替换为实际分支名,如master ) :: 检查代码同步状态 if %errorlevel% neq 0 ( echo 代码同步失败,请检查网络、权限或仓库地址 pause exit /b 1 ) :: 运行Python脚本 echo 启动Python程序... cd "%LOCAL_CODE_PATH%" python "%PYTHON_MAIN_SCRIPT%" echo 程序运行结束 pause
使用步骤
- 将上述代码保存为
SyncAndRunCode.bat文件 - 修改脚本中配置区域的参数为你的实际信息
- 在每台目标VM上双击运行该BAT文件,即可自动完成代码同步与程序启动
额外说明
- 若Python项目依赖虚拟环境,可在运行脚本前添加虚拟环境激活逻辑:
cd "%LOCAL_CODE_PATH%" call venv\Scripts\activate.bat python "%PYTHON_MAIN_SCRIPT%" deactivate - PAT需妥善保管,避免泄露;建议为不同VM创建独立的低权限PAT
- 确保VM网络可正常访问Azure DevOps服务,内网VM需打通对应网络链路
内容的提问来源于stack exchange,提问作者bohontw
相关产品推荐
相关产品推荐

