通过颠覆和VisualSVN,我能够将.net二进制文件作为使用c#的钩子并构build程序集。 您只需将一个名为Post-Commit.exe的文件放入挂钩文件夹中即可。
与git我猜测,因为它正在运行cygwin和它基本上通过一个Linuxtypes的虚拟机,它将不得不是一个可执行文件,将在Linux上运行?
我使用c#和.net二进制文件的原因是,这是我使用的主要编码语言,而且我正在尝试做的事情更简单快捷。
实际上,在Subversion中做了什么之后,是有人提交到它检查的存储库,看看存储库的trunk文件夹是否已经更新,是否转过来检出版本库副本(如果已经更新,检查过了)。 然后运行一个名为ftpsync的在网上find的免费程序,将存储库与networking服务器同步。 (真的只检查了视图文件夹,而不是代码文件,他们是mvc.net网站)我不知道我可以切换到git相当尚未出现,因为它不像它是成熟的Subversion是至lesswindows平台。 我已经看过GitSharp,但是这似乎是一个很大的工作,真的不是生产代码。
这是我的想法,因为我不必让人们访问Web服务器来更新,我所要做的就是让他们访问Subversion项目的trunk文件夹,这也迫使开发人员使用版本控制系统绕过它并直接更新Web服务器。
感谢任何帮助或方向
另外,作为其他说明ftpsync是一个Windows可执行文件,作为一个单独的线程从.net二进制文件运行,这样你就可以得到一个响应,从一个提交到颠覆而无需等待ftpsync程序完成,因为有时可能需要一段时间。
为什么不只是在你的web服务器上签出,把你的中央服务器设置为origin / master,然后通过cron / scheduled任务做一个git pull ?
很明显,你应该使用只有只读访问权限的用户,并configuration你的Web服务器以某种方式(htaccess或通过文件权限)拒绝对.git目录的访问。