项目需要,代码管理工具切换到git,跟cvs切换到svn不一样,我本人开始对git是很抵制的,觉得他跟svn差不多,没有必要代替。严重依赖分支进行开发的项目,使用git管理很方便。因为git就是为分支管理而创建。另外github社区的崛起,也促进了git的迅速普及。
小乌龟也有git协议的管理工具,叫tortoiseGit,这个好像更像面向svn的用户而编写的,很多界面跟tortoisesvn一样。无论什么工具,大家最好把git的原理看一下,否则之后工作中的很多操作你会觉得很奇怪。
最大的优点
不用再为切换分支而烦恼,在严重依赖分支来开发功能的项目中,使用git真是方便。
使用git开发的时候,eclipse可以安装官方的egit插件,在eclipse里面,只需switch即可切换分支。省去切换工作空间,或者导入导出代码等工作。
但是,在我使用的过程中,因为我们项目使用的是maven管理,且喜欢多个项目(dao一个项目,service接口一个项目,serviceImp一个项目)组成一个大项目的开发方式。每次切换分支后,经常有时出现编译不通过的问题。我觉得这个可能是maven跟git联合起来引起的bug。不过,我们切换分支可能只是为了检查代码修改情况,可以不用理会编译问题。
最大的缺点
版本比较不再那么清晰。
如果使用svn,在分支上开发,然后合并到主干,那么在主干上查找某个文件的修改历史,能看到合并后的版本及合并前版本是挨着的,分支上对某个文件的修改历史,在主干上是找不到的。但git却不是这样,合并到主干后,你看到的跟分支上的更改历史一样,想看合并分支之前的版本太困难。而且那个修改踪迹图,很抽象。
另外,git有一套标准的分支管理流程,叫git flow。这个大家可以自己研究一下。团队开发,我觉得规范很重要,我想,这也是大家为什么采用git的一个原因吧。
附上git的主要命令
git fetch:从服务器获取更改,但不合并到当前分支。
git pull:从服务器获取更改,并且合并到当前主干。
git commit:提交更改至本地。
git push:将本地仓库更改提交到服务器(前提是你本机的代码比服务器端新,如果没有服务器的新,服务器会拒绝)
请支持原创:
http://donlianli.iteye.com/blog/1993302
对这类话题感兴趣?欢迎发送邮件至donlianli@126.com
关于我:邯郸人,专注于软件技术。
更多我之前的文章,可以访问 我的空间
相关推荐
git的很好的学习笔记,这是我同事练习了半年后总结的经验。
3. **配置管理**:熟悉版本控制工具(如Git、SVN等)的使用,掌握代码管理和版本控制的流程。 四、案例分析与编程题解析 下午试题通常包含案例分析题和编程题,旨在考察考生将理论知识应用于实际问题的能力。考生应...
对于持续更新的销售实绩文件,使用版本控制系统如Git可以帮助跟踪文档的变化历史,以便随时回溯到以前的版本,避免误删或误改重要信息。 8. **数据安全**: 销售数据通常是敏感信息,因此应采取适当的加密和权限...
【标题】"2015校招软件开发复习总结"主要涵盖了软件开发领域的核心知识点,是作者在半年的求职过程中,通过参加各种笔试、面试所积累的经验与学习成果的提炼。这个总结对于即将踏入职场的软件开发人员,尤其是应届...
7. **项目管理**:敏捷开发方法、Scrum框架、版本控制工具(如Git)的使用等,这些在团队协作中尤为重要。 8. **软件设计模式**:了解常见的设计模式,如单例、工厂、观察者、装饰器等,有助于提高代码质量和可维护...
前阶段的Android学习总结一、Android Studio导入现有工程的几个步骤二、这里推荐一篇好文三、四大应用组件之ContentProvider四、Git五、View学习总结和BUG六、fragment 和 Framelayout七、关于广播接收器的注册销毁...
此外,版本控制工具如SVN或Git的使用,也是可能的考察点。 四、操作系统与计算机网络 对于程序员来说,理解操作系统的基本概念和原理至关重要。这部分可能涉及到进程管理、内存管理、文件系统等。计算机网络部分...
- **版本控制系统**:在IT行业中,使用版本控制系统(如Git)来管理文档的不同版本是非常常见的。这有助于追踪文档的变化历史,便于团队成员之间的协作。 ### 2. 数据安全与隐私保护 - **文件加密**:文档标题中的...
git Linux学习 Nginx 前端、Node中间层与Java服务器体系 React虚拟 DOM 实现 Webpack的loader实现 host => nginx => 网关 => 服务器 2017年上半年 HTTP系统学习和总结*(已经完成了系统学习,利用遗忘曲线的特性,过...
此外,软件设计师还需要具备良好的软件工程实践知识,比如理解敏捷开发、UML建模语言、版本控制工具的使用(如Git)、以及项目管理的基础知识。这些都会在真题中有所体现。 通过解答这些真题,考生不仅可以检验自己...
- **更新频率高**:每隔半年发布一次新版本,确保用户能够使用到最新的技术和改进。 - **用户友好**:通过简化安装过程和提高易用性,使得即使是计算机新手也能轻松上手。 - **广泛的社区支持**:拥有庞大的用户社区...
根据给定文件的信息,我们可以总结出以下相关的IT知识点: ### 一、系统集成项目管理工程师考试概述 系统集成项目管理工程师是一项重要的职业资格认证,主要针对从事信息系统建设、管理和维护的专业人员。该认证...
1. **备份代码**: 通常使用版本控制系统如SVN或Git来管理NC系统的代码备份。 2. **备份WebSphere配置**: 包括应用服务器配置、部署信息等。 **3.2 恢复** 1. **恢复代码**: 通过版本控制系统进行代码恢复。 2. **...
4. **软件开发与集成**:试题可能包含编程语言的基础知识,例如Java、C++或Python,以及软件开发流程、版本控制工具(如Git)的使用,还有API接口的调用与设计。 5. **云计算与虚拟化**:随着云计算的崛起,系统...
平台的控制台设计简洁明了,为用户提供了一个清晰的消费和资源使用概览。Dashboard显示了诸如应用状态、费用信息和资源利用率等关键指标。在成为正式用户并充值后,用户可以无障碍地进行各种功能测试。 **创建应用*...
### 知识点总结 #### 一、背景与挑战 **美团实时计算平台**是针对美团内部业务场景多样化、变化迅速以及数据量巨大的特点而设计的一套系统。具体来说: - **业务场景复杂多样**:美团的数据仓库拥有超过2500个...