嘿伙计们,所以我最近得到了一个 VPS,这样我就可以开始获得经验了。但是我正在寻找一个可以在我的 PC 上编码的服务/程序,然后当我完成后,我运行一个脚本或执行一个命令或其他东西以将其更新到我的 VPS。
我以为我在寻找 Git,但显然 git 并没有做我正在寻找的东西。
有什么建议么?
嘿伙计们,所以我最近得到了一个 VPS,这样我就可以开始获得经验了。但是我正在寻找一个可以在我的 PC 上编码的服务/程序,然后当我完成后,我运行一个脚本或执行一个命令或其他东西以将其更新到我的 VPS。
我以为我在寻找 Git,但显然 git 并没有做我正在寻找的东西。
有什么建议么?
Windows 还是 Linux?
在 Windows 上,有许多工具。
首先你的代码。Visual Studio 是最常见的。你得到一个 sln 文件和一批 *.*proj 文件。
在谈论部署到远程服务器时,通常会使用持续集成服务器。我们正在使用 TeamCity (http://www.jetbrains.com/teamcity/)。在本地下载它,安装并创建一个新项目,选择“SLN-runner”。将其指向您的 sln 文件。
当您希望部署部分正常工作时,请创建一个小的构建文件,例如“MyProj.build”,其中包含类似于以下内容的内容
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="BuildProject"
InitialTargets="CheckRequiredProperties"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
ToolsVersion="4.0">
<Target Name="BuildProject">
<Message Text="Starting $(Configuration) build. Web site publish location $(OutputWebSite)" />
<MSBuild Projects="$(SolutionPath)"
Targets="Build"
Properties="BuildOutputPath=$(BuildOutputPath);
BuildOutputPathBin=$(BuildOutputPathBin);
Configuration=$(Configuration);
BuildConstants=$(BuildConstants);
MSBuildTargets=$(MSBuildTargets);
TargetFrameworkVersion=$(TargetFrameworkVersion);
TargetFrameworkProfile=$(TargetFrameworkProfile)">
...
SolutionPath 指向您的 sln 文件的位置。
然后,您将使用 MsBuild 运行器更新 TeamCity 配置以指向 MyProj.build。
然后,您需要一种让 TeamCity 将所有内容上传到服务器的方法。Powershell 是一个很好的脚本环境,可以运行 .Net 代码,但您将通过 MsBuild 调用它...
然后你可以在你的服务器上使用 MsDeploy 编写脚本:http: //blogs.iis.net/jamescoo/archive/2008/08/21/using-msdeploy-in-powershell.aspx
“rsync”或“scp”工具可能有用