Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
提交服务器上对Plesk Onyx的Git扩展所做的更改_Git_Plesk - Fatal编程技术网

提交服务器上对Plesk Onyx的Git扩展所做的更改

提交服务器上对Plesk Onyx的Git扩展所做的更改,git,plesk,Git,Plesk,Plesk是否可以直接在服务器上提交更改(例如,客户端上传到其网站的文件) 扩展被配置为跟踪远程(GitHub)存储库,提供的唯一选项是“拉最后一次提交”。它似乎不提供提交或推送功能 当通过ssh连接到服务器时,我试图手动提交本地更改,但我的工作树中没有.git目录,因此我无法运行git命令…因为我知道Plesk git extension仅创建裸存储库(或仅在人类的“部署模式”中)因此没有工作树,提交和推送不可用 此决定基于“生产服务器”上没有“开发” 我不知道这个扩展将来是否支持非裸存储库

Plesk是否可以直接在服务器上提交更改(例如,客户端上传到其网站的文件)

扩展被配置为跟踪远程(GitHub)存储库,提供的唯一选项是“拉最后一次提交”。它似乎不提供提交或推送功能


当通过ssh连接到服务器时,我试图手动提交本地更改,但我的工作树中没有.git目录,因此我无法运行
git
命令…

因为我知道Plesk git extension仅创建裸存储库(或仅在人类的“部署模式”中)因此没有工作树,提交和推送不可用

此决定基于“生产服务器”上没有“开发”


我不知道这个扩展将来是否支持非裸存储库

据我所知,Plesk Git扩展只创建裸存储库(或仅在人类的“部署模式”中),因此没有工作树,提交和推送不可用

此决定基于“生产服务器”上没有“开发”


我不知道这个扩展将来是否支持非裸存储库

根据普莱斯克团队的一名成员所说:

当您使用远程存储库时,假设出现以下情况—您将更改发送到此远程存储库,然后Plesk将更改从远程存储库中取出并部署到您的网站

当您将更改从本地存储库发送到Plesk,然后Plesk将更改部署到您的网站时,提交或推送功能在这种情况下可用


参见:

根据普莱斯克团队的一名成员所说:

当您使用远程存储库时,假设出现以下情况—您将更改发送到此远程存储库,然后Plesk将更改从远程存储库中取出并部署到您的网站

当您将更改从本地存储库发送到Plesk,然后Plesk将更改部署到您的网站时,提交或推送功能在这种情况下可用


请参阅:

您可以在git服务器上提交和推送

在我的例子中,我的网站文件位于
/var/www/vhosts/xxx/httpdocs/memberportal
中,git设置在
/var/www/vhosts/xxx/git/memberportal.git#

如果我进入
/var/www/vhosts/xxx/httpdocs/memberportal
中的webdirectory,我可以这样调用git:

git --git-dir ../../git/memberportal.git --work-tree . add .  
git --git-dir ../../git/memberportal.git --work-tree . status  
git --git-dir ../../git/memberportal.git --work-tree . commit -m "My message"
git --git-dir ../../git/memberportal.git --work-tree . push  

但是,每当我从存储库中提取时,plesk主机上所有修改的文件都将被删除。这意味着,如果使用webhook自动部署,生产服务器上的编辑可能会在推送到存储库之前被删除。

您可以提交并推送到git服务器上

在我的例子中,我的网站文件位于
/var/www/vhosts/xxx/httpdocs/memberportal
中,git设置在
/var/www/vhosts/xxx/git/memberportal.git#

如果我进入
/var/www/vhosts/xxx/httpdocs/memberportal
中的webdirectory,我可以这样调用git:

git --git-dir ../../git/memberportal.git --work-tree . add .  
git --git-dir ../../git/memberportal.git --work-tree . status  
git --git-dir ../../git/memberportal.git --work-tree . commit -m "My message"
git --git-dir ../../git/memberportal.git --work-tree . push  

但是,每当我从存储库中提取时,plesk主机上所有修改的文件都将被删除。这意味着如果您使用webhook自动部署,生产服务器上的编辑可能会在您将其推送到存储库之前被删除。

您可以从服务器压缩并下载网站文件夹,然后将其解压缩到localhost并将其推送到git。

您可以从服务器压缩并下载网站文件夹,然后将其解压缩到localhost并将其推送到git。

解决此问题的方法是几乎像那辆车。唯一的区别是,我没有在工作目录中工作,而是使用
--work tree
参数从.git目录运行
git

git --work-tree=/var/www/vhosts/xxx/yyy/ <any git command>
git——工作树=/var/www/vhosts/xxx/yyy/

最近,我想知道是否通过git补丁而不是从plesk中推送是一个更好的解决方案。有什么想法或方法吗?

我用来解决这个问题的方法几乎就像。唯一的区别是,我没有在工作目录中工作,而是使用
--work tree
参数从.git目录运行
git

git --work-tree=/var/www/vhosts/xxx/yyy/ <any git command>
git——工作树=/var/www/vhosts/xxx/yyy/

最近,我想知道是否通过git补丁而不是从plesk中推送是一个更好的解决方案。有什么想法或方法吗?

我可以证实。有一个目录
/git/dirname.git
,可以在其中运行
git log
,但是
git checkout-b test
失败。()你可以使用推送和提交,看我的回答,我可以确认。有一个目录
/git/dirname.git
,可以在其中运行
git log
,但是
git checkout-b test
失败。()你可以使用推和提交,看我的答案,使这个答案对读者更有用,考虑做一点,举一个例子。为了使这个答案对读者更有用,考虑做一点,举一个例子。