转至:https://blog.csdn.net/lch_2016/article/details/80983051

很多人应该用过svn cvs之类的代码版本管理工具,git也是其中之一。

svn和git最大的几个区别要点,svn必须要有服务端,网络能连上服务端才能提交和更新,git不需要,每一台装了git的电脑都是服务端,各台电脑之间可以相互同步和推送,而提交不需要网络就可以提交到本地的git库里。
对于吧友们来说,这样的好处就是,如果要分享代码,不需要打个压缩包传来传去,也不需要找个服务器搭个svn来共享,现在oschina,csdn等网站都提供了免费的git服务器,大家注册个帐号,提交下去,把地址发给别人就可以了,而免费的svn服务器,几乎是不存在的。
而且svn因为服务端是单一的,一旦服务器坏了,整个版本库的历史记录就没有了,也没法再回滚,git每台电脑都是服务端,只要两台电脑做过同步,任何一台坏了,另一台还保有着所有的历史记录,仍然可以提交更新回滚,不怕代码历史丢失。
此外,git还有许多强大之处,比如git的分支就比svn的强太多,这些就留给大家摸索吧。

再说说maven,我们每做一个项目,都要往lib目录扔很多jar包,spring的啊hibernate的啊apache的啊等等,这样就会导致很多包不知从哪个角落下载回来的,名称千奇百怪,版本也不明,项目多了以后还得自己复制来复制去,容易有多种不同版本的包混杂。maven最基本最重要的功能就是管理这些项目间的依赖关系,用一个xml来维护。如果你的工程要用spring,你就在maven的pom.xml里配一下spring的项目名称和版本号,要用其他的也一样。
得益于maven已经成为java世界的主流工具,绝大部分知名的项目都在maven中央仓库有标准名称,有各种不同的版本存在,你只要配下名称,配下版本号,maven就会自动从网上为你下载jar包并让你的工程依赖上,你的本地硬盘的仓库目录能看到井井有条的你用过的所有第三方项目的jar包和源代码,再也不用去下载那些来路不明的jar包再扔到工程里了,也不用担心写同一个项目的两个人一个用了3.0版的spring,一个用了2.5版的spring,以至搞出莫名其妙的问题。

有了maven,我们不再需要往git或svn提交jar包,项目库的体积大大减小,下载项目变得快多了。而且只要提交一个pom.xml文件和你的代码,其他人自然也能下载到和你本地一模一样的第三方jar包,下过一次某个jar包以后,其他项目再用同一个jar包时,maven自然会使用本地仓库文件夹里存在的jar包,不需要再次下载,也不会出现很多个拷贝。
另一个好处是maven的pom.xml任何一个主流ide工具都认识,都可以导入项目,你不用再操心你提交的.project和.settings文件因为别人的eclipse版本和你不同而导不进去,也不用再担心有人用的是别的ide认不得你的eclipse项目元文件,你不需要提交这些和开发工具有关的文件到服务器上了。

如果我们身处异地,要共同开发或者分享点什么项目,毋庸置疑,maven和git必然是极大提升效率的两大基础利器,希望大家能早日投入精力学会这两个工具,扫除技术沟通的阻碍,不要再停留在史前时代了。

