Eclipse下使用Git进行代码版本管理及协同工作.doc_第1页
Eclipse下使用Git进行代码版本管理及协同工作.doc_第2页
Eclipse下使用Git进行代码版本管理及协同工作.doc_第3页
Eclipse下使用Git进行代码版本管理及协同工作.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

注:服务器端的设置参考:/dbzhang800/article/details/6901460Git是一种较为先进的代码版本管理及协同工作平台,采用分布式及文件块存储:1. 分布式:代码保存在所有协同成员的计算机上,网速较差时依然可用; 而传统的集中式代码版本管理系统则较难以脱离网络运行2. 文件块:直接以文件块保存整个最新文档,版本提交及恢复速度快;而传统的增量式代码版本管理系统则在每次提交及恢复时都需要对所有增量进行求和,速度慢3. 基于上述两点,Git不仅可以采用传统的“星形”工作模式,也可以有多种不同模式(略)Git的几个概念:1. 仓库(Repositories),网络或本地实际存放代码的地方,同一仓库可存多个项目2. 参照(References),可以看作是指向文件块中特定代码版本的指针,可沿代码版本有向图进行向前(一般是提交操作Commit)、向后(一般是恢复操作Restore)、跳转(不同分支间切换Switch)3. 分支(Branch),一般是为了进行代码调试或概念开发,从主要版本开发中分出一个副本,并在此基础上进行修改,使版本有向图呈现分支状态4. 合并(Merge),一般是为了将代码调试或概念开发分支的代码加入到主要版本中,将对两部分的代码进行比较:a) 先向后回溯两个分支的最近公共节点,通过与最近公共节点进行对比,分析两个分支各对哪些文件进行了修改(因为是文件块,所以需要对两个版本的文件求差;传统模式则需要对两个版本的记录进行求和)b) 如果某一文件在两个版本中均被修改过,则视为“冲突”,需要人工调整其中一个版本;否则,即自动将两个版本分别修改后的部分、未修改的部分合并为新的版本5. 标签(Tag),不移动的参照(指针),以标记特殊的代码版本副本,如项目的里程碑等6. Push、Fetch操作,Push是将本地仓库的修改提交到远程仓库,而Fetch则是从远程仓库获取修改更新图 1分支与合并(图中矩形为参照,圆边矩形间的箭头意指“新版本从旧版本中修改而来”)Eclipse下的Git面板:1. Window菜单-Show View- (Other-Git-) Git Repositories,打开Git面板,可调整位置2. 下图所示面板包含以下信息:a) 两个仓库:mmms及protg,2.0及master是本地代码所处的版本号,进行分支或切换后该版本号会改变,之后的路径是本地仓库位置b) protg:i. Branches,可进行分支版本的切换1. Local,本地分支状态,23a2959是指版本编号(自动生成),其后是提交时的备注(无备注不能提交)2. Remote Tracking,远程仓库(此处是服务器集中仓库)中分支情况ii. Tags,可跳至特定的标签版本(此处暂无标签)iii. References,当前几个参照:1. FETCH_HEAD,最后一次从远程仓库下载的代码版本(7fcf9f4)2. HEAD,当前本地版本(23a2959)iv. Remotes,包含一些pull(从远程仓库下载代码)和push(向远程仓库提交代码)的地址v. Working Directory,当前本地代码目录详情1. .git是Git的版本管理信息,可不管2. Protg_Helloworld是仓库中的项目文件夹,里面是具体的项目代码文件图 2面板包含信息Eclipse下Git的创建:1. 上图所示面板上方圈红处为Git Repository的三种创建方式,此处用第二种:Clone a Git Repository and add the clone to this view,复制远程仓库到本地2. 在URI处输入::250/git/protege/,其余内容会自动填入3. 选择复制分支,此处只有主分支(master)4. 本地设置,如仓库存放位置等 图 3复制远程仓库到本地(右下图为重新复制protg仓库后的图,FETCH_HEAD已更新)Eclipse下Git的提交:1. 对代码进行修改并保存2. 此时,Package Explorer会检测出当前工作代码与当前本地仓库代码的不同,并在项目上以“”标识出来3. 在Package Explorer中右键点击项目:Team-Commit(不便截图),弹出Commit Changes窗口,上方输入备注,下方从修改过的文件中选择需要提交的文件,双击文件弹出Compare窗口,将对代码内容进行分析对比。点击Commit提交修改4. 提交后,可右键点击项目:Team-Show in History,将显示提交记录5. 但是,此时代码修改仅仅提交到了本地仓库,并未提交至远程仓库。右键点击项目:Team-Push to Upstream,将修改提交至远程仓库6. 点击 图 4修改后项目文件自动标识 图 5提交窗口及代码对比窗口图 6历史记录查看面板Eclipse下Git的更新及合并:1. 右键点击项目:Team-Fetch from Upstream,会显示远程仓库的代码修改情况2. 此时,从历史记录面板可看出(有时候刷新不及时,可能需要重启Eclipse):a) master是当前本地仓库代码分支,HEAD是当前的参照b) origin/master是当前远程仓库代码分支,FETCH_HEAD是当前远程参照3. 而从Package Explorer面板则显示“protg master”及下箭头2,表明当前本地仓库代码版本低于远程版本2次提交4. 此时,需要将远程版本与本地版本进行合并,右键点击项目:Team-Merge,选择当前分支(master)需要与哪个分支进行合并,Merge:a) 若无冲突,则显示合并结果b) 否则,显示冲突文件,并在文件中进行冲突标识:。根据冲突标识进行代码修改后,右键点击Package

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论