2015-05-22 25 views
0

我希望你能幫我解決這個開發工作流程煩惱。混合開發環境:從Git/TFS自動化Visual Studio .csproj更新?

我是一個開發項目的前端開發人員,其中大多數其他開發人員使用MS Visual Studio,而我沒有。我們已經建立了TFS,並且能夠檢查代碼並在本地進行編輯。

經過編輯後,我通過git addgit commit將我的代碼簽入本地Git回購,然後通過git tf checkin推送至TFS。

問題是我們使用Visual Studio的開發人員在從TFS更新其工作空間後無法看到我添加的文件。我們已經將這個問題的原因追蹤到了.csproj文件 - 我添加到回購站的任何文件(例如JavaScript,CSS)都必須手動添加到Visual Studio中的項目中,因爲我的工作流不使用VS和不會更新.csproj文件。

  • 有沒有人遇到類似的情況,並找到了解決辦法?
  • 是否有可能會注意到添加文件並更新.csproj文件以匹配的工具?
  • 也許在Visual Studio中有一個設置,以便它通知其目錄中的新文件並將它們自動添加到項目中?

在此先感謝您的任何建議。

回答

2

有很多可能的解決方案。一個.csproj文件是用MSBuild XML方言編寫的,它有很多功能:有一整個解釋所有細微差別的book

解決方案1 ​​

您手動編輯.csproj文件,添加新的文件。

解決方案2

同上,但您利用通配符文件名,例如 <Content Include="Images\orderedList*.png" />

解決方案3

包括單獨.proj文件,所以很清楚什麼是你管理。 在主要的.csproj添加 <Import Project="Felix.proj" /> 比創建單獨的Felix.proj <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Content Include="Images\orderedList*.png" /> </Project>

,我們可以繼續下去,但是這可能是一個起點。

解決方案4

不同的途徑是改變你的工作流程:通過Visual Studio中,而不是在命令行提交。這裏有一個如何:

  • 安裝Visual Studio(至少2013更新4,社區版應該沒問題)
  • 編輯/添加文件,你喜歡
  • 打開.csproj使用Visual Studio的方式
  • 在Solution Explorer面板中選擇顯示所有文件選項上丟失的文件/文件夾
  • 單擊鼠標右鍵,並選擇包含在項目
  • 保存更改
  • 切換到團隊資源管理器選項卡,你應該看到的Git操作的紅色按鈕
  • 選擇變化,做你的承諾
  • 回到命令行git tf

YMMV

解決方案5

編寫自己的工具,解析git status,將添加的文件追加到.csproj並將後者添加到舞臺上。腳本可以做到。

+0

這是一個很好的起點,感謝您的建議。不幸的是,這些都導致我仍然不得不手動編輯文件...關於如何自動執行此過程的任何想法?也許與Git的'add'語句綁定在一起? –

+0

擴大了答案 –

相關問題