如何在Ubuntu上安装Gitolite

摘要: 安装环境:假定你有一台机器(client)用于开发,一台服务器(server, Ubuntu)用于与其他成员同步代码(也就是需要安装Gitolite的机器了)。1. 在自己机器上生成密钥对[evans@client]$ ssh-keygen -t rsa2. 上公钥传至服务器[evans@client]$ scp ~/.ssh/id_rsa.pub user@server.example.org:/tmp/user.pub3. 登录远程服务器,并以root身份安装[evans@client]$ ssh user@server.example.org[evans@server]$ su - ro 阅读全文
posted @ 2012-09-14 16:47 yhtdfjn 阅读(947) 评论(0) 推荐(0) 编辑

你所不知道的软件开发的详细过程

摘要: 软件开发过程需要经历的几个主要阶段:(1)定义。明确软件开发的目的、软件的需求。(2)计划。制订软件开发所涉及的各种计划。(3)实现。进行设计、编码、文档编写工作,完成所要求的软件特性。(4)稳定化。以测试和修复工作为主,确保将提交的软件具有良好的质量。(5)部署。安装、提交开发完成的软件,建立可供用户使用的环境。常见的软件生命周期模型:瀑布模型原型模型增量模型螺旋模型瀑布模型:在瀑布模型中,包括六个阶段:计划、需求分析、设计、编码、测试、运行维护。这六个阶段自上而下、相互衔接,以固定的次序来进行。模型驱动的一个重要的特征是强调阶段的顺序性和依赖性。下一个阶段必须是以上一个阶段为前提。例如在开 阅读全文
posted @ 2012-09-04 15:26 yhtdfjn 阅读(282) 评论(0) 推荐(1) 编辑

Appfog成功搬家全过程

摘要: 少数朋友可能知道我在appfog搭建了一个“侠客收藏夹”,成功地当了他们的一个小白鼠。Appfog真是没啥说的,功能强大,Very 神秘,专为开发人员设计,不是咱凡人用得起滴,所以我要搬家(为何要搬家?看了下面就知道了)。说到这里我要提一下freehao123,似乎我每次想搞什么这个博客就会写什么文章,难道Qi(博主)有未卜先知的本领? 在这里我简要概述一下appfog的缺点,当然了,appfog的优点也有不少,可以到freehao123进行查看, 数据库管理不方便,很难获取数据库地址和密码;上传文件不方便,win用户需要使用Ruby,非win用户也需要用代码;下载文件不方便,从后台下载到的. 阅读全文
posted @ 2012-08-27 15:50 yhtdfjn 阅读(1791) 评论(0) 推荐(0) 编辑

SQL数据库安全性的讨论

摘要: 许多Windows系统管理员,还兼职着微软SQL Server数据库管理员(DBA)的身份。另一方面,企业将许多机密的信息存储到了SQL Server数据库中。作为一名DBA新手,则需要了解SQL Server的安全模式和如何配置其安全设置,以保证“合法”用户的访问并阻止“非法”访问。而在SQL Server中登陆、用户、角色、权限提供了对数据库访问的权限,接下来在数据库安全性上着重分析它们的关系。●安全层次和验证模式一、安全层次 SQL Server支持三级安全层次。在我们登陆到SQL Server时,其实我们是经过了三步的验证。 第一层次是用户提供正确的账号和密码登录到SQL Server 阅读全文
posted @ 2012-08-23 09:44 yhtdfjn 阅读(325) 评论(0) 推荐(0) 编辑

我们一起来探究神奇的验证码吧

摘要: 一开始接触验证码,觉得很麻烦,每次登陆还得输入验证码,甚是麻烦,不是说过一切为了人民服务吗?为什么不给用户带来方便,我想没有哪位用户是愿意输入验证码的,特别是对于视力不是太好的朋友们,有时候很变态,明明记得是输入对了,但是最后显示的是验证码输入错误,这是否跟咱们的软件为人民服务冲突呢?最为难的是春运的时候买火车票,很多人都是买到票之后,由于验证码输入错误或者提交失败一直到提交成功的时候,显示的却是票不足,购票不成功,这多伤人啊。为此,我百思不得其解。直到那一天……我恍然发现,咱们想的都是太自私了,都是为自己的方便着想,没有想到程序员的难处,当然程序员是想让大家方便,但是没有事事都是两全其美.. 阅读全文
posted @ 2012-08-23 09:38 yhtdfjn 阅读(249) 评论(0) 推荐(0) 编辑

