- GIT是什么?
分布式版本控制系统
什么是版本控制系统
项目中的问题:
1、今天修改了东西,发现不能用,回到昨天的版本
2、每次修改要备份保存。浪费磁盘空间
3、还要记录每次修改的什么东西
版本控制系统作用:
1、可以保存我们每一次的修改记录
2、可以记录我们每个版本
3、记录备注我们每一次改了什么
什么是分布式?
我们需要一个中央服务器,存放代码的版本库
日常:从中央服务器中下载最新代码,更改,提交代码
缺点:需要联网,如果是外网
分布式:
可以没有中央服务器,我们的每一台电脑都保存一套完整的版本库
我们工作就不需要联网,速度快
总结:
svn(集中式)
版本库在中央服务器,工作需要网
提交下载代码慢
安全性:集中式如果中央服务器代码没了,全都没了
分支不强大,速度慢
git(分布式)
版本库在自己电脑上,不需要联网
提交快
安全性:因为每一台电脑都有版本库,如果一台没了。从别的地方拿
强大的分支功能,速度快
在windows 系统中,右键,看到git GUI here, git bash here
git和gitee,github是不同的。
git分布式的版本控制系统
gitee, github是git的一个衍生产物 是一个开源的项目托管平台 2008年上线的
git是管理代码版本的工具 gitee,github是放代码的地方(中央服务器)
去 gitee,github 注册账号。
- 设置GIT的用户信息:
git config --global user.email ‘你登录gitee,github的邮箱’
git config – global user.name ‘你的名字’
如果不配置第一次提交时,会要求你输入。
- 生成SSH:
打开CMD命令行:
ssh-keygen -o
一路回车就可以了。
创建好id_rsa, id_rsa.pub
再把id_rsa.pub中的内容,复制到
gitee-个人设置-- SSH设置,添加一个新的公钥。
- GIT常用命令:
git branch wenqw 创建一个分支。
拉取指定分支到本地,更新本地分支:
git pull 远程主机名 远程分支名
gti branch 查看所有分支列表
git checkout wenqw 切换到指定的分支
git status 查看仓库的状态
git add .或者指定文件名,目录名 添加所有改变的资源到本地缓存
git restore --staged 还原暂存区中文件到工作空间中; 也就是撤消添加。
git commit -m “提交这次版本的描述,增删改查等的描述”
git push 远程主机名 本地分支名:远程仓库的分支名
如果分支同名:可以简写:git push 远程主机名 本地分支名
origin是克隆时,远程仓库的一个别名。
git remote -v 可以远程仓库的地址和别名
拉取指定分支到本地,更新本地分支。
git pull 远程主机名 远程分支名
- 操作流程
a。在远程仓库,创建对应的分支。
管理你的仓库,添加项目成员,添加公钥。
b。 成员在自己本地,git clone 远程仓库。
cd 项目名
git remote -v, 查看一下远程主机的地址和别名。
c. 在本地创建一个工作用的分支:
git branch 查看所有分支;
git branch 分支名 ; 创建新的分支。
git checkout 分支名 ; 切换到指定的分支
切换后,就在这个分支中进行项目开发就可以。
把VSCODE的工作区,指向到项目 目录 。
在不同的分支中,是不能看到其它分支已经添加到本地仓库中的文件的。只有切换到对应的分支,才可见。
d.日常工作包括 : 添加文件,修改文件,删除文件后,就执行以下命令:
git status
git add . 、 指定文件名 、 目录名
git status
git commit -m “说明做了什么事”, 就会生成本地的版本号
如果是你单独用的分支,远程没有修改过,就可以直接 推代码到远程仓库
git push 远程主机名 本地分支名:远程仓库的分支名;
git push 远程主机名 本地分支名 (远程分支名和本地分支同名时可以简写。)
如果说,有几个人同时在使用同一个分支:
d。 git pull 远程主机名 远程仓库的分支名
git status
git add
git commit -m"",主要是在添加到本地仓库前,一定要更新远程仓库的内容到本地,使用 git pull命令。
最后再git push