unity插件開發——一個例子:簡單的svn集成


    在unity開發過程中,通常我們習慣性地在Windows操作系統下使用svn進行版本管理,而每次提交更新,都需要回到文件夾下的這種操作讓人無法忍受。是不是可以集成svn到unity中呢?查了一圈unity store可以看到很多svn的第三方插件。考慮到我們只需要簡單的功能,而且不希望加入額外復雜的代碼,最后還是自己寫一個插件。功能就是更新或者提交assets文件夾。

    如果還沒有svn對項目進行管理的,按照以下2步操作:

    1、下載svn客戶端,安裝。

    2、從svn版本庫checkout一個工程。

    具體svn操做這里不做展開。

    查詢svn的文檔可以知道svn提供各種命令符操作。因此,原理非常簡單,利用命令符操作調用svn即可。代碼也非常簡單:

    更新:Process.Start("TortoiseProc.exe", "/command:update /path:" + Application.dataPath + " /closeonend:0");

    提交:Process.Start("TortoiseProc.exe", "/command:commit /path:" + Application.dataPath + " /closeonend:0");

    好,我們寫一個cs文件如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class SvnOperater : MonoBehaviour
{
         [MenuItem( "SVN/Update" )]
         public static void Update()
         {
#if UNITY_STANDALONE_WIN||UNITY_EDITOR
             Process.Start( "TortoiseProc.exe" , "/command:update /path:" + Application.dataPath + " /closeonend:0" );
#endif
         }
 
         [MenuItem( "SVN/Commit" )]
         public static void Commit()
         {
#if UNITY_STANDALONE_WIN||UNITY_EDITOR
             Process.Start( "TortoiseProc.exe" , "/command:commit /path:" + Application.dataPath + " /closeonend:0" );
#endif
         }
 
}

    好,注意文件名和類名相同,放在assets目錄下的任意一個Editor目錄下。回到unity,很快,上方的菜單里就會出現“SVN”,二級菜單有“Update”和“Commit”,點擊一下,svn的界面就會出現了。

    愉快地使用吧。

    以此類推,你能用開發集成很多svn的功能。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM