今天我们来聊聊分布式版本控制系统——Git,废话不多说我们直接开始吧,喜欢的记得关注我哟。
Git是一个开源的分布式版本控制系统(Distributed Version Control System,简称DVCS)。可以有效、高速地处理从很小到非常大的项目版本管理。
版本控制系统能追踪项目,从开始到结束的整个过程。对编程人员而言,版本控制技术是团队协作开发的桥梁,助力于多人协作同步进行大型项目开发。软件版本控制系统的核心任务:查阅项目历史操作记录、实现协同开发。
① 集中式版本控制工具
集中式版本控制工具,版本仓库是集中存放在中央服务器的,team里每个人工作时,从中央 服务器下载代码。每个人个人修改后,提交到中央版本仓库。提交(commit)代码需要联网。如:svn
这会造成一个明显的问题:单点故障
② 分布式版本控制工具
分布式版本控制系统可以没有 “中央服务器”,每个人的电脑上都是一个完整的版本仓库,这样工作的时候,不需要联网。因为版本仓库就在你自己的电脑上。多人协作只需要各自修改,开发完成即可,推送给对方【联网】,推送的时候是将整个版本仓库推过去。如:Git
这个共享版本库一般指的是代码托管平台,比较有名就是github,gitee
① 速度、简单的设计
② 对非线性开发模式的强力支持(允许成千上万个并行开发的分支)
③ 完全分布式
④ 有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)
⑤ 协同开发
Clone:克隆,从远程仓库中克隆代码到本地仓库,第一次操作
Push:推送,代码完成后,需要和团队成员共享代码时,将代码推送到远程仓库。
Pull:拉取,从远程库拉代码到本地库,自动进行合并(merge),最后放到工作区。
checkout:将本地仓库的内容检出到工作区
add:在提交前先将代码提交到暂存区
commit:提交到本地仓库
本地仓库: 在本地主机上的一个代码库,可以独立存在,也可以与远程仓库进行关联
工作区:对任何文件的修订(增删改),都先放在工作区,工作区不与任何仓库分支进行关联 暂存区:把修订的文件,从工作区经过add(添加)后与某一个仓库分支进行关联,只要进 入缓存区的文件才能commit(提交)到本地仓库。
远程仓库 : 在局域网或互联网上的一个主机,存放代码库的主机或平台,比如GitHub、 Gitee.com(码云)
分支:代码存放在仓库,默认是主分支(master),可以在主分支基础上创建很多子分支,比如 develop(开发)、bugfix(bug修复)等。
通过git管理github托管项目代码
以下三步默认,直接点击next,之后等待安装,检验一下安装成功与否:
Git工作区域
基本信息设置
设置用户名
git config --global user.name 'you name'
设置用户名邮箱
git config --global user.email 'you email'
目的:可以在对github项目操作时显示是谁操作过此项目,便于软件开发流程
初始化一个新的Git仓库
1、创建文件夹
2. 进入该文件的根目录,单击右键,选择【Git Bash Here】,输入如下代码:
初始化成功会出现一个.git文件夹,如上图所示
向仓库添加文件并提交到暂存区
touch test.py # 创建test.py文件到工作目录
git add test.py # 添加test.py到暂存区(单个提交)
git commit -m '第一次提交文件' # 添加test.py到仓库
如果想把本地的所有文件放到暂存区,可输入如下命令:
git add .
查看修改状态
假如你修改了文件,包括增、删、改,需要查看一下修改过哪些文件,可输入如下命令:
git status
红色的部分表示你操作过哪些文件,而在上面我们增加了一个TXT文件
删除仓库文件
注意:增加、删除、修改文件等操作我们可不用命令执行,可以手动在本地操作然后把操作过程提交到远程(github/gitlab/gitee)就行,当然也可根据你自己的喜好来决定
git branch #查看当前所有分支
git branch -b 分支 #创建分支
git branch checkout 分支 #切换分支
git status #查看修改所有文件状态
git add ./[file] #增加指定修改文件或者所有文件到暂存区
git commit -m '备注提交目的' #提交目的备注
git pull origin master #拉取项目,这一步通常是别人也在同一分支进行操作时,要push必须先pull
git push origin master/[其他分支] #把暂存区的文件推送到远程仓库
git merge/rebase origin master #如果你需要把当前分支合并到master分支可执行此操作
git reset --hard 版本号 #当操作错误时回退至指定的版本
注意:github默认主分支是main,如果想修改成master,可先在右上角头像那里点击【Settings】,在点击【Repositories】,如下图所示:
好了今天的分享就到这里了喜欢的可以点赞评论加关注哟。