Monday, February 27, 2012

Eclipse + SVN + Google code搭建代码仓库


1.为何使用版本控制
    可以说在一些小公司,或者一些不是特别依赖技术的公司,缺乏技术管理人才,由于自身的局限性,里面的开发人员往往在开发的时候也是具有很大的局限性。加上人力,周期的限制,很多都不采用版本控制,大家都是在一台测试服务器上做开发,调试端在服务器。这样有什么问题?
第一,很可能我们同时几个人在修改一个页面而相互不知情,这样后保存的人很可能覆盖掉前者所做的改动,如果之前没有备份,那结果是可怕的。想避免,你就要等别人改完,这是开发就不能并行操作。
第二,当你做了大量的修改,由于需求的变化,我们很有可能要将代码改回之前的样子,假设只有20行代码,OK,你手工凭记忆改,2000行呢?你记得你改了哪些吗? 更惨的我见过开发完一个项目结果测试服务器被人误删了数据,2个月的辛苦努力白费了。 使用版本控制,我们完全可以很好的解决以上问题。
简单点来说,版本控制就是时间机器.它可以记录你对文件的每次更改,这样,就算你在昏天黑地的改了几个月后老板说不要了,还是按照过去那样,你也不会抓狂。简单的恢复版本操作就搞定一切 。是一种软件工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案都得到更新。 版本控制透过文档控制(documentation control)记录程序各个模组的改动,并为每次改动编上序号。这种方法是维护(maintenance) of 工程图(engineering drawings)的标准做法, 它伴随着工程图从图的诞生一直到图的定型。一种简单的版本控制形式,例如,赋给图的初版一个版本等级“A”。当做了第一次改变后,版本等级改为“B”,以此类推等等。

2.为何使用Subclipse
    版本控制软件主要有:MS 的VSS,开源的CVS和SVN,zendIDE自带CVS
CVS有很多局限性:比如它只记录单个文件的版本,不支持文件的删除,添加的版本控制;针对CVS的局限性,SVN就应运而生了,同时SVN可以由apache带动,直接通过http协议在更新仓库文件。对于这样的组合是非常完美的;至于VSS个人觉得很难用,而且效率低下,也不跨平台。
所以坚决推荐SVN。通过SVN调试环境是每个开发成员的客户机,每个成员可以通过仓库的更新直接获取其他成员的新文件和改动,对于多人修改了同样的代码可以做出冲突提示,在发生问题时也可以轻松找到是谁改了哪行代码。这样执行并行开发,效率非常高,同时只可以很好的备份代码。

3.将 Subclipse 添加到 Eclipse
     1.Subclipse是一个为Eclipse IDE添加Subversion支持的项目。将使用 Eclipse 的更新管理器将Subclipse添加到Eclipse IDE。在Eclipse3.5中的”Help”菜单中选择Install New Software(在Eclipse3.3中的“Help”菜单中选择Software Updates>Find and Install打开更新管理器。)
弹出Eclipse插件更新管理器,界面如图所示:




单击”add”按钮弹出添加新的更新站点,界面如下所示:


在Name中输入您需要的内容(Subclipse 是最佳选择),并输入以下URL:http://subclipse.tigris.org/update_1.0.x(当前Subclipse 新站点)。单击OK将 Subclipse更新站点添加到更新管理器的列表中。
填写好Name和Location后单击“OK”按钮后继续单击“Next”进入下一步操作;直到出现如下界面:

选择“I accept the terms of the license agrements”,单击“Finish”按钮,进入界面如下所示:


安装完以后重新启动Eclipse,点击“Yes”按钮后我们就将SVN集成到Eclipse中来了,安装插件工作已经完成,接下来我们趁着重启Eclipse的时候把下面工作完成。

4.配置远程服务器
首先我们来配置一个远程服务器:
首先你需要有一个Google的账户https://www.google.com/accounts/Login?continue=http://www.google.cn/webhp%3Frls%3Dig&hl=zh-CN,如果你没有Gmail邮箱,则点击“现在就创建一个账户”。这些步骤完成之后。登录上去选择“更多—>更多—>Code—>源计划—>项目托管—>”出现界面如下所示:



在这里我们将在google code上创建我们自己的项目。点击页面上的链接 Create a new project 点击链接后,我们将进入一个新的界面.在这个界面里面你需要填写项目的各种基本信息。界面如下所示:

