IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> Git分布式版本控制工具原理及常用命令总结 -> 正文阅读

[开发工具]Git分布式版本控制工具原理及常用命令总结

推荐网易云课堂上一门好课,Git&Github视频教程,在此简单记录学习过程。

Git 是用于?Linux内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持(wingeddevil注:这得分是用什么样的服务端,使用http协议或者git协议等不太一样。并且在push和pull的时候和服务器端还是有交互的。),使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。?

Git的功能特性:

从一般开发者的角度来看,git有以下功能:

1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。

2、在自己的机器上根据不同的开发目的,创建分支,修改代码。

3、在单机上自己创建的分支上提交代码。

4、在单机上合并分支。

5、把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。

6、生成补丁(patch),把补丁发送给主开发者。

7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。

Git结构如下图所示:

?团队协作开发方式示意图:

跨团队协作开发方式示意图:?

??常用命令如下:?

git status:查看工作区/暂存区状态
git add[file name]:将工作区的“修改和新建”添加到暂存区
git commit -m "commit message" [file name]:将暂存区的内容提交到本地库

cat [file name]:查看文件内容,猫一眼~
git log:查看日志
git log --pretty=oneline:以一行显示查看日志
git log --oneline:哈希值缩短显示查看日志
git reflog:显示指针移动步数查看日志


?HEAD指针可以移动当前版本,前进和回退

git reset --hard [版本局部索引值],索引值可以通过git reflog 获得
git reset --hard HEAD^:往后退一个版本,^^就退两步
git reset --hard HEAD~3:往后退三个版本

??删除文件后找回:删除前如果文件存在时候的状态提交到了本地库就可以找回

rm [file name]:删除文件

git diff [file name]:和工作区中的文件和暂存区中的文件进行比较
git diff [本地库历史版本][文件名]:将工作区中的文件和本地历史记录比较

?分支管理:在版本控制过程中使用多条线同时推进多个任务。

分支好处:同时并行推进多个功能开发,提高效率。

git branch[分支名]:创建分支
git branch –v:查看分支
git checkout [分支名]:切换分支
合并分支
1.	切换到接受修改的分支(被合并,增加新内容)
git checkout[被合并分支名]
2.	执行merge命令
git merge[有新内容的分支]

??分支管理示意图如下:

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-05-09 12:56:36  更:2022-05-09 12:58:16 
 
开发: 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年5日历 -2024/5/19 1:42:37-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码