我在github上开发插件,但在部署时,我必须以某种方式将更改复制到Wordpress SVN中。目前,我手动执行此操作,并分别复制每个目录中的每个文件,但这既耗时又容易出错。
我已经看到并尝试了一些脚本,但我想我一定是运行错误了,因为它们要么出错,要么没有正确地复制文件。
所以我的问题是,有没有人自动做到了这一点?如果有,你是如何做到的?
谢谢
我在github上开发插件,但在部署时,我必须以某种方式将更改复制到Wordpress SVN中。目前,我手动执行此操作,并分别复制每个目录中的每个文件,但这既耗时又容易出错。
我已经看到并尝试了一些脚本,但我想我一定是运行错误了,因为它们要么出错,要么没有正确地复制文件。
所以我的问题是,有没有人自动做到了这一点?如果有,你是如何做到的?
谢谢
请参阅我团队的一位同事提供的本教程:http://www.farbeyondprogramming.com/2011/09/81-how-to-deploy-a-wordpress-plugin-with-git-svn
但他不使用解决方案,单独工作更容易:(
看见How to Publish a WordPress Plugin – Git 从…起@EAMann 有关详细说明。
在阅读了这些回复后,我将我的一个插件推到GitHub,并编写了一个release.sh 剧本这个脚本从插件中获取我的插件的部分签出。svn。wordpress。组织使用--depth immediates
, 并更新中的文件trunk/
和assets/
. 这将简化使用wordpress定期推送svn的过程。组织存储库以标记发布,而不是维护开发历史:
./release.sh
svn cp trunk tags/0.6
svn ci "Sending 0.6 from https://github.com/foo/bar to wordpress.org"
一个更通用的版本可以使用更多种类的插件,处理删除的文件,并根据git标记自动更新svn标记。这个问题很老,但现在GitHub操作提供了解决方案。最近,GitHub为GitHub存储库添加了GitHub操作自动化工作流。
著名的10up公司创建了“Action WordPress插件部署”。
设置非常简单。正如@otto所说,我们不需要将每个更改都推送到svn,这样我们就可以在github上创建新标记的同时设置自动化。
因此,当我们创建新的发布标签时,我们的github插件会自动将代码推送到WordPress存储库。
有用的链接:
来源:How to Deploy WordPress plugin from GitHubGitHub ActionsGitHub Repository
我不会自动完成,但很简单:
让SVN truck和Git master在同一目录中签出。几乎所有事情都使用Git,就像任何只使用Git的项目一样。
设置stable tag
未来trunk
, 然后,当准备发布时,在Git中标记它,然后立即推送到trunk。不用担心推送到SVN/tags
, 因为您的发布历史在Git(和Github)中是安全的。
就是这样。
为了清理它,我加上.svn
到.gitignore
, 和.git
(和tests/
, phpunit.xml
, SVN将忽略。
发布。sh脚本实际上只不过是以下内容(一旦代码中的版本号被更新,并全部提交给Git):
git tag $1
svn ci -m"Release: $1"
处理官方WP存储库的文档专门关于使用命令行。虽然我对这一点没有偏见,但我对风投几乎没有经验,我必须在最近的将来找出并使用两个(或三个)不同的风投。因此,目前我在IDE中使用VCS集成特性(NetBeans、PHPStorm)。这常常让我对正确做事的细节和方式感到困惑。关于将SVN官方存储库(或至少是一般的SVN)与IDE或其他基于GUI的工具结合使用,是否有好的文章/帖子/指南?重点关注概念和工作流,而不是在控制台中键入晦涩难懂的行。