我在运行Windows 7 x64的本地计算机上使用Visual SVN Server。
我正在寻找一种最简单的方法来创建一些本地存储库的提交后挂钩,允许我将提交信息发布到我的Facebook墙上。
奖金功能会将消息排队,如果在提交时我的电脑没有连接到互联网(它是笔记本电脑)。
最佳解决方案不需要安装任何其他软件。我能够编写HTTP连接程序,但我喜欢使用现有的软件,如果有任何帮助的话。
答案 0 :(得分:4)
我设法实现了一个解决方案,在每次提交后在Facebook上创建一个新的Feed对象(即创建一个新帖子)。配方未经过全面测试,您应将其视为概念验证。我不会使用真实的Facebook帐户来测试它。
为我们的SVN服务器的提交消息创建Facebook应用程序。
配置Subversion post-commit hook。
Powershell script execution must be enabled用于VisualSVN服务器服务用户帐户。
运行命令:
New-FBConnection -AppID <YOUR-APP-ID> -RedirectUri <YOUR-APP-DOMAIN-URL>
现在您看到一个带有Facebook页面的Web浏览器,要求您登录并允许访问SVN服务器Facebook Web应用程序。登录并同意。
启动VisualSVN服务器管理器,选择存储库并进入挂钩管理,
选择编辑提交后挂钩,
输入以下代码,然后单击“确定”:
@echo off set PWSH=%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe %PWSH% -command $input ^| %1\hooks\Facebook.ps1 %1 %2 if errorlevel 1 exit %errorlevel%
创建C:\Repositories\<repo-name>\hooks\Facebook.ps1
并在文件中输入以下代码:
$repos = $args[0] $rev = $args[1] $logmessage = svnlook info $repos -r $rev New-FBFeed -Message "$logmessage"
就是这样!虽然消息没有格式化,但解决方案有一个很好的改进房间。可以将房间与整个宇宙的大小进行比较。