posts - 262,  comments - 221,  trackbacks - 0
项目管理
敏捷文章三则
posted @ 2011-06-18 23:02 Paul Lin 阅读(290) | 评论 (0)  编辑
【原】敏捷开发沉思(真实对话)      摘要: ....
甲:嗯....可是这样看起来,我完全看不到敏捷的任何好处啊
乙:嗯。实际上,我更喜欢RUP,虽然麻烦但很清楚
....  阅读全文
posted @ 2011-06-01 23:31 Paul Lin 阅读(891) | 评论 (1)  编辑
【转】网络阅读,为什么人会浮躁?      摘要: 原文链接:http://www.javaeye.com/topic/698774

这篇文章放到这个版面,因为我认为它属于管理的范畴:个人管理(时间管理、知识管理)。

是不是大家也有这种体会:


网站注册越来越没耐心,看到页面全是文本框、下拉框,就心烦,咔一下关了。
文章超过两屏的,就没勇气往下看。
看到文章的相关链接,没完没了,两小时后,脑袋一片混乱,真想凉水冲冲。
Google Reader的未读项又是1000+了,看吧,压力太大,不看吧,有种挫败感,干脆,全部设置为已读。

焦虑、挫败、恐惧,什么感觉都来了,唯独没有愉悦感。

......  阅读全文
posted @ 2010-07-13 17:36 Paul Lin 阅读(441) | 评论 (0)  编辑
【原】SVN In Action系列发布      摘要: SVN是一个开放的、免费的版本控制管理工具,相比CVS,Perforce等其他工具,SVN在版本模型,锁定策略方面要更加灵活高效。下面就让我们开始一步一步地学习如何使用SVN,如何把版本控制融入到日常工作中,更重要的是在学习版本控制的过程中树立起团队合作的理念。

关于SVN的参考资料,最好的莫过于其官方文档《Version Control with Subversion》,作为新手一定要看的是里面的第一章《Fundamental Concepts》和第二章《Basic Usage》以及第九章《Subversion Complete Reference》。

为了做到真正的In Action,我采用了Step-by-Step的方式,模拟一个项目从检出项目开始,到修改本地副本,再到提交变更,解决冲突等一系列的实际工作中会遇到的场景,期望通过这些场景和任务来对SVN和版本控制、团队合作有一个基本的认识  阅读全文
posted @ 2009-12-13 12:29 Paul Lin 阅读(3450) | 评论 (5)  编辑
【原】SVN In Action(23)      摘要: SVN日常操作基本命令总结
1. 导入/导出资源:svn import、svn checkout
2. 更新工作副本: svn update
3. 添加变化:svn add、svn delete、svn copy、svn move
4. 检查变化:svn status、svn diff
5. 撤销变化:svn revert
6. 解决冲突:svn resolved
7. 提交变更:svn commit  阅读全文
posted @ 2009-12-11 18:23 Paul Lin 阅读(424) | 评论 (0)  编辑
【原】SVN In Action(22)      摘要: 这时就需要用到SVN提供的清理功能了。清理功能是通过svn cleanup 命令来完成的。当执行这个命令时,SVN会首先完成log文件中没有完成的剩余工作,释放锁定,最后删除log文件。通常我们都是在项目的根目录来执行这个命令  阅读全文
posted @ 2009-12-11 18:19 Paul Lin 阅读(335) | 评论 (0)  编辑
【原】SVN In Action(21)      摘要: 什么时候是Branch?什么时候是Tag?原则如下:

如果你还需要继续向目录提交变更,它就是个分支。如果一旦拷贝后不再提交任何改变哪就是标记。实际上SVN不会强制你不能对名为***tag的目录进行commit操作,这只是通常上约定。即便因为误操作我们也可以轻易的使用update操作回滚到当初创建Tag时的快照版本  阅读全文
posted @ 2009-12-11 17:39 Paul Lin 阅读(345) | 评论 (0)  编辑
【原】SVN In Action(18)      摘要: svn merge的命令用法有三种:
A.svn merge sourceURL1[@N] sourceURL2[@M] [WCPATH]
B.svn merge sourceWCPATH1@N sourceWCPATH2@M [WCPATH]
C.svn merge[[-c M]...|[-r N:M]...] [SOURCE[@REV][WCPATH]]

Step 1:确定要从哪个版本开始~那个版本结束
Step 2: 执行集成
Step 3: 提交集成结果

  阅读全文
posted @ 2009-12-11 12:02 Paul Lin 阅读(438) | 评论 (2)  编辑
【原】SVN In Action(17)      摘要: svn switch [--relocate] URL。该命令有两种用法:一种是不使用参数relocate的,一种是使用relocate参数的。它们的使用原则如下:

