1、(5)切换之后结果如图:(6)在分支上修改提交比较等功能与svn普通操作一致。2.合并分支(1)项目右击-切换(s),(2)切换时会弹出下图,默认选择是标记本地和要切换的地址内容冲突(3)点击ok,切换成功。(4)选择项目-右击选择team-合并(5)合并方式选择,选择merge a range of revisions,去掉perform pre-merge beat practices checks默认勾选(该默认勾选不灵活无法具体指定分支和配置),点击next。(6)在弹窗中选择要合并的分支,以及默认的所有合适的版本点击next。(7)弹出冲突处理设置,选择默认的通知我来处理点击fini
2、sh。(8)生成合并结果日志。增量更新1.生成差异文件生成差异文件必须在提交代码之前!(1)提交前创建补丁,右击项目-创建补丁。(2)设置创建补丁的配置,选择保存到文件系统并指定具体的目录文件,在changes中选择变更文件,点击next。(3)选择要比较的根目录,选择project,点击finish。2.生成增量包(1)使用这个Java代码来生成一个更新包。在Java类中需根据本地情况修改patchFile,projectPath,webContent,classPath,desPath。package my.test;import java.io.BufferedInputStream;
3、import java.io.BufferedOutputStream;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Date;import j
4、ava.util.List;public class DeployAddTest public static String patchFile=D:/patch.txt;/补丁文件,由eclipse svn plugin生成 public static String projectPath=F:/wk20170221/land1/项目文件夹路径 public static String webContent=WebRoot/web应用文件夹名 public static String classPath=/wk20170221/land1/WebRoot/WEB-INF/classes/cla
5、ss存放路径 public static String desPath=/deploy/补丁文件包存放路径 public static String version;/补丁版本 /* * param args * * throws Exception */ public static void main(String args) throws Exception getversion(); copyFiles(getPatchFileList(); * 根据时间生成版本号 public static void getversion() SimpleDateFormat df = new Sim
6、pleDateFormat(yyyyMMddHHmmss);/设置日期格式 version=df.format(new Date(); System.out.println(df.format(new Date();/ new Date()为获取当前系统时间 /* *获取svn补丁文件中的变更文件列表 */ public static List getPatchFileList() throws Exception List fileList=new ArrayList1) fileList.add(line); return fileList;/ 找到变更文件列表根据路径复制对应class文
7、件到更新文件夹 public static void copyFiles(List list) for(String fullFileName:list) if(fullFileName.indexOf(src/=-1)/对源文件目录下的文件处理 String fileName=fullFileName.replace(src fullFileName=classPath+fileName; if(fileName.endsWith(.java) fileName=fileName.replace(.class fullFileName=fullFileName.replace( String
8、 tempDesPath=fileName.substring(0,fileName.lastIndexOf(/ String desFilePathStr=desPath+version+webContent+/WEB-INF/classes+tempDesPath; String desFileNameStr=desPath+fileName; File desFilePath=new File(desFilePathStr); if(!desFilePath.exists() desFilePath.mkdirs(); copyFile(fullFileName, desFileName
9、Str); System.out.println(fullFileName+复制完成 else/对普通目录的处理 String desFileName=fullFileName.replaceAll(webContent, fullFileName=projectPath+fullFileName;/将要复制的文件全路径 String fullDesFileNameStr=desPath+desFileName; String desFilePathStr=fullDesFileNameStr.substring(0,fullDesFileNameStr.lastIndexOf( copyFi
10、le(fullFileName, fullDesFileNameStr); System.out.println(fullDesFileNameStr+ private static void copyFile(String sourceFileNameStr, String desFileNameStr) File srcFile=new File(sourceFileNameStr); File desFile=new File(desFileNameStr); try copyFile(srcFile, desFile); catch (IOException e) e.printSta
11、ckTrace(); public static void copyFile(File sourceFile, File targetFile) throws IOException BufferedInputStream inBuff = null; BufferedOutputStream outBuff = null; / 新建文件输入流并对它进行缓冲 inBuff = new BufferedInputStream(new FileInputStream(sourceFile); / 新建文件输出流并对它进行缓冲 outBuff = new BufferedOutputStream(new FileOutputStream(targetFile); / 缓冲数组 byte b = new byte1024 * 5; int len; while (len = inBuff.read(b) != -1) outBuff.write(b, 0, len); / 刷新此缓冲的输出流 outBuff.flush(); finally / 关闭流 if (inBuff != null) inBuff.close(); if (outBuff ! outBuff.close();3发布增量包(1)复制文件夹替换服务器对应文件目录,重启服务。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1