Project Name 工程名,这个名字是以后你的项目域名的一部分。其它的基本信息在工程建好后任然可以修改。创建完成后将进入工程界面。接下来我们需要开始收集用于svn远程使用的一些信息了。看看都有哪些人可以控制这个项目,在主页面右面的 Project owners: 会有写。收集url和密码了,点击 source 认真看下面的信息.特别是作为一个owner你需要认真看那些链接.你会发现那个加粗的https。是的这一点非常重要。显示如下所示:


然后去看看管理这个工程需要的密码吧.点击那个 googlecode.com password ,新窗口中将是你登录使用的密码了。显示界面如下所示:

当然粗体部分就是你的密码了。
最后我们来总结一下使用Eclipse SVN + Google code需要的数据有:账户,url和密码。

5.项目上传到Google code
选择你希望上传到服务器的项目点击鼠标右键Team—>Share Project   弹出界面如下所示:


选择SVN,单击“Next”,显示界面如下:

在URL位置输入,单击“Next”,显示如下界面:


此处可以指定模块名,也可以使用项目的名字。单击“Next”进入下一步:

单击“Finish”进入下一步,显示界面如下所示:

提示接受数字证书,选择“永久接受”进入界面如下所示:

输入你的Gmail账号名和取得的密码,单击“OK”。等到你的Eclipse控制台输出如下图所示,则表示的文件已经上传成功了。

注意:在第一次上传项目代码时,上传的速度会比较慢,这个时候你就忍受下龟速吧;如果你认为以后也是这样,那么恭喜你答错了;其它时候“提交”、“更新”、“导出”等操作时,速度都是非常快的。嘿嘿!

6.导出项目至本地
在Package Explorer窗体单击右键,选择“Team—>导出”,选择好要导出到的目录后单击“确定”按钮,完成这两步操作,我们就成功的将项目导出到我们自己的电脑上了。

7.更新项目至本地
在Package Explorer窗体单击右键,选择“Team—>更新”,等待执行完成。项目就已经更新到本地了。

8.提交项目到Google code
在Package Explorer窗体单击右键,选择“Team—>提交”,单击“OK”按钮后,等待执行完成后,项目就已经提交上Google code了。这是对Eclipse SVN + Google code的一个基本应用。

Friday, February 24, 2012

Dropbox免费空间之最新扩容办法,最高可增加5GB空间

Dropbox——-一个很老牌的网盘,现在在测试最新的1.3.13版本的性能,采用如下方法可以免费扩容5GB


如果你是新手请点击此处注册dropbox帐号


好开始了:


下载beta版本地址:


Windows版dropbox1.3.13


linux版dropbox1.3.13


原理:


dropbox最近1.3.13 beta测试版本增加了从U盘或者其他设备搜索相片视频(wmv jpg jpep等格式的文件)然后上传的功能,找我们这些小白鼠测试,这是报酬。当然beta版本是否有不稳定我就不知道了,建议大家在扩容完毕装回正式版


开始了,各位:


1.准备工作是 装好上面下载的beta版本 和 在你的U盘里准备好照片或视频(我的做法是找很多个100MB的文件改为wmv后缀文件后复制进U盘,每成功上传500M容量的文件就给你增加500M免费空间,极限为5GB)


2.开启dropbox,U盘打开自动播放,如下图:








点击Import pictures and videos,桌面右下角就会出现以下图样





最后在你的dropbox文件内会多出2个新的文件夹如下图所示的前2个文件夹


audioNotepad和camerauploads





这样就可以了,然后你就可以去查看你的dropbox容量了,比如下图是我的就成功从原来的19.88GB免费空间扩容到20.38GB 20.88GB 21.38GB了











最后终于扩容到了满容量24.88GB,庆祝!!!!!








本文链接地址: Dropbox免费空间之最新扩容办法,最高可增加5GB空间


原创文章,转载请注明: 转载自奶牛博客

Tuesday, February 7, 2012

360清理垃圾,Picasa总有很多的缓存文件之疑问

个人觉得google的picasa相册,以前觉得不习惯,而且把电脑里的所有的图片索引起来,有点暴露隐私啊,万一什么人开了picasa,岂不是电脑的所有图片都曝光了。所以一直都不坚持不用,最近重新装系统,还是想再试试看新版的picasa,装了一个发现真的还挺智能的,最大的特点也是我喜欢的,它可以把所有照片中的人物实现人脸识别分组,然后需要自己手动加上名字,我想这个功能最好之处就在于,对30年之后还能清楚的分辨出以前的小学、中学、高中、大学同学的名字和当时的容貌,那时候想起来肯定特别的怀念。所以埋头费了很长时间一一的人像姓名录入,为了也是以后呀。