A.如果切换后的版本库路径还是在同一个版本库,只是在不同的路径下。那么使用svn switch URL
B.如果切换后的版本库位置已经改变(主机迁移,版本库迁移),但是目录结构不变。就需要加relocate参数  阅读全文
posted @ 2009-12-10 19:02 Paul Lin 阅读(374) | 评论 (0)  编辑
【原】SVN In Action(16)      摘要: 我们看到“创建分支”居然和普通的拷贝动作一摸一样!是的对SVN来说,主干、分支、标记都是普通的目录而已,这些都是人为加上的意义。  阅读全文
posted @ 2009-12-10 17:04 Paul Lin 阅读(379) | 评论 (0)  编辑
【原】SVN In Action(15)      摘要: SVN提供了几种解决冲突的建议:

A.(p) postone 延迟解决
B.(df) diff-full 显示所有冲突的内容
C.(e) edit 启动编辑器解决冲突
D.(r) resolve 标识冲突已经解决
E.(mf) mine-full 用我的版本覆盖他人的修改
F.(tf) theirs-full 用他人的版本覆盖我的修改
G.(l) lanuch 启动其他工具来解决冲突
H.(h) help 启动帮助信息

虽然SVN提供了比较差异和解决冲突的方法,但避免冲突的最好方法永远只有一个:明确的分工和良好的沟通,尽量避免多个人同时修改同一份文件。如果不能避免,那么最好指定一个人在提交前负责合并各人的更新,然后一次性提交。  阅读全文
posted @ 2009-12-09 23:25 Paul Lin 阅读(577) | 评论 (0)  编辑
【原】SVN In Action(14)      摘要: ●使用svn update -r 命令
●使用svn copy命令
●使用svn cat命令配合重定向  阅读全文
posted @ 2009-12-09 17:19 Paul Lin 阅读(408) | 评论 (0)  编辑
【原】SVN In Action(13)      摘要: 默认情况下如果svn log不加任何参数,会显示当前目录下所有资源的变更历史,我们可以通过PATH,URL来限定显示范围,还可以通过URL PATH来显示某个URL下的某个(些)文件的变更历史,甚至还可以指定版本号,版本范围。

各种svn log的用法看似复杂,实际上离不开两样东西:

A.资源路径:本地路径(PATH)或远程路径(URL/URL PATH)
B.版本号或版本范围:-r 18:HEAD或者@19
  阅读全文
posted @ 2009-12-09 16:01 Paul Lin 阅读(286) | 评论 (0)  编辑
【原】SVN In Action(12)      摘要: A.因为SVN为了保护用户不小心update操作而覆盖自己本地的修改,不会对已经被修改但尚未提交的资源进行update操作。像这种情况下只能用svn revert而不能用svn update。

B.和svn update不会对已修改而尚未提交的资源进行update之外,svn del同样不会删除已修改但尚未提交的资源---除非你强制加上--force参数。

C.不要把所有变更都放在最后一次性提交,提交要及时、多次。否则一旦回滚所有其他修改都会跟着撤销。  阅读全文
posted @ 2009-12-09 11:19 Paul Lin 阅读(521) | 评论 (0)  编辑
【原】SVN In Action(11)      摘要: 回滚属性和回滚操作  阅读全文
posted @ 2009-12-09 11:00 Paul Lin 阅读(279) | 评论 (0)  编辑
【原】SVN In Action(10)      摘要: 实际上svn revert命令是一把“双刃剑”。它有几个需要特别小心的地方:

A.回滚是不可恢复的。由于svn revert回滚的是任何未提交的操作,内容,属性。所以意味着SVN不会为你保存任何回滚前的历史版本
B.回滚是不止于一点而是一段时间的。只要你没有提交版本,那么不论你多久之前所做的修改都会被回滚,而不仅仅是最近一次的修改  阅读全文
posted @ 2009-12-09 09:47 Paul Lin 阅读(721) | 评论 (0)  编辑
【原】SVN In Action(9)      摘要: show-updates参数会令客户端显示本地工作副本那些文件是out-of-date的。它并不会立即更新本地副本,而是告诉你那些文件会在下次的svn update中被更新  阅读全文
posted @ 2009-12-08 21:50 Paul Lin 阅读(324) | 评论 (0)  编辑
【原】SVN In Action(8)      摘要: A. svn cat 命令是客户端命令,在客户端运行。而svnlook cat 命令是服务器端命令,只能在版本库所在的机器上运行
B. svn cat 命令可以查看本地工作副本(PATH)或版本库(URL)资源的内容,而svnlook cat 命令只能使用REPOS_PATH PATH_IN_REPOS形式  阅读全文
posted @ 2009-12-08 17:04 Paul Lin 阅读(454) | 评论 (0)  编辑
【原】SVN In Action(7)      摘要: 整个目录的忽略

