Appearance
git
一 概述
1 Git是什么
Git 是目前世界上最先进的,开源的,分布式版本控制系统。
传说 linux 系统版本管理以前是 BitKeeper 版本管理系统免费授权使用,后来 BitKeeper 因为 linux 社区的人试图破解后被收回了免费授权,linus Torvalds 一怒之下两周写了个更好的分布式版本控制系统。
2 Git和Github
确切的说 GitHub 是一家公司,位于旧金山,由 Chris Wanstrath, PJ Hyett 与 Tom Preston-Werner 三位开发者在 2008 年 4 月创办。
2008 年 4 月 10 日,Github 正式成立,主要提供基于 git 的版本托管服务。一经上线,它的发展速度惊为天人,截止目前,Github 已经发展成全球最大的开源社区。 所以 Git 只是 Github 上用来管理项目的一个工具而已,但是 Github 的功能可远不止于此!
3 集中式和分布式
集中式版本控制(SVN)
SVN 是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就郁闷了。如果中心服务器出现问题,所有人都不能正常干活,恢复也很麻烦,因为 SVN 记录的是每次改动的差异,不是完整文件。
集中管理方式在一定程度上看到其他开发人员在干什么,而管理员也可以很轻松掌握每个人的开发权限。
但是相较于其优点而言,集中式版本控制工具缺点很明显:
- 服务器单点故障
- 容错性差
分布式版本控制(Git)
Git 是分布式版本控制系统,那么它可以没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件 A,其他人也在电脑上改了文件 A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。
4 相关概念
工作区、暂存区、版本库
工作区
工作区就是你在电脑里能看到的目录
版本库与暂存区
工作区有一个隐藏目录**.git**,这个不算工作区,而是 Git 的版本库。
Git 的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有 Git 为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。
版本库又名仓库,英文名 repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被 Git 管理起来,每个文件的修改、删除,Git 都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以"还原"。由于 git 是分布式版本管理工具,所以 git 在不需要联网的情况下也具有完整的版本管理能力。
版本库分为:
- 远程仓库
- 本地仓库
分支
二 安装
1 下载
2 安装
一路下一步
3 配置
任意位置右键,Git Bash Here
4 测试
git version
三 快速入门
1 TortoiseGit
下载
安装
一路下一步
2 本地仓库
新建仓库
git init
查看状态
git status
差异比较
git diff
暂存变更
git add
提交变更
git commit
日志查看
git log
查看日志关联
git reflog
版本回退
git reset --hard
撤销修改
git checkout
忽略文件
gitignore
3 远程仓库
关联仓库
git remote
同步推送
git push
同步拉取
git pull
仓库克隆
git clone
4 分支操作
查看分支
git branch
创建分支
git branch dev
切换分支
git checkout
合并分支
git merge
5 常见问题
合并冲突
具体演示
解决冲突
具体演示
再次提交
具体演示
四 Idea整合
具体演示
五 学习目标总结
- 了解 git 的操作命令
- 理解 git 的分支操作
- 能够使用 git 基本命令
- 能够使用 TortoiseGit 操作 git
- 能够在 idea 中使用 git
- 能够概述 git 基本概念
- 能够概述 git 工作流程
- 能够正确安装 git 环境
- 掌握从远程仓库克隆项目
- 掌握将本地仓库代码推送(push)到远程仓库
- 掌握从远程仓库拉取(pull)最新代码
- 掌握如何解决冲突
六 代办
https://blog.csdn.net/dominating_/article/details/81300455
https://blog.csdn.net/weixin_39148042/article/details/128627440
https://blog.csdn.net/weixin_39148042/article/details/128627440