网站推广计划方法,网站的大量图片存储格式,手机网站建设步骤,下载中国建设银行app近来使用开辟的过程中涌现了一个小问题#xff0c;顺便记录一下原因和方法--文件项目 一、SVN、TortoiseSVN、Subclipse分析 团队开辟技术#xff1a; (1)单元测试#xff1b;(2)版本控制#xff1b; (3)项目主动化#xff1b; SCM:软件配置管理#xff0c;包含SVN#…近来使用开辟的过程中涌现了一个小问题顺便记录一下原因和方法--文件项目 一、SVN、TortoiseSVN、Subclipse分析 团队开辟技术 (1)单元测试(2)版本控制 (3)项目主动化 SCM:软件配置管理包含SVN SVN是CVS的接棒人是版本控制系统 版本控制简单地说就是要让团队的人能够快速的统一代码增强相同 SVN由客户端和服务器组成服务器是项目仓库即存储项目的地方客户端则是当地拷贝即由SVN管理可以提交到项目仓库和从项目仓库中获得项目的地方 svn宗旨万物皆目录 TortoiseSVN是SVN的客户端因为如果是传统的Subversion客户端须要通过命令行完成任务而TortoiseSVN是通过GUI的方式完成的 Subclipse是Eclipse中的一个插件简单的说也是一个SVN客户端只是为了方便Eclipse开辟因此可以在Eclipse中进行提交、导入 下载地址 SVNhttps://sourceforge.net/projects/win32svn/files/1.6.17/svn-win32-1.6.17.zip/download TortoiseSVNhttps://downloads.sourceforge.net/project/tortoisesvn/1.7.6/Application/TortoiseSVN-1.7.6.22632-win32-svn-1.7.4.msi?rts1331344321use_mirrorcdnetworks-kr-2 Subclipse在线安装地址http://subclipse.tigris.org/update_1.6.x 注意配置SVN时须要配置环境变量 (1)pathC:/subversion/bin; (2)SVN_EDITORnotepad; 设置默认的编辑器 二、SVN命令分析 检测版本svn --version 和 svnadmin --version 创建项目仓库svnadmin create D:\svn-repos 导入tmpdir目录下的文件到sesame/trunk中等于添加而不是修改 D:\svnworkspace\tmpdirsvn import -m import Sesame project . file:///d:/svn-repos/sesame/trunk -m表现可以提供一些注释.表现把当前目录下的文件导入 注只有在import时须要项目仓库的URL在diff、commit都不须要URL 在svnworkspace下checkout指定最新的项目并命名为sesameD:\svnworkspacesvn co file:///d:/svn-repos/sesame/trunk sesame checkout指定版本此处为第一版本的项目svn checkout -r 1 svn://xiazdong-PC/sesame/trunk test3 查看文件状态svn status Day.txt 查看项目仓库是不是有更新svn status --show-updates 注 (1)M:当地被修改但是没有提交 (2)C(Conflict):更新时有冲突存在 (3)G(Gather):当地版本和项目仓库版本合并到一同 (4)U(Update):当地版本被成功更新 (5)A(Add):任务拷贝中添加新文件 (6)D(Delete):文件在项目仓库中被删除所以任务拷贝中此文件也被删除 查看当地拷贝的文件改动(如果项目仓库有改动检查不出)svn diff Day.txt 查看项目仓库和当地任务拷贝的区分svn diff -rHEAD Number.txt 查看两版本之间的差别svn diff -r2:4 Number.txt 查看近来的改动svn diff -r PREV:BASE Number.txt 更新当地拷贝svn update 更新指定目录或文件svn update Number.txt dir1/ dir2/ 注当发生冲突时会涌现提示修改 选择: (p) 推迟(df) 显示全部差异(e) 编辑, (mc) 我的版本, (tc) 他人的版本, (s) 显示全部选项: 提交改动D:\svnworkspace\sesamesvn commit -m 注释 但是注意commit只会提交改动如果在当地拷贝中创建一个文件则须要在此之前 svn add 文件 如果提交时冲突没处理则提交失败 获得某个文件的日志D:\svnworkspace\sesamesvn log Day.txt 获得某个文件的详细日志D:\svnworkspace\sesamesvn log --verbose Day.txt 获得两版本之间的日志svn log -r 2:4 Day.txt 分页显示日志svn log | more 注svn log不一定是最新的日志因为可能任务拷贝的版本和项目仓库的版本不一致svn log只能显示任务拷贝版本的日志 每日一道理 “一年之计在于春”十几岁的年纪正是人生的春天别辜负了岁月老人的厚爱与恩赐。行动起来播种梦想吧 注*表现有更新 获得sesame任务拷贝信息svn info sesame 拷贝文件svn copy Number.txt copy.txt 注拷贝后只是在当地完成须要提交更新项目仓库 重命名文件svn move copy.txt copy.py 重命名目录svn move dir1 dir2 直接在项目仓库中重命名目录D:\svnworkspace\test3svn move -m rename svn://xiazdong-pc/sesame/trunk/Number.txt svn://xiazdong-pc/sesame/trunk/dest.txt 显示文件的每行的最新版本及谁变动的svn blame Number.txt 还原文件svn merge -r 7:6 Number.txt 联网访问的三种方法 (1)svnserve (2)ssh (3)apache 对于某个特定的项目仓库启动svnservestart svnserve --daemon --root D:\svn-repos 通过svnserve签出文件svn co svn://xiazdong-PC/sesame/trunk vizier 默认svnserve管理的项目仓库是只读的即只能签出不能提交在/conf/svnserve.conf中添加 anon-accessread //匿名用户只读 auth-accesswrite//授权用户可写 passowrdpasswd//在passwd文件内配置 在passwd文件中配置xiazdong12345表现用户名是xiazdong密码是12345注意在svnserve.conf和passwd两个文件配置时必须顶格否则无效 属性文件的元数据 为Number.txt设置checked-by属性为xiazdongsvn propset checked-by xiazdong Number.txt 编辑Number.txt中的checked-by属性须要配置SVN_EDITOR设置默认编辑器svn propedit checked-by Number.txt 列出Number.txt的所有属性svn proplist Number.txt 获得某个属性svn propget checked-by Number.txt 经常使用属性 (1)svn:ignore疏忽某些文件 *.java表现疏忽java文件 (2)svn:eol-style设置换行符一般为 native,表现随着操作系统而变化 (3)svn:mime-type设置文件的mime类型 (4)svn:needs-lock设置文件加锁 一般我们可以在文件中配置autoprops主动设置 1.寻觅config文件 (1)echo %APPDATA% (2)\subversion\config 2.设置enable-auto-props true 3.找到[auto-props]并设置主动属性 文件加锁 严格加锁只允许一个人改动一个文件 悲观加锁比如有A、B两人同时checkout了一个文件File.java并且同时对他们修改了A先提交当B想提交时必须先svn update把自己的目录酿成最新的当前才能够提交更新时会涌现两种情况 (1)如果A和B改动的不是同一行那么会畸形合并 (2)如果A和B改动的是同一行则会在源代码中标记出冲突 而Subversion默认是采用悲观加锁 对于文本文件可以通过合并的方式处理冲突但是对于二进制文件则须要文件加锁处理 为文件开启文件加锁为某个文件添加svn:needs-lock属性并且commit到文件仓库 文件加锁svn lock Day.txt -m lock 强制解锁虽然别人有锁但是另外一个人可以强制解开锁但没有获得锁svn unlock --force svn://xiazdong-pc/sesame/trunk/Day.txt 强制加锁不管有没有人有锁都抢过来svn lock --force Day.txt 转向其他目录svn switch svn://xiazdong-pc/sesame/branches/b1 冲突 .mine 本来代码 项目仓库代码 .r4 分支和标签简单地来说就是某个任务拷贝的复制 在分支上开辟 (1)在项目仓库中创建branches目录 svn mkdir svn://xiazdong-pc/sesame/branches (2)在项目仓库中将骨干复制到b1目录中 svn copy svn://xiazdong-pc/sesame/trunk svn://xiazdong-pc/sesame/branches/b1 (3)通过b1目录checkout一份任务拷贝 svn co svn://xiazdong-pc/sesame/branches/b1 b1 (4)提交 三、TortoiseSVN使用分析 如果晓得SVN中的术语其实此工具非常易于入门和使用 1.checkout 2.冲突问题 四、Subclipse使用分析 1.checkout 2.commit等 文章结束给大家分享下程序员的一些笑话语录 一程序员告老还乡想安度晚年于是决定在书法上有所造诣。省略数字……准备好文房4宝挥起毛笔在白纸上郑重的写下Hello World