I've got an ASP.NET web app that I publish to our website when I make changes or fix bugs. We want to automatically save a backup of the project files to our server (separate from the SVN check in), so I wrote a batch file to copy the entire project from my local drive to the server. The batch file works properly when run stand alone, so that's not the problem. The batch file is not in the path of the project if that's a concern.
Then I added these lines to my .csproj file right above the closing </project>
tag:
<Target Name="AfterPublish" >
<Exec Command="C:degatackupRMA.cmd" />
</Target>
This follows the instructions in MSDN for overriding a target.
I have also tried the method outlined in this SO question. Which looked like this:
<Target Name="BackUpRMAToIDrive" AfterTargets="MSDeployPublish" >
<Exec Command="C:degatackupRMA.cmd" />
</Target>
That doesn't work either.
For completeness, here's the batch file, it's pretty simple, but I can explain the switches if anyone's interested:
xcopy C:degASP.NETOnlineRMA_SinglePage*.* /cherkyDi I:commonAppDevBranchService
ma
I publish in VS2010 using Build > Publish RMA, which works fine. It's just the backup script never runs. The only commonality is the script itself. I've seen other examples that use a copy from source dir to destination dir, but I thought I understood that you could just call an external script through the Exec command? Here's the example SO question I found for that method.
I'm certain I'm missing something obvious, but I'm onto my second day of messing around with something that seems pretty straight forward, so what am I missing?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…