zoukankan      html  css  js  c++  java
  • 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的功能。

    个人博客请访问:http://www.cnblogs.com/CodeGize/
  • 相关阅读:
    机器学习【九】数据表达与特征工程
    机器学习【八】数据预处理、降维、特征提取及聚类
    机器学习【七】神经网络
    机器学习【六】支持向量机SVM——专治线性不可分
    机器学习【五】随机森林
    机器学习【四】决策树
    单片机简介 & 点亮LED & 流水灯 & 电路基础
    PHP表单
    机器学习【三】朴素贝叶斯
    PHP 【六】
  • 原文地址:https://www.cnblogs.com/CodeGize/p/5648753.html
Copyright © 2011-2022 走看看