Git~
Github
基本概念
1、仓库(Repository)
即你的项目,如果想在github上开源一个项目,那就必须要新建一个Repository,如果你开源项目多了,就拥有了多个Repositories.
2、收藏(Star)
仓库主页start按钮,为收藏项目的人数,在GitHub上如果有一个项目获得100个star就已经很不容易了
3、复制克隆项目(fork)
别人在你的项目的基础上做些改进,然后应用到自己的项目中,这时候就可以fork你的项目,然后他的主页上就多了一个项目,他可以随心所欲的修改,但不影响你原本的项目的代码和结构
4、发起请求(Pull Request)
是基于fork的,如果有人在你的基础上做了改进,并想让自己的改进合并到原有项目里,这时候就可以发起一个Pull Request,原来项目的创建人就可以收到这个请求,你可以review他的代码,根据需要决定是否接受
5、关注(watch)
如果你关注了某个项目,那么以后项目有任何更新,就会第一时间收到关于这个项目的通知。
6、事务卡片(Issue)
别人觉得你项目有哪些瑕疵,可以提个issue,然后你看到这些问题逐个去修复。
创建仓库和项目
创建新文件
Git的工作流程
Git基本信息设置
1、设置用户名(初始化一次就可以了,不需要次次使用的时候都初始化)
git config --global user.name ‘jack’
2、设置用户名邮箱
Git config –global user.email ‘aaa@qq.com’
3、初始化一个新的Git仓库
3.1、创建文件夹
mkdir test(文件夹名称)
3.2、进入创建的文件夹,然后初始化仓库
cd test(文件夹名称) git init
3.3、在工作区中创建一个文件
touch a1.jsp(创建一个a1.jsp)
3.4、提交文件到暂存区
git add a1.jsp
3.5、查看仓库的状态
git status
3.6、将暂存区的文件提交到本地仓库
git commit –m ‘提交的注释’
3.7、将本地仓库提交到远程仓库
git push
3.8、查看git配置列表
git config --list
3.9、删除文件三步骤
rm –rf a1.jsp (删除文件名)
git rm a1.jsp(从Git中删除文件名)
git commit –m (提交操作)
4、克隆操作
目的:将远程仓库复制到本地
git clone 仓库地址
Git与Svn的区别
Svn:
- 所有的文档或代码都在svn仓库的版本控制服务器中,本地的电脑需要访问的时候处于联网状态,才能检出资料。如果服务器抽风了,那么就无法上传或下载资料了。
- 集中式的版本控制
Git:
- 本地都有仓库的版本数据库,不担心服务器崩溃而无法进行操作,很多操作都可以离线进行,速度会很快,不需要网络的交互。
- 有每个历史版本存储完整的文件,SVN存储文件的差异
- 是分布式的版本控制
Git和Github的区别
git是一个版本控制工具
github是一个用git做版本控制的项目托管平台。
SVN
Svn - -version:查询svn的版本(两个- -)
1、Svn命令创建一个版本库:
Svnadmin create D:\SVN\oa (创建库的路径所在地)
Share project:将工程上传至svn资源库中(只能上传不在svn资源库中的项目)
其中的7406指这个文件的版本号
在window上创建svn服务
原因是没有管理员权限
用管理员权限在创建
Binpath是左边的等号紧挨着,然后有个空格,接着写右边的设置
Start启动模式:自动
Depend依赖协议:Tcpip
创建批处理文件
用命令行方式检出(检出某一资源库的项目)
Passwd文件中新建一个用户(认证文件,标识当前svn中某个仓库具有哪些用户以及相应的秘密)
Author文件中配置权限(授权文件,告诉哪些用户具有哪些权限)
问题:当我把两个项目上传到本地的svn仓库时,没有发现刚提交的文件
回答:是因为不能找到,他被SVN自己处理成一个数据库文件了,只有Repo-browser检索时才能看到原文件目录
Maven
使用maven的好处
- 摆脱复杂的jar依赖问题
- 缩小代码体积以及缩小打包体积
- 摆脱对IDE依赖以及正规的软件开发流程
安装maven
1、配置maven环境变量
进入命令提示符
Junit
单元测试
//每一个方法执行之前都会执行
@Before
public void before(){
System.out.println("before");
}
//每一个方法执行之后都会执行
@After
public void after(){
System.out.println("after");
}
//在类初始化的时候执行,因为类还没有初始化。所以是static
@BeforeClass
public void beforeClass(){
System.out.println("beforeClass");
}
//在类所有方法执行之后执行,最后一步
@AfterClass
public void afterClass(){
System.out.println("afterClass");
}