C++中虚函数工作原理

摘要: 一、虚函数的工作原理 每当创建一个包含有虚函数的类或从包含有虚函数的类派生一个类时,编译器就会为这个类创建一个虚函数表(VTABLE)保存该类所有虚函数的地址,其实这个VTABLE的作用就是保存自己类中所有虚函数的地址,可以把VTABLE形象地看成一个函数指针数组,这个数组的每个元素存放的就是虚函数的地址。在每个带有虚函数的类 中,编译器秘密地置入一指针,称为v p o i n t e r(缩写为V P T R),指向这个对象的V TA B L E。 当构造该派生类对象时,其成员VPTR被初始化指向该派生类的VTABLE。所以可以认为VTABLE是该类的所有对象共有的,在定义该类时被初始化;而 阅读全文
posted @ 2012-08-22 09:20 yhtdfjn 阅读(404) 评论(1) 推荐(1) 编辑

为什么 jdk 中把 String 类设计成 final?

摘要: 最佳答案:主要是为了 “ 效率 ” 和 “ 安全性 ” 的缘故。 若 String 允许被继承, 由于它的高度被使用率, 可能会降低程序的性能,所以 String 被定义成 final。其它答案一:String 和其他基本类型不同 , 他是个对象类型. 既然是对象类型 , 如果是在静态方法下是必须调用静态方法或值的 , 如果是非静态的方法 , 就必须要实例化.main 函数是个 static 的. 所以String 要能像其他的基本类型一样直接被调用. 这也是为什么在 main 函数下使用 String 类型不会报告错误的原因..一下就解释了两个心里的疑问..以前一直觉得奇怪 ,为什么 Str 阅读全文
posted @ 2012-08-22 09:17 yhtdfjn 阅读(178) 评论(0) 推荐(0) 编辑

分析Android应用程序与SurfaceFlinger连接过程

摘要: 前文在描述Android应用程序和SurfaceFlinger服务的关系时提到,每一个有UI的Android应用程序都需要与SurfaceFlinger服务建立一个连接,以便可以通过这个连接来请求SurfaceFlinger服务为它创建和渲染Surface。在本文中,我们将以Android系统的开机动画应用程序为例,详细描述Android应用程序是如何与SurfaceFlinger服务建立连接的。 Android系统的开机动画是由应用程序bootanimation来实现的,它位于/system/bin目录下。为什么要选择Android系统的开机动画来分析Android应用程序与Surfac.. 阅读全文
posted @ 2012-08-21 09:08 yhtdfjn 阅读(336) 评论(0) 推荐(0) 编辑

利用Python脚本实现-----登陆新浪微博&批量下载收藏内容

摘要: 今天开新浪微博,才发现收藏已然有2000+了,足足104页,貌似需要整理下了,可是一页页整理,难以想象所以想下载,然后进行提取处理,转为文档我们关注的:1.微博正文+评论内容2.图片3.视频链接用python实现思路:1.脚本模拟登陆新浪微博,保存cookie2.有了cookie信息后,访问收藏页面url3.从第一页开始,逐步访问,直到最后,脚本中进行了两步处理 A.直接下载网页(下载到本地,当然,要看的时候需要联网,因为js,图片神马的,都还在) B.解析出微博需要的内容,目前只是存下来,还没有处理 后续会用lxml通过xpath读取,转换成文档,当然,图片和视频链接也会一同处理,目前未.. 阅读全文
posted @ 2012-08-21 09:05 yhtdfjn 阅读(1148) 评论(0) 推荐(0) 编辑

Unity3D 游戏引擎之游戏场景的切换

摘要: 持久化简单的数据储存在Unity3D 中提供了一个简单有效的方法,如果之前的你做过Android的开发你会发现在Unity3D中持久化数据的储存和Android非常的想象。那么下面MOMO 将用一个简单有效的例子向大家介绍Unity3D中持久化数据。首先我们须要熟悉一下Unity3D中的PlayerPrefs这个类。这个类中一共帮助我们封装了9个方法,用来数据的储存与读取。举一个例子[csharp]view plaincopyPlayerPrefs.SetString("key","value");stringstr=PlayerPrefs.GetStr 阅读全文
posted @ 2012-08-20 08:58 yhtdfjn 阅读(624) 评论(0) 推荐(0) 编辑