我有一个具有以下结构的项目:
.git
docs
src
proj.web
proj.api
test
proj.web.test
proj.api.test
我正在使用以下内容将所有内容推送到Github:
git add -a
git commit . -m "Commit"
git push -u origin master
这有效,但我还需要使用git将各个项目推送到Azure .
但在这种情况下,我只需要将proj.web和proj.api推送到2个不同的git url而不是一个url .
我该怎么做?
Update
在Azure中配置持续部署后,我从Kudu获得了部署脚本,其中包含以下内容:
:: 1. Restore nuget packages
call :ExecuteCmd dotnet restore
IF !ERRORLEVEL! NEQ 0 goto error
:: 2. Build and publish
call :ExecuteCmd dotnet publish "src\proj.web\proj.web.csproj" --output "%DEPLOYMENT_TEMP%" --configuration Release
如果!ERRORLEVEL! NEQ 0转到错误
:: 3. KuduSync
call :ExecuteCmd "%KUDU_SYNC_CMD%" -v 50 -f "%DEPLOYMENT_TEMP%" -t "%DEPLOYMENT_TARGET%" -n "%NEXT_MANIFEST_PATH%" -p "%PREVIOUS_MANIFEST_PATH%" -i ".git;.hg;.deployment;deploy.cmd"
如果!ERRORLEVEL! NEQ 0转到错误
当我在Azure中同步时,我收到以下错误:
Most Recent Commit
GitHub
Failed
10:35 PM
有错误:
命令:“D:\ home \ site \ deployments \ tools \ deploy.cmd”处理ASP.NET Core Web Application部署 . MSBUILD:错误MSB1003:指定项目或解决方案文件 . 当前工作目录不包含项目或解决方案文件 . exitCode = 1失败,command = dotnet restore网站部署期间发生错误 . \ r \ nD:\ Program Files(x86)\ SiteExtensions \ Kudu \ 59.60125.2666 \ bin \ Scripts \ starter.cmd“D:\ home \ site \ deployments \ tools \ deploy.cmd”
我正在使用Visual Studio Code中的csproj文件使用ASP.NET Core 1.1 .
我没有project.json ......
2 回答
我可能在这里错了,但我猜你指的是Continuous Deployment to an Azure App Service?
如果是这样,您所描述的问题基本上是您希望在同一个仓库中保留多个App Services?例如,同一应用程序的前端和后端部分 . 如果是这种情况,那么您可以更改每个App Service的持续部署在尝试部署它时在repo中查找Web项目的方式 .
转到App Service的Kudu界面 . 它可以在
https://{your-website-name-goes-here}.scm.azurewebsites.net
找到 . 在菜单中,您可以找到Tools > Download Deployment Script
. 打开zip,你有2个文件:.deployment
和deploy.cmd
. 打开deploy.cmd
. 找到如下所示的部分:现在继续,对于每个App Service,只需将
Company.SolutionName\Company.Solution.ProjectName\Company.Solution.ProjectName.csproj
更改为要部署到该特定App Service的Web项目的路径 .完成后,将
.deploy
和deploy.cmd
添加到repo的根目录(与.git
相同的级别) . 现在,当您推送到repo时,每个App Service将只构建您在每个自定义部署脚本中指定的csproj .如果你需要将它们保存在同一个仓库中,你可以使用分支,否则你可以使用2个仓库 .