Dev Tools

《Maven实战》笔记 2.1 - Coordinate的概念

Coordinate翻译成“坐标”,正如空间的一个点可以用(x,y,z)来唯一地标识一样,Maven里的工程也可以通过(groupId, artifactId, version, packaging, classifier)来唯一地标识 其中,“groupId, artifactId, version”称作基本坐标,一般用这几个就够了

《Maven实战》笔记 2.2 - dependency scope及其传递性

四个主要的scope:   1.compile: 编译和运行时都需要    2.provided: 编译时需要,运行时不用。比如web应用对servlet-api的依赖    3.runtime:  运行时需要,编译时不用。比如mysql的jdbc driver    4.test: 顾名思义 scope的传递:   1. 若A->B是compile,B->C是compile,则A->C也是complile   2. 若A->B是provided,B->C是provided,则A->C也是provided   3. 若A->B是provided,B->C是compile,则A->C是provided

git入门

为什么要用git?     1. svn之类的"Centralized Version Control Systems"有什么问题?      a.服务器的单点问题。服务器一旦当机,所有人都无法提交改动了。      b.如果服务器硬盘坏了,而又没有备机,那你将损失所有revision history     2. git之类的"Distributed version control system" 如何解决上述问题?      客户端存有的文件并不仅仅是最新版本,而是整个repository的镜像。每次checkout都是一次完整的复制。       a.如果服务器硬盘坏了,可以根据客户端的文件恢复       b.由于你镜像了整个repository,所以很多操作都只需在本地完成,速度很快; 而且如果服务器连不上,照样可以看revision history      基本概念   1. git的三种状态     a.committed  — 修改已存入本地数据库     b.modified   — 文件被修改,但还没有提交到本地库     c.staged     — 文件被修改,并且已经被你标识了“将要”进库 ?   2. 几种文件/目录的定义     a. Git directory — 相当于svn的repository目录,用于存放元数据;既然git是"distributed", 所以你的本地和服务器上都会有这个目录。 …

git入门 Read More »

svn的branching和merging

典型的用法:   1. 从trunk分支复制一个branch分支:   svn copy file:///home/kent/svntutorial/trunk file:///home/kent/svntutorial/branches/ firstBranch     2. 把trunk分支的改动同步到branch分支   cd firstBranch的working-copy目录   svn merge file:///home/kent/svntutorial/trunk   3. 把branch分支的改动同步回trunk分支    cd trunk的working-copy目录    svn –reintegrate merge file:///home/kent/svntutorial/branches/ firstBranch   4. branch分支同步回trunk后应该停止使用,最好把它删掉。  

用四组命令学会最基本的svn操作

玩之前先明确一点:服务端叫repository, 客户端叫working copy ##创建repository 1. svnadmin create /home/kent/svntutorial ##创建working copy 2. mkdir /home/kent/svnclient cd /home/kent/svnclient svn checkout file:///home/kent/svntutorial/ ##进入创建一个叫作trunk的目录 3. cd svntutorial mkdir trunk ##创建一个文件并添加到svn repository 4. cd trunk vi 1st.txt ##创建一个本地文件 svn add 1st.txt ##加到svn svn status ##查看所有等待提交的文件 svn commit ##提交文件

Maven的散乱笔记

1.maven definition   a. a build tool (like ANT)   b. a dependency management system   c. plugin   d. environment-specific configuration   e. reports 2.Conventions over configuration,比如“目录”就有一系列默认值:    a.source code is assumed to be in ${basedir}/src/main/java    b.resources are assumed to be in ${basedir}/src/main/resources    c.Tests are assumed to be in ${basedir}/src/test    d.compile …

Maven的散乱笔记 Read More »