当然还有同步google通讯录的头像以及google+的相册,实现google账户的全方位相册管理,还是挺喜欢的哈。

好用的、智能的东西总会有缺点和诟病,比如平时使用360清理垃圾,这次发现picasa的缓存占用特别多,而且最怕的是不敢轻易删除,万一都输入好的人名匹配被一起清楚了就傻了。。。。。。

后来发现,用完GOOGLE的Picasa或者浏览过Picasa的图片后,那些缓存下来的图片就会储存到某些文件夹中。如果你是用Picasa软件,那么只要找到相关的缓存图片或历史文件清除项,选择清除就行了,或者你直接手动删除也可以。

用Chrome浏览器也会出现类似的情况,Application Data\Google\Chrome中的文件夹会有一个记录历史文件的压缩文件,可以用ChromeViewer这个软件打开浏览并提取文件出来,清除也是要手动清除。


Google的软件大多这样,与IE不同,IE的缓存或临时文件放在Temp中,一关机就清除掉,但是Google的你不手动清除就会一直留着,直到你硬盘没有空间。

Monday, February 6, 2012

vmware的几个网卡解释

VMnet0:VMware用于虚拟桥接网络下的虚拟交换机;

VMnet1:VMware用于虚拟Host-Only网络下的虚拟交换机;

VMnet8:VMware用于虚拟NAT网络下的虚拟交换机;

VMware Network Adapter VMnet1:这是Host用于与Host-Only虚拟网络进行通信的虚拟网卡;

VMware Network Adapter VMnet8:这是Host用于与NAT虚拟网络进行通信的虚拟网卡;

VMware Workstation下VMnet1、VMnet0等虚拟网卡与主机网卡之间的关系


1虚拟网络设置

默认情况下,VMware Workstation的虚拟网卡使用192.168.1.0~192.168.254.0范围中的(子网掩码为255.255.255.0)两个网段(对应于第一块虚拟网卡VMnet1和第2块虚拟网卡VMnet8),即使在同一台主机上安装VMware,在每次安装的时候,其使用的网段也不固定。在用VMware Workstation做网络实验的时候,这样很不方便,我个人习惯于把VMware使用的网段“固定”,通常采用下面的原则,如表1所示。
1 VMware虚拟网卡使用网络地址规划表
虚拟网卡名称
使用网段
子网掩码
VMnet1(即host网卡)
192.168.10.0
255.255.255.0
VMnet2(默认没有安装)
192.168.20.0
255.255.255.0
VMnet3(默认没有安装)
192.168.30.0
255.255.255.0
VMnet4(默认没有安装)
192.168.40.0
255.255.255.0
VMnet5(默认没有安装)
192.168.50.0
255.255.255.0
VMnet6(默认没有安装)
192.168.60.0
255.255.255.0
VMnet7(默认没有安装)
192.168.70.0
255.255.255.0
VMnet8(即NAT网卡)
192.168.80.0
255.255.255.0
使用表1的地址只是为了统一和方便,读者可以根据自己的爱好进行规划。另外,在做实验的过程中,这个地址是可以随时修改的。
在使用Team做实验时,Team中的LAN1、LAN2则依次使用192.168.101.0/24、192.168.102.0/24的地址.
 

2虚拟网卡(虚拟交换机)的关系