Step 1: 把目录export到其它目录下
Step 2: 把版本库上的对于目录删除并同步到本地
Step 3: 把原有目录添加回原来的位置下,并加入SVN ignore列表
Step 4: 检查忽略是否生效

  阅读全文
posted @ 2009-12-08 16:29 Paul Lin 阅读(486) | 评论 (0)  编辑
【原】SVN In Action(6)      摘要: 一次性忽略多个文件:

Step 1: 在本地任意目录下创建一个文件,名字假设为ignore.txt
Step 2: 编辑该文件,添加想要忽略的文件名列表
Step 3: 通过文件一次忽略多个条目
Step 4: 提交变更
Step 5: 检查忽略是否生效
  阅读全文
posted @ 2009-12-08 16:15 Paul Lin 阅读(519) | 评论 (0)  编辑
【原】SVN In Action(5)      摘要: 单个文件的忽略:

Step 1: 把文件备份到其他位置
Step 2: 把版本库对应的文件删除
Step 3: 从版本库更新到本地工作副本
Step 4: 把文件拷贝回原有位置
Step 5: 把文件添加到SVN的全局属性svn:ignore
Step 6: 提交属性变更  阅读全文
posted @ 2009-12-08 14:51 Paul Lin 阅读(341) | 评论 (0)  编辑
【原】SVN In Action(4)      摘要: 关于svn add命令我们有2个需要注意的地方:
A.和svn status命令一样,svn add命令只能使用PATH,而不能使用URL作为参数
B.当svn add命令执行完毕后,相关资源并不会马上立即被加入版本控制中,需要再执行一次commit

我们需要在每次commit后立即update,已保证我们最新代码被上传到版本库的同时,他人的最新代码能够被及时更新到本地  阅读全文
posted @ 2009-12-08 11:09 Paul Lin 阅读(343) | 评论 (0)  编辑
【原】SVN In Action(3)      摘要: 使用svn info命令可以查看项目版本控制的静态信息
使用svn status命令可以查看项目版本控制的实时变更信息  阅读全文
posted @ 2009-12-08 10:09 Paul Lin 阅读(433) | 评论 (0)  编辑
【原】SVN In Action(2)      摘要: 把项目import到版本库之后,项目并不会立即就被加入到版本控制中,还需要再从版本库中check out到本地原有位置才是真正地吧项目加入到版本控制。这一点和TCP/IP协议的三次握手过程类似。必须确保双方都知道对方的存在和联系。  阅读全文
posted @ 2009-12-07 16:37 Paul Lin 阅读(393) | 评论 (0)  编辑
【原】SVN In Action (1)      摘要: 下面我们把svn list和svnlook tree命令的用法总结一下:

A.svn list PATH:列出PATH对应的版本库路径下的目录内容
B.svn list URL: 列出URL对应的路径下的目录内容
C.svnlook tree REPOS_PATH:递归地列出REPOS_PATH对应的版本库路径下的目录树内容
D.svnlook tree REPOS_PATH PATH_IN_REPOS: 递归地列出REPOS_PATH下子目录PATH_IN_REPOS路径下的目录树内容  阅读全文
posted @ 2009-12-07 16:12 Paul Lin 阅读(675) | 评论 (0)  编辑
【版本控制之路】使用Apache和SSL搭建安全的SVN访问      摘要: 使用Apache和SSL搭建安全的SVN访问  阅读全文
posted @ 2009-01-07 22:37 Paul Lin 阅读(3454) | 评论 (3)  编辑
【版本控制之路】版本库的备份      摘要: SVN的三种备份方式:完全备份,增量备份,版本库同步  阅读全文
posted @ 2008-12-30 17:35 Paul Lin 阅读(2468) | 评论 (5)  编辑
【版本控制之路】SVN版本库的迁移      摘要: SVN的版本库迁移  阅读全文
posted @ 2008-12-26 11:52 Paul Lin 阅读(4116) | 评论 (1)  编辑
【版本控制之路】扛起SVN的大旗      摘要: 版本控制之路,路漫漫其修远兮,吾将上下而求索  阅读全文
posted @ 2008-12-25 18:00 Paul Lin 阅读(2280) | 评论 (3)  编辑
【版本控制之路】SVN权限模型一例      摘要: SVN权限模型一例  阅读全文
posted @ 2008-12-25 17:08 Paul Lin 阅读(1992) | 评论 (0)  编辑
【版本控制之路】SVN强制写Log失败的解决方案一例      摘要: SVN强制写Log的方法和失败处理一例  阅读全文
posted @ 2008-12-24 16:02 Paul Lin 阅读(4704) | 评论 (1)  编辑

<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用链接

留言簿(21)

随笔分类

随笔档案

BlogJava热点博客

好友博客

搜索

  •  

最新评论

阅读排行榜

评论排行榜