如何使用 Ansible git 模块拉取带有本地更改的分支?

How to use Ansible git module pull a branch with local changes?

我的 git 工作区很脏,有一些局部修改。当我使用命令 git pull origin master 时,它工作正常,因为没有冲突。

但是当我尝试使用 Ansiblegit: repo=xxxx dest=xxx version={{branch}} 我收到错误:

Local modifications exist in repository (force=no)

如果我添加 force=yes,那么我将丢失本地修改。

如何使用 Ansible git 模块来保留我的本地更改并从 git 中提取最新提交。

您无法使用 git 模块实现它。

Ansible 检查 the result of:

git status --porcelain

aborts task execution 如果跟踪文件中有本地更改,除非 force 参数设置为 true

您可以使用类似的东西:

git: repo=xxxx dest=xxx version={{branch}} force=no
ignore_errors: yes

https://docs.ansible.com/ansible/latest/user_guide/playbooks_error_handling.html#ignoring-failed-commands