许多初学者不容易理解VMnet1VMnet8虚拟网卡的关系,实际上,这与现实生活中的计算机选择接入那个交换机有相似之处。
在现实生活中的计算机,如果有网卡,可以连接到交换机或集线器中,如果现实生活中的计算机所处的环境,有多个交换机(或集线器),可以选择连接到那一个交换机或集线器。
而在使用VMware Workstation创建虚拟机时,创建的虚拟机中可以包括网卡。你可以根据需要选择使用何种虚拟网卡,从而表明想要连接到那个虚拟交换机。在VMware Workstation中,默认有3个虚拟交换机,分别是VMnet0(使用桥接网络)、VMnet1(仅主机网络)和VMnet8NAT网络),还可以根据需要添加VMnet2VMnet7VMnet97个虚拟机交换机,而在VMware Workstation 5以后的版本中,还可以使用Team中的提供的虚拟交换机。
【说明】 Team中的虚拟机交换机与VMnet0VMnet9虚拟交换机不同之处在于,Team中的交换机与主机网络不发生关系,而VMnet0VMnet9虚拟交换机是与主机相连。并且,Team中的虚拟交换机可以限制网络速度。
下面介绍VMnet0VMnet1VMnet8虚拟交换机的关系,这可以在表2中看到。VMnet2等交换机,可以根据需要设置的与VMnet0VMnet1VMnet8相同,所以不在介绍。
2  虚拟机网络连接属性意义
选择网络连接属性
意义
Use bridged networking(使用桥接网络)
使用(连接)VMnet0虚拟交换机,此时虚拟机相当于网络上的一台独立计算机,与主机一样,拥有一个独立的IP地址,效果如图2-56所示
Use network address translationNAT)(使用NAT网络)
使用(连接)VMnet8虚拟交换机,此时虚拟机可以通过主机单向访问网络上的其他工作站(包括Internet网络),其他工作站不能访问虚拟机,效果如图2-57所示
Use Host-Only networking(使用主机网络)
使用(连接)VMnet1虚拟交换机,此时虚拟机只能与虚拟机、主机互连,与网络上的其他工作站不能访问,如图2-58所示
Do not use a network connection
虚拟机中没有网卡,相当于“单机”使用
虚拟机A1、虚拟机A2是主机A中的虚拟机,虚拟机B1是主机B中的虚拟机。在图2-56中,如果A1A2B都采用“桥接”模式,则A1A2B1ABC任意两台或多台之间都可以互相访问(需要设置为同一网段),这时A1A2B1与主机ABC处于相同的身份,相当于插在交换机上的一台“联网”的计算机。
 
2-56  桥接方式网络关系
【说明】 虚拟机A1、虚拟机A2是主机A中的虚拟机,虚拟机B1是主机B中的虚拟机。其中的“NAT路由器”是只启用了NAT功能的路由器,用来把VMnet8交换机上联接的计算机通过NAT功能连接到VMnet0虚拟交换机。如果B1A1A2设置成NAT方式,则A1A2可以单向访问主机BCBC不能访问A1A2B1可以单向访问主机ACCA不能访问B1A1A2AB1B可以互访。
 
2-57  NAT方式网络关系
【说明】
1. 虚拟机A1、虚拟机A2是主机A中的虚拟机,虚拟机B1是主机B中的虚拟机。如果B1A1A2设置成host方式,则A1A2只能与A互相访问,A1A2不能访问主机BC,也不能被这些主机访问;B1只能与B互相访问,B1不能访问主机AC,也不能被这些主机访问。
2. 在使用虚拟机“联网”的过程中,可以随时更改虚拟机连接到的“虚拟交换机”,这相当于在真实的局域网环境中、把网线从一台交换机上插到另一台交换机上一样。当然,在虚拟机中改变网络要比实际上插拔网线方便多了。和真实的环境一样,在更改了虚拟机的联网方式后,还需要修改虚拟机中的IP地址以适应联网方式的改变。例如,在图2-56中,假设主机的VMnet1使用网段地址192.168.10.0VMnet8使用网段地址为192.168.80.0,网关地址为192.168.80.2(相当于图2-57中“NAT路由器”内网地址),主机网卡使用地址为192.168.1.1。假设虚拟机A1开始被设置成桥接方式,虚拟机A1IP地址被设置为192.168.1.5。如果虚拟机A1想使用host方式,则修改虚拟机的网卡属性为“Host-Only”,然后在虚拟机中修改IP地址为192.168.10.5即可(也可以设置其他地址,只要网段与host所用网段在同一子网即可,下同);如果虚拟机A1想改用NAT方式,则修改虚拟机的网卡属性为“NAT”,然后在虚拟机中修改IP地址为192.168.80.5,设置网关地址为192.168.80.2即可。
 
2-58  host方式网络关系
 
【说明】这是《虚拟机技术与应用-配置管理与实验》、《典型网络实验》、《VMware虚拟机实用宝典》、《虚拟机技术与动手实验》图书基础知识,该书已经出版
本文出自 “王春海的博客” 博客,请务必保留此出处http://wangchunhai.blog.51cto.com/225186/61597