是否可以在应用程序服务器上设置 git 客户端以自动进行版本控制并将配置文件推送到 Azure Repo?
Posted
技术标签:
【中文标题】是否可以在应用程序服务器上设置 git 客户端以自动进行版本控制并将配置文件推送到 Azure Repo?【英文标题】:Is it possible to set up a git client on an application server to automatically version control and push configuration files to an Azure Repo? 【发布时间】:2020-09-06 01:06:38 【问题描述】:我们有一个机器学习和分析平台,允许用户构建和组合数据管道、单/多变量分析和导入的 python 模型。这些存储为配置文件,可以导出为 json 或文本。与其强制用户手动导出文件并上传/提交到远程仓库,是否可以在托管应用程序和配置文件的服务器上安装 git 客户端以自动上传/提交更新的文件到远程仓库?
【问题讨论】:
嗨,您有机会查看以下解决方法吗?效果如何? 【参考方案1】:可以自动提交文件更改并将其推送到远程仓库。
如果应用程序托管在 linux 服务器上,您可以使用inotifywait。您可能需要 personal access token 才能推送到 azure repo。
inotifywait -q -m -e CLOSE_WRITE --format="git commit -m 'auto commit' %w && git push https://PersonalAccessToken@dev.azure.com/path/to/azurerepo --all" <<file>> | bash
对于windows系统,您可以编写一个包含git命令的批处理文件,并使用计划任务自动运行该批处理文件。或者您可以使用this thread 中提到的目录监视器。请参阅下面的示例批处理文件:
cd c:\gitRepoDirectory\
git config --global user.email "you@example.com"
git config --global user.name "username"
git add .
git commit -m autocommit
git push https://PersonalAccessToken@dev.azure.com/path/to/azurerepo --all
查看以下链接了解更多信息:
Setting-up automatic Git pushing upon file change
Making git auto-commit
【讨论】:
以上是关于是否可以在应用程序服务器上设置 git 客户端以自动进行版本控制并将配置文件推送到 Azure Repo?的主要内容,如果未能解决你的问题,请参考以下文章