当前位置: 首页 > news >正文

eclipse中git拉项目_在Eclipse使用git管理项目工程代码

1、前提:

(1)有Eclipse环境;

(2)Eclipse有git插件

2、克隆项目到本地:

(1)在 Git Repositories 视图里面点击 Clone a Git repository选项

(2)输入配置信息,然后点击Next

(3)选择分支,我这里选择master(主干分支),然后点击Next

(4)选择拉取的代码本地存放位置,然后点击 Finish

克隆开始:

(5)完成之后,可以看到Eclipse的 Git Repositories 视图 里多了一个recommend-all项目,本地存放目录也有了该项目

(6)将该项目导入,需在Eclipse的 Git Repositories 视图选中该项目,右键,点击Import Projects ,

选中 Import existing projects 然后Next

接着选择分支下自己想导入到Eclipse里面的项目,点击Finish

完成之后,Eclipse里面已经有了自己导入的项目了(我选择的是master分支下部分自己想导入的项目)

3、git的基础操作:

(1)分支切换

接着点击Select从 Remote Tracking 里面选择分支进行切换

此时Remote Tracking 只有 master分支,当遇到Remote Tracking 里面没有自己或者团队成员新创建的分支时

处理方式:选中项目右击:选择team-->fetch from Upstream 就能从远程仓库获取最新版本到本地(包括代码、分支)

fetch from Upstream 后,能看到Remote Tracking 里面有很多分支了,选择自己想切换的分支继续确定

切换成功

(2)提交代码

选中项目右击:选择team-->commit

在弹出的界面填写 提交的信息 并点击 Commit and Push 或者 Commit,Commit and Push表示直接提交代码到远程仓库,

Commit表示只提交到本地仓库(会发生项目有个箭头向上的标记,后续需要再次手动push到远程仓库)

(3)从远程仓库 获取最新版本到本地 & pull & push

选中项目右击:选择team-->fetch from Upstream

如果有版本改动的话,项目是有箭头的,如果没有什么版本改动的话,项目是没有箭头

1、如果箭头向下表明你落后了远程仓库几个版本

处理方式:选中项目右击:选择team-->pull,表示从远程仓库"同步"代码,pull完成后 箭头向下 图标消失了

2、如果箭头向上则表明你比远程仓库的版本提前了几个版本,就是说你有提交到本地仓库,但是没有push到远程仓库

模拟箭头向上:

提交代码的时候点击Commit表示只提交到本地,则项目会出现箭头向上

处理方式:选中项目右击:选择team-->Push Branch...,表示是向远端仓库提交代码

点击Next

点击Finish

push完成后 箭头向上 图标消失了,点击push完成界面

(4)解决冲突

提交代码后以下界面出现红色的横岗,则表示提交异常

查看问题:选中项目右击:选择team-->pull,从远程仓库"同步"代码到本地仓库,发现项目里面出现红色的两个箭头,即有冲突

解决冲突的视图:找到 Git Staging 视图,在 Unstaged Changes 能看到所有发生修改的文件

查看冲突:在 Unstaged Changes 里点击要解决冲突的文件双击

解决冲突:

对冲突文件进行内容调整,解决完成后把冲突文件从 Unstaged Changes移动到Staged Changes里面去,然后填写提交信息,并提交到远程仓库去,就可以了

备注:像Unstaged Changes里面如果标有X 的文件(表示删除掉的文件)也要移动到Staged Changes里面去,然后一起提交

如何避免冲突:提交修改内容之前一定要先做 pull 操作,基本就能完美避开,就算不能避开,前面也整理了解决冲突的办法喔

4、结语:

由于我工作当中用到了git管理项目,所以特地花时间整理了一番,所有的步骤都是亲自操作然后截图并附上说明的,希望能帮助到有问题的小伙伴,今天就到此为止吧,后续再慢慢更新

相关文章:

  • redis 值字符串前面部分乱码_详细解读——Redis内存模型及应用
  • 各自然带代表植被_陆地自然带:从森林、草原到荒漠,具有非常复杂的地域差异性...
  • hashmap是单向链表吗_HashMap原理详解,看不懂算我输(附面试题)
  • php语言输出九九乘法表_c语言单链表:有头结点和无头结两种列表的区别以及创建和输出的区别...
  • active vue 路由样式保持_网易云音乐接口+vue全家桶开发一款移动端音乐webApp
  • matlab求kcf算法响应图_1周学FFT——第5天 时间抽选奇偶分解基-2 FFT算法
  • xlwt追加写入_python3中关于excel追加写入格式被覆盖问题(实例代码)
  • 地图上的标签为图片_三种方式制作数据地图
  • arcengine 将一个shp的数据读取到另一个shp_从零开始,构建电子地图网站:0_3_数据处理python(1)...
  • python极简主义_极简主义的践行者:一行python有哪些玩法?
  • idea中maven找不到本地仓库jar包_Mac Intellij Maven使用本地仓库的jar包
  • mysql默认安装目录 linux_关于Linux安装mysql默认配置文件位置详解
  • jquery mysql实现加入购物车_jquery-实现加入购物车效果
  • mysql 查询最近7天 时间戳数据_mysql查询今天、昨天、7天、近30天、本月数据
  • 景安mysql主机_景安国内虚拟主机空间如何创建数据库
  • [笔记] php常见简单功能及函数
  • Angular2开发踩坑系列-生产环境编译
  • CentOS6 编译安装 redis-3.2.3
  • CSS 专业技巧
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • javascript从右向左截取指定位数字符的3种方法
  • java正则表式的使用
  • js对象的深浅拷贝
  • Making An Indicator With Pure CSS
  • Python中eval与exec的使用及区别
  • ucore操作系统实验笔记 - 重新理解中断
  • zookeeper系列(七)实战分布式命名服务
  • 电商搜索引擎的架构设计和性能优化
  • 翻译:Hystrix - How To Use
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 力扣(LeetCode)22
  • 听说你叫Java(二)–Servlet请求
  • 学习使用ExpressJS 4.0中的新Router
  • 正则表达式小结
  • Mac 上flink的安装与启动
  • #微信小程序(布局、渲染层基础知识)
  • $().each和$.each的区别
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (1)(1.13) SiK无线电高级配置(六)
  • (12)目标检测_SSD基于pytorch搭建代码
  • (6)STL算法之转换
  • (libusb) usb口自动刷新
  • (补)B+树一些思想
  • (区间dp) (经典例题) 石子合并
  • (三分钟)速览传统边缘检测算子
  • (生成器)yield与(迭代器)generator
  • (四)Linux Shell编程——输入输出重定向
  • (转) 深度模型优化性能 调参
  • .NET 4.0网络开发入门之旅-- 我在“网” 中央(下)
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • .NET Micro Framework初体验(二)
  • .NET/ASP.NETMVC 深入剖析 Model元数据、HtmlHelper、自定义模板、模板的装饰者模式(二)...
  • .NET的微型Web框架 Nancy
  • .NET企业级应用架构设计系列之开场白