VS編譯命令

1、前言

因爲公司要求項目須要走CI構建平臺,拋棄掉以前的人工編譯打包方式,因此須要調研一下項目怎麼經過命令行編譯出產物。git

2、準備工做

  1. 在構建機器上安裝vs(本文示例爲vs2017)
  2. 將代碼上傳版本控制倉庫(本文示例爲Gitlab),並確保構建機器能夠正常訪問並下載源代碼
  3. 確保構建機器能夠正常編譯目標項目,最快捷的方案就是在構建機器上跑一下
  4. 修改項目的編譯配置及平臺,例如我設置了Release+CI做爲CI構建用的配置,並把輸出路徑改成了..\CIResult\

3、編寫構建命令

  1. 找到vs的安裝路徑,找到devenv.exe,例如D:\VS2017\Common7\IDE\devenv.exe
  2. 明確本身須要編譯的解決方案的名稱,例如:ABC.sln
  3. 明確本身須要使用的編譯設置,例如前文設置好的:Release + CI
  4. 編寫編譯命令,例如:"D:\VS2017\Common7\IDE\devenv.exe" devenv "ABC.sln" /rebuild "Release|CI" /out courtClient.log
  5. 執行命令,就能夠到..\CIResult\去獲取產物了,若是嫌棄文件夾麻煩,能夠在編譯完成後再加一句命令WinRAR a -r ABC.zip CIResult\*來打個壓縮包。

4、注意事項

  1. 若是項目中使用了nuget管理引用的組件,建議把packages文件夾加入源代碼倉庫中,由於我不知道怎麼讓vs在編譯前自動下載包並還原,只能用這個笨方法了。附上git的文件包含腳本,打開.gitignore文件加上一行!/packages/*
  2. 編譯的錯誤日誌打在了courtClient.log文件裏

5、結束

本身摸索的,也踩了些坑最後總結出的方法,可能不是很合理,但願大佬們若是有更好的方法能夠批評指正。ui

相關文章
相關標籤/搜索