| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发工具 -> Git的四个工作区域和主工作流程(workspace index repository remote)理解 -> 正文阅读 |
|
[开发工具]Git的四个工作区域和主工作流程(workspace index repository remote)理解 |
Git的四个工作区域和工作流程一.GIT是分布式版本控制系统??Git是一种分布式版本控制系统,理论上是没有中心的,每一个设备都有本地仓库,任何一个设备的本地仓库出问题对其他设备都没有影响。而且,每一个设备都可以创建分支,Git 强大的分支管理也是它的价值所在。 二.GIT的工区域组织架构??GIT有四个工作区域,每个工作区域实现不同的功能,帮助我们完成不同的工作,如下表所示:
1.Workspace:工作区??工作区即进行开发改动的地方,是当前看到的,内容也是最新的,平常开发就是拷贝远程仓库中的分支,基于该分支进行开发,在开发的过程就是在工作区的操作。 2.Index:暂存区(一定程度上相当于是一个指针,但又有一些区别) 3.Repository:本地仓库??位于自己的本地计算机,本地仓库保存了被提交过的各个版本,比起工作区和暂存区的内容,它更旧一些。首先是?git commit(提交)?同步 index 的目录树到本地仓库,然后通过?git push(推送)?同步本地仓库到远程仓库。 4.Remote:远程仓库??位于托管代码的服务器,远程仓库的内容能够被分布在多个地点的处于协作关系的本地仓库修改(能被本地修改)。比起本地仓库,远程仓库通常旧一些,因此本地仓库修改完之后需要同步到远程仓库。 三.Git 的工作流程
四.我的理解1.?远程仓库?是一个虚拟的但又真实存在的地方(类似,不恰当地说的说是GIT网页);
? ? ? 2.当我们更改工作区上的某个文档,或添加了一个新文档时,把这些更改同步下来的过程所执行的流程其实是有差别的:??(1)对于在工作区添加一个新文档或者在工作区中改动某个原有文档的内容(添加/删除一句新代码),把这个改动同步到远程仓库(执行提交,推送命令) 3.还原文件的操作“TortoiseGit ->还原(revert)”或者“TortoiseGit->获取(fetch)”、“TortoiseGit->合并(merge)”操作??如果工作区中的重要文档由于手欠删除了,该怎么办;别急我们可以通过操作还原,虽然我们工作区中的内容删除了(之后没有提交),但是由于我们曾经将内容提交到了本地仓库(也曾经推送到了远程仓库),我们可以使用“TortoiseGit ->还原(revert)”功能,使本地仓库的内容重新回到工作区; ??如果工作区中的重要文档由于手欠删除了,删除之后执行了提交操作此时本地仓库的内容也被修改成了最新的样子;想要恢复只能通过远程仓库来恢复如初;①执行获取;②在执行合并,合并时会出现冲突(因为此时如果打开版本分支图的话发现远程落后于本地,只有本地落后于远程才可以执行合并操作),解决冲突后,执行合并,此时本地设备的工作区又恢复了; 4.在远程仓库直接修改,本地的设备想要实现同步可以执行获取与合并操作(“TortoiseGit->获取(fetch)”、“TortoiseGit->合并(merge)”)??通过获取操作,发现设备上的工作区的内容并没有改变什么,再次执行合并操作,发现设备工作区的内容改变了。(获取操作:使本地仓库与远程仓库做一个对比(因为有所修改);合并操作:使本地仓库同步到远程仓库,如果使用乌龟来执行合并的话,还会默认悄悄执行了checkout操作,使设备的工作区也得到了更新;如果在命令行终端操作,还是要认真执行每一步,每个操作) 五.如何将公共仓库中自己的分支克隆到本地,并往自己的分支上提交推送信息;(两种方式)先新建自己的分支
? ? (一)方式一在桌面的一个指定文件夹下,右键->Git克隆,选中“分支”,在后面输入自己新建的的分支名称,最后点击“确定”即可; 方式二1.在桌面的一个指定文件夹下,右键->Git克隆,点击“确定” ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/28 19:11:03- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |