ASP.NET MVC+EF框架+EasyUI实现权限管理系列(10)- VSS源代码管理

简介: 原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(10)- VSS源代码管理   ASP.NET MVC+EF框架+EasyUI实现权限管系列       (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业...
原文: ASP.NET MVC+EF框架+EasyUI实现权限管理系列(10)- VSS源代码管理

   ASP.NET MVC+EF框架+EasyUI实现权限管系列

  

   (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装 

   (5):前台Jquery easyUI实现    (6):EF上下文实例管理    (7):DBSession的封装   (8):DBSession线程内唯一  

   (9):TT摸版的学习

  前言:上篇博客我们对T4模版进行了简单的说明,这篇博客我们开始了解一下源代码管理的东西,当然了这些知识点我都只是简单的提到,如果大家需要详细学习的话可以在博客园中找到很多你们需要的东西,下面我们就开始学习源代码管理器吧,我在这里要讲的是VSS

1. 为什么需要源代码

  (1)首先大家可能会遇到这样的问题,很长时间我们一直在做某个项目,但是做到最后的时候,这个项目出现了一点问题(解决不了),这时候我们就非常的希望项目能够回归到我们能运行的时候,还有就是我们做项目做了一段时间了,突然有一天我们想到前段时间我们写的代码有点问题,可以使用更加简单的方式来实现,这时候我们就想如何能够快速的回到我们想要修改或者重新能运行的地方,这就是源代码管理器的作用。

  (2)所以我们写的源代码必须要通过一个非常好的工具进行非常良好的管理,而且当我们代码出现问题的时候还可以进行良好的回滚,回滚到某一天的某一个时间点,也就是说我们开发项目的所有的源代码都要进行管理起来,不能说存在我们的电脑上面,那是不安全的,如果我们的系统硬盘出现问题,这可就是整个项目的损失。

2.源代码管理器(VSS)介绍

 (1) 那么通过上面的描述我们就知道了我们要把我们的代码进行源代码管理,那么怎么进行源代码管理呢,下面我画一张图来描述一下,如图:

   

 (2)根据上图我相信大家能够看到源代码管理器的执行以及是如何来完成这些工作的,下面我再稍微的介绍点上图中没有写到的东西。

 (3)我们开发人员在源代码管理器中要求的是会使用签出文件和签入文件,那么什么是签出文件呢?我要对这个文件进行修改的时候要先去服务器签出,签出完成之后就可以对这个文件进行修改了,当我们修改完成签出的文件之后,而且生成成功了,在提交给服务器,就是签入,这就是签出和签入的区别。

 (4)那么下面我就以我们现在开发的权限系统如何使用源代码管理器进行一番演示,详情请继续往下看

3.对源代码管理软件VSS的安装

 (1)上面介绍完毕之后,我们就想把我们的代码进行源代码管理,但是怎么管理呢?当然我们首先想到的是我们需要一个环境,也就是VSS工具的安装,首先我们打开Visual Studio,然后单击工具->选项->源代码管理,如图所示:

   

 (2)如上图,我们就会看到源代码管理里面有一个当前源代码管理插件的下拉框,如果大家没有安装VSS的话,因该就只有一个Visual Studio Team Foundaton Server,如果大家安装了VSS的话,显示的效果应该和我的一摸一样。

 (3)如果大家没有安装VSS的话先去网上找一个VSS的软件或者在下面给我留言,我将会发给大家,然后找到setup.exe文件进行安装,安装步骤我再这里不说了,傻瓜式安装,当安装完成之后我们关闭Visual Studio重启之后我们就可以在工具->选项->源代码管理器里面看到如上图所示了。

 (4)当我们安装VSS之后,这时候我们在工具里面的当前源代码管理插件里面一定要选择Microsoft Visual SourceSafe选项,然后下面我们就开始一步一步的搭建这个源代码管理了。

4. 如何添加项目中到源代码服务器(VSS)

 (1)那么我们如何将我当前的项目添加到源代码管理服务器中去呢?首先我们在解决方案上面用鼠标右击选择将解决方案添加到源代码管理(或者我们选择文件->选代码管理->将解决方案添加到源码管理),打开如图所示:

   

 (2)上图的意思是添加一个源代码管理数据库的向导,就相当于添加了一个数据库,然后单击下一步,如图所示:

   

 (3)上图我们看到了有两个选择,一个是Connect to an existing database(连接一个以存在的数据库)。另一个是Create a new database(创建一个新的数据库),那么他们有什么区别吗?下来我稍微的说一下:首先如果我们选择Connect to an existing database单击下一步我们就会到另一个页面,在哪里页面里面我们可以自己选择自己机器上的某一个源代码管理库,如果是局域网的话,我们的Loaction地址这样写就好了:\\192.168.1.250\kencery.ini文件,或者我们可以直接单击Brower选择。但是我们因为是首次用VSS管理工具,所以我们选择创建一个新的数据库(Create a new database),然后单击下一步如图所示:

   

 (4)上图的意思是:让我们将数据库放到什么位置,我们单击Browse,然后我们选择一个路径(一般情况下我们放到C盘即可),然后我们单击下一步,将会出现一个给数据库重新起名的文本框,我们选择默认即可,在单击下一步如图所示:

   

 (5)上图我们又看到了两个选项,他们是两个可以使用的模式,第一个模式的意思是锁住-修改-解锁的模式(也就是同一时间只允许一个人进行修改),第二个模式的意思是拷贝-修改-合并的模式(同一时间允许多个人能够对文件进行修改),一般情况下我们默认选择第一个即可,然后单击下一步-最后单击完成,当单击完成的时候弹出了如图所示的VSS登录界面:

    

 (6)上图中显示了我们将源代码管理的数据库创建好了,密码默认是没有的,用户名系统直接自动取出来了电脑的用户名,然后我们单击OK,出现下面页面:

   

 (7)然后我们再单击OK按钮,会提示一个信息说我们没有改目录,是否创建此目录,我们选择Yes,这时候就把我们当前的解决方案提交到数据库中去管理了。这样我们就将我们的项目添加到源到管理器里面去了。

 (8)当我们把我们的项目添加到源代码管理里面去的时候我们的项目前面都显示加了一个锁,有小锁的话就代表了我们当前项目被源代码管理器管理。这时候你再刚才所选择的文件夹下面可以看到很多文件。

5.使用源代码服务器对项目代码进行修改

 (1) 经过上面的总结之后,现在我们的源代码已经被源代码管理器管理起来了,那么这时候我们新建一个控制器LoginController.cs,这时候我们控制器对应的前面没有小锁,但是有一个加号,这就表示这个项目是新加的,然后我们右键再LoginController控制器上面右键签入到源代码管理器之后,前面变成了小锁,这时候我们修改LoginController.cs的代码。

 (2) 当我们给LoginController.cs项目里面随便加个注释的时候,控制器类对应的前面变成了小红对号,鼠标放上去的时候显示已独占的方式签出给我,这就代码我们的这个控制器类已经签出,这时候别人就无法签出这个文件了,只有当我修改完这个控制器类然后签入到源代码管理器中的时候别人才能够在签出。

 (3)当我们修改完成之后,我们一定要生成一下项目,如果没有任何问题的话,我们就可以将这个控制器类签入了,在你想要签入的控制器类上面右键选择签入,然后如下图所示:

   

 (4)如上图,就是我签入Login控制器的时候的内容,在这里我们一般情况下都要写上注释内容,方便我们查看到底干了什么,最后单击签入,完成之后对应的控制器前面又出现小锁证明我们签入成功了。签出也有一样,在这里我就不说了。

 (5)上面我对签入和签出进行了简单的说明,其实也很简单,没什么的,只要我们理解签入和签出是什么意思就行,签出就相当于告诉源代码服务器我要以独占的方式来修改这个文件,签入就相当于把你修改的东西重新提交会源代码服务器。

6.使用源代码服务器对项目代码进行回滚管理

 (1)这时候我们在对Login控制器进行第二次的修改,并且重新在嵌入到源代码服务器里面,写上注释。

 (2)然后我们回滚到第二次修改之前,那么怎么回滚,同样,我们选择Login控制器右键选择查看历史记录,会弹出一个让我们输入从哪里到哪里的小窗体,默认不管,直接单击OK即可,如图所示:

   

 (3)如上图显示了所有的修改记录,首先1是刚开始我们创建的,2和3分别是我们进行修改后重写签入的内容,上面我们就可以想象的看到我们的签入信息,然后在右边有一个Diff(比较),我们选择第二个签入的内容,然后选择Diff,弹出的窗体默认,单击OK,就能看到现在的代码和第二次有什么区别,如图所示:

  

 (4)那么我们如何回滚到第二个变化的项目呢,我们看到了(2)图中有一个RollBack,但是如果我们回滚回去的话我们就在回滚不回来了,所以在操作的时候还是要格外的注意,单击RollBack,会有提示信息,不要管,直接单击Yes,这时候我们的项目就回滚到第一次的时候了。

 7.小结

 (1)通过上面的介绍,我们发现我们我们在博客刚开始提出来的几个问题都已经解决了吧,这就是源代码管理的好处。

 (2)下篇博客我们就真是开始对权限的分析讲解,明天我将着手开始写用户登录,希望大家能够支持,你们的支持就是我的动力,谢谢大家,最后很晚了上张图提提神,我们一定要向雄鹰一样飞向远方。

   

 

    VSS软件安装包下载地址:http://pan.baidu.com/share/link?shareid=382444&uk=856815276

  

  Kencery返回本系列开篇

  

 

目录
相关文章
|
9天前
|
数据可视化 网络协议 C#
C#/.NET/.NET Core优秀项目和框架2024年3月简报
公众号每月定期推广和分享的C#/.NET/.NET Core优秀项目和框架(每周至少会推荐两个优秀的项目和框架当然节假日除外),公众号推文中有项目和框架的介绍、功能特点、使用方式以及部分功能截图等(打不开或者打开GitHub很慢的同学可以优先查看公众号推文,文末一定会附带项目和框架源码地址)。注意:排名不分先后,都是十分优秀的开源项目和框架,每周定期更新分享(欢迎关注公众号:追逐时光者,第一时间获取每周精选分享资讯🔔)。
|
2月前
|
开发框架 JavaScript 前端开发
5个.NET开源且强大的快速开发框架(帮助你提高生产效率)
5个.NET开源且强大的快速开发框架(帮助你提高生产效率)
|
3月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
38 0
|
28天前
|
开发框架 网络协议 .NET
深入.net框架
深入.net框架
11 0
|
29天前
|
开发框架 前端开发 .NET
进入ASP .net mvc的世界
进入ASP .net mvc的世界
28 0
|
29天前
mvc.net分页查询案例——mvc-paper.css
mvc.net分页查询案例——mvc-paper.css
5 0
|
1月前
|
开发框架 前端开发 .NET
C# .NET面试系列六:ASP.NET MVC
<h2>ASP.NET MVC #### 1. MVC 中的 TempData\ViewBag\ViewData 区别? 在ASP.NET MVC中,TempData、ViewBag 和 ViewData 都是用于在控制器和视图之间传递数据的机制,但它们有一些区别。 <b>TempData:</b> 1、生命周期 ```c# TempData 的生命周期是短暂的,数据只在当前请求和下一次请求之间有效。一旦数据被读取,它就会被标记为已读,下一次请求时就会被清除。 ``` 2、用途 ```c# 主要用于在两个动作之间传递数据,例如在一个动作中设置 TempData,然后在重定向到另
95 5
|
2月前
|
算法 BI API
C#/.NET/.NET Core优秀项目和框架2024年1月简报
C#/.NET/.NET Core优秀项目和框架2024年1月简报
|
3月前
|
PHP Windows
php扩展com_dndnet(PHP与.NET框架进行交互)
php扩展com_dndnet(PHP与.NET框架进行交互)
php扩展com_dndnet(PHP与.NET框架进行交互)
|
3月前
|
XML 前端开发 定位技术
C#(NET Core3.1 MVC)生成站点地图(sitemap.xml)
C#(NET Core3.1 MVC)生成站点地图(sitemap.xml)
25 0