有没有办法通过 GitHub 操作推送更改?

Posted

技术标签:

【中文标题】有没有办法通过 GitHub 操作推送更改?【英文标题】:Is there a way to push changes with a GitHub action? 【发布时间】:2019-09-03 14:02:46 【问题描述】:

这个问题指的是这个:https://github.com/features/actions

我编写了一个 GitHub 操作来构建我的代码并创建一个生产包。我希望通过将更改提交到 origin/master 将其包含到我的存储库中。这似乎是 GitHub 操作的一个明显功能,但我在任何地方都找不到。如何使用 GitHub 操作提交更改并推送它们?

【问题讨论】:

首先,它们不是重复的。 Mine 讨论了如何提交和推送,而不仅仅是推送。其次,我的问题比这个问题早了大约 4 个月。 【参考方案1】:

更新:有关如何将更改推送回遥控器的完整详细信息,请参阅以下问题/答案。 Push to origin from GitHub action

另一个选项是create-pull-request 操作。它会自动将更改提交到新分支并提出拉取请求以供您查看更改。我在这里写了一个关于它的详细解释作为另一个问题的答案: https://***.com/a/58004257/11934042

【讨论】:

【参考方案2】:

最简单的方法就是整合这个动作:https://github.com/cds-snc/github-actions/tree/master/auto-commit

这有点令人沮丧,因为它有一个荒谬的默认名称/电子邮件,所以你必须分叉它来修复它,但它在其他方面运行良好。

【讨论】:

【参考方案3】:

我发现stefanzweifel/git-auto-commit-action 是最好的解决方案。这真的很简单:

- uses: stefanzweifel/git-auto-commit-action@v4

当然,可以调整参数,例如提交消息、文件 glob 和许多其他参数。

【讨论】:

以上是关于有没有办法通过 GitHub 操作推送更改?的主要内容,如果未能解决你的问题,请参考以下文章

Git - 无法提交从eclipse到GitHub的更改

如何使用 git reset 在不丢失本地更改的情况下重置未推送的提交

如何在终端中更改我的 Git 用户名?

Github ssh-agent 无法推送

Git:合并更改

Cygwin中使用git时无法远程推送(出现DLL文件不兼容)