我们为什么必须会git和maven相关推荐

  1. Linux安装git和maven的详细过程

    一.使用yum安装git 当前安装环境是centos6.5 由于在CentOS6的yum源中已经有git的版本了,可以直接使用yum源进行安装 yum -y install git 由于centos6 ...

  2. 老李分享:持续集成学好jenkins之Git和Maven配置

    老李分享:持续集成学好jenkins之Git和Maven配置 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请 ...

  3. Git、Maven、SubText、clipy

    Git.Maven.SubText.Clipy Git git command 远程分支同步主分支: git branch git branch -r git checkout yourBranch ...

  4. CI持续集成自动化测试——jenkins--Jenkins+Git+coding+maven 实现自动化测试环境搭建

    参考文档: jenkins--Jenkins+Git+coding+maven 实现自动化测试持续集成 - 小屁妞 - 博客园 1.打开Jenkins官网,下载jenkins.war https:// ...

  5. Jenkins自动化部署工具简易教程(Java、Git、Maven、Tomcat)

    建议在linux环境部署,windows环境也ok,其实就是一个tomcat. 运行环境 centos\windows. 下面三个要配置好环境变量: java. git.maven 下载安装包 选左下 ...

  6. Git、Maven 面试题

    问题 答案 Git和SVN有什么区别? Git是一个分布式的版本控制工具:SVN 是集中版本控制工具 客户端可以在其本地系统上克隆整个存储库:版本历史记录存储在服务器端存储库中 即使离线也可以提交:只 ...

  7. Kubesphere流水线集成(Git、Maven、Docker、K8S)

    目录 1. Kubesphere开启Devops 2. Kubesphere基础环境设置 3. Devops项目添加凭证 3.1 Git代码库凭证 3.2 Docker镜像仓库凭证 3.3 K8s配置 ...

  8. 程序员手把手教你Mac M1Pro的java开发环境安装--jdk、git、maven、及tomcat

    作为一个mac新手,真的是从0开始.希望能够帮到其他朋友. jdk安装及环境变量配置 1.官网下载jdk http://www.oracle.com/technetwork/java/javase/d ...

  9. 持续集成框架jenkins介绍02-持久集成git仓库+maven项目

    一. git代码管理 一般使用jenkins集成时jenkins需要从代码仓库中抓取源代码进行编译打包运行等 这里的仓库可以使用svn或者git 我这里使用git 代码开发 使用eclipse   g ...

最新文章

  1. “阿一web标准学堂”选修课:EditPlus高级使用技巧(附视频、课件、代码下载)...
  2. 记一次被js中的this坑的事情
  3. nginx、Apache、IIS服务器解决 413 Request Entity Too Large问题方法汇总
  4. java技术_2020年最流行的Java开发技术
  5. java 新手小程序_JAVA新手小程序之一
  6. gson 生成json有\u003d异常字符处理
  7. Performance Tuning
  8. 「干货」模拟信号和数字信号的差异
  9. ffmpeg转码命令
  10. 某P2P开发商ERP系统核心业务介绍
  11. 武汉大学计算机学院 考研英语,武汉大学计算机学院简介
  12. 什么是图表设计,图表设计的意思
  13. 7-4 计算e的近似值 (10 分)
  14. 天啦噜,小白后台的一波新功能,看完世界杯 看这里!(最后有福利 哦~~)
  15. android 4.4 x86 iso,android x86官方版下载_android x86 4.4 iso 官方最新版[网盘资源]_零度软件园...
  16. 苹果手机软件闪退怎么解决_《NBA2K21》闪退怎么办 闪退异常问题解决方法
  17. Debian 11 安装,超详细!
  18. 在 boot 操作过程中的 FIRST_BOOT阶段,安装失败,出现错误
  19. 编写优质嵌入式C程序(转)
  20. c++ 0x8000ffff灾难性故障_硬盘出了故障就换?教你一招,不花一分钱就能修复!...

热门文章

  1. MATLAB从入门到精通-MATLAB2021版类似excel的坐标轴标签自动缩放布局
  2. MCMC采样和M-H采样
  3. Matlab并行编程函数cellfun arrayfun
  4. (经典)Hibernate多对多关系映射(五)
  5. php怎么从文件中读取数据库连接,PHP连接 读取 写入mysql数据库的方法 附常用代码...
  6. jq实现文字个数限制_分布式系统高可用实战之限流器(Go 版本实现)
  7. python if main_python中if __name__ == '__main__' :main(()
  8. 浅谈文献总结(2018.9.28)——坚恒勇毅论文课笔记
  9. Sending e-mail with Spring MVC--转载
  10. servlet 和filter 抛出404等异常