2014-08-29 137 views
11

我正在使用Bitbucket来管理我的私人存储库。
我希望将每次提交时更新的文件部署到ftp服务器。从bitbucket存储库推送到共享主机ftp服务器

我谷歌出来,发现很多脚本,但无法成功与他们任何人。 ftp服务器是一个共享的托管服务器,可通过FTP显式连接模式通过Filezilla访问。

我不想使用任何第三方在线应用程序。

请指导我解决问题。

我想使用this

但哪个键必须到位桶帐户的部署键,可以输入?私人还是公共?

+1

秩尝试从到位桶的作者到位桶FTP部署脚本? https://bitbucket.org/sibbl/bitbucket-ftp-deployment/wiki/Home – 2014-08-29 09:45:28

+0

是的。但它不适合我。 – 2014-08-29 11:09:04

+0

还有其他解决方法吗? – 2014-08-29 11:09:33

回答

1

这个问题已经过时了。但是,我正在回答这个问题,希望其他人正在寻找解决方案。

您可以使用BitBucket提供的the FTP Deployment PHP Script

如果需要FTPS明确的,在您上传上面的代码中,替换该行functions.inc.php:

$conn_id = ftp_connect($ftp_host); 

随着下面:

// set up basic ssl connection 
$conn_id = ftp_ssl_connect($ftp_host); 

这应该让你全部设置为使用明确的SSL-FTP连接而不是纯文本FTP来使用此脚本。

13

您可以使用新的bitbucket工具Pipelines!配置新管线档案:

image: samueldebruyn/debian-git 
     pipelines: 
     default: 
     - step: 
      script: 
      - apt-get update 
      - apt-get -qq install git-ftp 
      - git ftp init --user $FTP_USERNAME --passwd $FTP_PASSWORD ftp://server/public_html/ 

你提交之前,创建环境变量$ FTP_USERNAME和$ FTP_PASSWORD在设置 - >环境变量。

对于编辑源代码并将“init”更改为“push”并提交以替换共享服务器上的文件。

欲了解更多信息,请观看此视频: https://www.youtube.com/watch?v=8HZhHtZebdw

+0

这是一个很好的答案,为我完美解决了它! – AndyWarren 2017-03-21 15:21:26

+0

这工作了大约一个半月,然后停止工作。 Pipeline在Bitbucket中成功完成,但不再通过FTP复制任何文件。一直试图找出2天现在。有任何想法吗? – AndyWarren 2017-05-03 16:43:28

+1

你好朋友,我有管道很长一段时间,我真的没有通过,只要生产服务器没有改变ip/domain – 2017-05-03 17:40:56