1. Git 简介
1.1 版本控制
版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。
- 本地版本控制系统:采用某种简单的数据库来记录文件的历次更新差异(RCS);
- 集中化的版本控制系统( CVCS):有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新
- 分布式版本控制系统(DVCS):客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来。这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本地仓库恢复。因为每一次的克隆操作,实际上都是一次对代码仓库的完整备份。
Git 是一个分布式版本控制管理软件。
1.2 Git特点
直接记录快照,而非差异比较。Git 和其它版本控制系统的主要差别在于 Git 对待数据的方法:
其它大部分系统以文件变更列表的方式存储信息。这类系统将它们保存的信息看作是一组基本文件和每个文件随时间逐步累积的差异。
Git 更像是把数据看作是对小型文件系统的一组快照。每次你提交更新,或在 Git 中保存项目状态时,它主要对当时的全部文件制作一个快照并保存这个快照的索引。为了高效,如果文件没有修改,Git 不再重新存储该文件,而是只保留一个链接指向之前存储的文件。Git 对待数据更像是一个 快照流。
近乎所有操作都是本地执行
Git保证完整性
2. Git 使用交互流程
3. 安装和配置 Git 环境
下载地址:https://git-scm.com/
环境配置:Git安装bin目录加入系统patch中
4. 初始化配置
1 | # 设置用户名 |
5. 基本使用
1 | git init |
5.1 添加/删除文件
1 | # 添加指定文件到暂存区 |
5.2 代码提交
1 | # 提交暂存区到仓库区 |
5.3 回退撤销
1 | # 恢复暂存区的指定文件到工作区 |
5.4 分支管理
默认在 git 的仓库中,会有个分支的原点:master
1 | # 列出所有本地分支 |
5.5 远程操作
1 | # 下载一个远程仓库 |
本地已有仓库,需要提交到线上:
如果是 git init
出来的仓库,进行 push
提交的时候就不知道要往哪里 push。
所以,这里通过 remote
相关命令进行设置:
1 | # 查看所有的远程仓库信息 |
通过上面的 git remote add
添加完远程仓库地址信息之后,还不能直接 git push
,必须在每一次push
的时候加上 git push 仓库地址别名 master
就可以提交了。
如果想要省略 git push
后面需要指定的 仓库地址别名 master
可以通过下面的命令修改:
1 | git push --set-upstream wgy master |
这样就可以直接使用 git pish
进行提交而不需要指定 wgy master
了
6. Git 工作流程:分支策略
6.1 Git Flow
6.2 Github Collabrators
这种方式公司团队项目使用居多
6.3 Github Flow
这种方式开源项目使用居多
- fork
- clone 到你的本地
- 在clone下来的项目中拉出一个新的分支
- 修改的时候最好是基于 master 拉出一个修改的分支,例如这个分支是用来添加某个功能的
- 在新分支上开发或者修改完成之后,提交到本地仓库,然后 push 推到自己的账户中 fork 过来的仓库
- 最后,在 Github 上你 fork 过来的仓库界面中找到 New Pull Request 发起提交请求
- 对方就会在仓库的 Pull Requests 中收到你发起的提交请求
- 然后双方就可以使用社会化交流方式进行沟通协作
- 例如 Code Review 代码审查
- 最后对方审查通过没有问题之后,选择 Merge Request
- 到此,一个完整的 Github 工作流结束
- 这种方式开源项目更多一些(大家都不认识)
7. Github
Github 就是程序员的新浪微博
它可以让你使用社交化的方式进行编程协作、
- 点赞
- 评论
- 转发
- etc.
主要作用:可以免费在线托管你的仓库
可以实现多人协作
提供了一个可视化界面(Web Page)让你能直观清晰的了解你的项目源代码
7.1 基本使用
- 注册
- 登陆
- 创建远程仓库
- 通过
git clone
命令下载远程仓库到本地- git clone 会自动帮你把远程仓库下载到本地,不需要再去 git init 了
- 通过 clone 下来的仓库,git 有一个远程仓库地址列表,git 默认会把你 clone 的地址起一个别名:origin
- 然后你执行 push 的时候实际上就是将本地的版本提交到 origin 上
- 在本地进行操作,通过
git commit
形成历史记录 - 通过
git push
将本地仓库中的历史记录提交到远程仓库
7.2 Github Pages
Github Pages 提供了一个免费在线托管静态资源的服务,叫做:Github Pages。
使用方法如下:
- 在个人的 Github 账户中创建一个仓库
- 仓库名称必须为
个人账户名称.github.io
- 往该仓库根目录中提交一个
index.html
文件 - 然后就可以在地址栏输入
个人账户名称.github.io
地址,就可以看到index.html
网页内容了
注意:上面创建的仓库名称必须是 个人账户名称.github.io
,否则无法访问
-------------本文结束感谢您的阅读-------------
本文标题: Git
本文链接: https://wgy1993.gitee.io/archives/69c3279c.html
版权声明: 本作品采用 CC BY-NC-SA 4.0 进行许可。转载请注明出处!
