下载地址: Git - Downloads (git-scm.com)
选择对应的版本进行下载,下载完成后安装,一直点击next即可。
1,工作流程
Git本地操作的3个区域:
Git Repository(Git仓库) :最终确定的文件保存到仓库,成为一个新的版本,并且对他人可见
暂存区 : 暂存已修改的文件最后统一交到git仓库中
工作区 : 添加,编辑修改文件等操作
仓库又名版本库,英文名repository,我们可以简单理解为一个目录,用来存放代码,这个目录里的所有文件都可以被Git管理起来,每个文件的修改,删除等操作Git都能跟踪到。
1,在安装好首次使用需要进行全局配置,桌面空白处点击右键,点击“Git Bash Here”以打开Git命令行窗口
$ git config --global user.name "用户名"
$ git config --global user.emal "邮件地址"
用户名和邮件地址推荐使用github的用户名和邮件地址
2,创建仓库
创建仓库时的目录不一定要求是空目录,但初学建议使用空目录(不要使用包含中文的目录名)。
a.创建空目录
可以直接在桌面创建一个目录,也可以用命令$ mkdir 目录名
b.在命令行中进入项目目录
用命令$ cd 目录名
c.Git仓库初始化(让Git知道,它需要来管理这个目录)
用命令 $ git init
打开文件夹点击查看在勾选隐藏的项目,可以发现多了一个.gti文件
.git目录不能删除也不能随意更改里面的内容
3,git常用指令操作
查看当前状态:git status
我们可以新建一个readme.txt文件
添加到缓存区:git add 文件名
说明:git add 指令可以添加一个文件,也可以同时添加多个文件。
语法1:git add 文件名
语法2:git add 文件名1 文件名2 文件名3 ......
语法3: git add. [添加当前目录到缓存区中]
提交至版本库:git commit -m "注释内容"
这时readme.txt就保存到仓库中了,如果我们又新建了一个文件index.html又可以同样的操作一遍
index.html文件又被我们放进仓库了。后面我们修改了文件中的内容又要重新按照这个方法提交一遍,注释中写“修改了xxx文件”(重复使用git add 与git commit 指令即可)
三,回退到以前的版本
版本回退分为两步操作:
1,查看版本,确定需要回到的时刻点
指令:git log
git log --pretty=oneline (推荐使用)
git log结果:
黄色字符是版本号 白色字符是注释
2,回退操作
指令:git reset --hard 版本号
比如我想回到创建第一个文件readme.txt的时候。
选中版本号点击鼠标右键点击copy,再输入命令$ git reset --hard再点击鼠标右键paste
回到了开始只有readme.txt的时候,注意:回到过去之后,想要再回到最新的版本的时候,需要用指令区查看历史操作,以得到最新的commit id
命令:git reflog
注意事项:
a.要想回到过去必须得到commit id 然后通过git reset --hard 进行回退
b.要想回到未来必须使用git reflog 进行历史操作查看,得到最新的commit id;
c.在写回退指令的时候commit id不用写全,git可以自动识别,但至少写前4位字符
1.新建远程仓库
在github中点击+号新建一个仓库,填写信息
2.两种常规使用方式(ssh方式类似于http协议)
<1>基于http协议
a.创建空目录,名字叫shop并进入
b.使用clone指令线上仓库到本地
语法:git clone 线上仓库地址
点击code可以查看线上仓库地址
克隆好了
c.在仓库上做对应的操作(提交暂存区,提交本地仓库,提交线上仓库,拉取线上仓库)
提交到线上仓库的指令:git push
比如我修改readme文件后提交到远程仓库
用记事本打开.git文件中的config文件,将url改为:在http://后添加github的用户名:密码@后面接上github.com.....
再执行git push 但是2021年8月13号就不能用密码了,只能用个人生成码
1,点击setting
2,点击左侧下方Develop Setting
3,点击personal
就生成了个人码
git remote set-url origin https://获得的个人通道码@github.com/(confg文件中的url)
连上了,输入指令:git push
push成功
可以看见github远程仓库更新
可以看见我新建了一个index.php文件,但此时我本地仓库还没有index.php文件
那么我要拉取线上仓库的index.php到本地仓库,用到的指令是git pull
可以看见已经从线上拉到了本地。
提醒:每天开始工作第一件事 git pull拉取线上最新版本,每天结束工作前要git push将本地代码提交到线上仓库
每次提交都会有记录,git把他们串成时间线,类似于时间轴,这个时间轴就是一个分支,称之为master分支,团队开发光有一个是分支不够的,需要我们使用分支去完成一些开发任务
分支相关指令:
查看分支:git branch
创建分支:git branch 分支名
切换分支:git checkout 分支名
删除分支:git branch -d 分支名
合并分支: git merge 被合并的分支名
查看分支:
* 表示当前分支
创建分支:
切换分支:
将dev分支内容与main分支合并:
注意点:删除分支时候,一定要退出要删除的分支,然后才能删除。