Git如何使用?

01、什么是git?

git是一个免费的,开源的版本控制软件。


02、什么是版本控制?

一种记录一个或者若干文件状态,内容变化,以便将来查询特定版本修订情况的系统。


03、git的具体功能是什么?

(1)记录文件的所有历史变化。
(2)随时可恢复到任何一个历史状态。
(3)多人开发。


04、版本控制的软件是什么(类型)?

SVN 集中式

集中式是版本库在中央服务器上,工作时,用的都是自己的电脑,将代码提交到中央服务器,从中央服务器获取新的别人提交的代码。集中式必须联网才能工作,服务器如果挂掉,整个版本控制软件都不可用。

Git 分布式

分布式是每台电脑都是中央服务器。工作时,不需要联网,只把修改的内容推送给别人。

缺点:比较消耗资源,代码不安全。


05、下载安装

下载:

​ git 官网 https://git-scm.com/download/win

​ 镜像地址 :https://npm.taobao.org/mirrors/git-for-windows/

安装:

​ 下一步下一步

检测是否成功安装?

(1) 在任意位置,右键,出现 git bash here 和git gui here。
(2)打开cmd 命令行,输入指令 git --version 出现版本号就表示安装成功。


06、基础配置

6.1 查看git的全局配置

git config --list

执行效果如下:


其中红色部分是你的用户名和邮箱,第一次安装时是没有的, 最好设置为自己的用户名和邮箱。
用户名和邮箱是将来代码提交到远程服务器上时你的签名。

6.2 添加和修改用户名邮箱

git config --global user.email "你的邮箱"
git config --global user.name "你的用户名"

07、基础操作

7.1 创建git仓库

如果想要一个文件夹被git管理,就需要将其初始化为git仓库。

(1)在文件夹下右键打开git base here。
(2)输入指令 git init;
(3)文件夹中会多出一个.git的隐藏文件夹。

git分区概念图示:

7.2 查看工作区和暂存区状态

git status

7.3 提交到暂存区

git add 文件名
git add 文件夹名
git add . 把所有的文件都提交

7.4 从暂存区回退(很少用)

git reset HEAD 文件名
git reset HEAD 文件名
git reset HEAD .  把所有暂存区的文件都回退
//HEAD表示从当前版本中回退

如果没有提交过,回退时

git reset  文件名
git reset  文件夹名
git reset  .  把所有暂存区的文件都回退

7.5 提交到版本库

git commit -m "提交说明"

7.6 查看版本历史记录

git log

效果图如下:

// commit 版本ID 当前版本  master分支
commit 5149d1acac5f9024c45fbeeaf0df8f215584daa4 (HEAD -> master)
// 谁提交的
Author: ashley <3559498133@qq.com>
//提交的日期
Date:   Thu May 27 10:22:53 2021 +0800第二次提交,提交了一个c文件commit 05495cd28296e9d404524cab01f3f3b7504f617a
Author: ashley <3559498133@qq.com>
Date:   Thu May 27 10:16:01 2021 +0800

7.7 回滚历史版本

git reset --hard 版本ID

7.8 删除历史版本

git rebase -i 版本ID

【注意】这个版本ID不能添加你要删除的版本,要填写它上一个版本的ID。

执行会弹出一个窗口(前提是:安装时,选择了vscode)

(1)把第一行的pick修改为drop
(2) 保存退出

如果没有选择vscode

(1)英文状态下,按下insert键,此时就可以编辑文本了
(2)把第一行的pick修改为drop
(3) 按下ESC键
(4)按下 :wq 回车 就删除成功了。


8、github

github是全球最大的社交编程网站。

github可以托管各种git仓库,并提供了可操作的web页面。

因为国内有时候打不开github,所以我们用gitee(码云)


9、将本地git仓库上传到远程

git本地仓库可以上传到远程仓库中,远程仓库可以是github或者gitee。

9.1 创建一个远程仓库

9.2 https

  1. 在任意位置下新建一个和仓库名同名的文件夹,最好父级目录不要有中文。

  2. 随意创建一个文件。

  3. 将新建文件提交成版本。

4. git remote add origin 你的仓库地址

9.3 remote 远程

origin 变量名,表示你的仓库地址。以后我们需要用到仓库地址的时候,就可以直接用origin
不需要再写很长的地址了。

这是将本地仓库与远程仓库进行关联

git push -u origin master

push:推送

-u:记录下你本次推送的地址,哪一个分支,下次提交时,只需要写git push即可。

-u origin master:相当于记住用户名,密码。

将git配置项中远程仓库地址删除

git remote rm origin

9.4 ssh公钥

  1. 在随意位置,打开命令行

  2. 输入以下命令

     ssh-keygen -t rsa -C "git配置的邮箱"```

按下三个回车,在你的C:\Users\Administrator.ssh目录下会生成两个文件。


  1. 打开id_rsa.pub文件,将内容复制

  2. 打开gitee 设置–安全设置–ssh公钥 将复制的内容粘贴

  3. 来到仓库,点开克隆,选择ssh,复制路径

  4. 执行

    git remote add origin git@gitee.com:你的地址```
  git push -u origin master

10、从远程仓库拉取代码到本地

在需要拉取到位置,打开git bash

输入 git clone ssh的地址 回车即可。


11、git相关文件

README.md

远程仓库中关于该项目的说明。

.gitignore

git提交的忽略文件,如果有需要忽略的文件,可以把文件名写在里面。


12、分支

每个仓库都有一个默认分支 master 第一次都会推送到master分支上。

12.1 新建分支

git brance 分支名

12.2 查看所有分支

git brance -a

12.3 切换分支

git checkout 分支名

12.4 删除分支

git branch -d 分支名

【注意】删除时,必须切换到别的分支上,才可以删除要删除的分支。

12.5 合并分支

当前分支的工作开发完成后,需要将当前分支的代码合并到master上。

  1. 先切换到master分支上
  2. git merge 分支名
  3. 将合并后的版本推送到远程仓库。

12.6 将本地分支推送到远程

当我们在本地创建分支后,默认是不会上传到远程仓库的,git默认的上传分支是master分支。

git push origin 分支名

12.7 将远程分支拉取到本地

git checkout -b dev(本地分支名称) origin/dev(远程分支名称)

12.8 删除远程分支

git push origin --delete 分支名

12.9 分支命名规范

1.主分支 master

(1)git仓库在创建时会自动生成,不要在master上面写代码。它只接受dev分支的合并。
(2)master分支上的代码要与正式环境保持一直。

2.主开发分支 dev

初始化项目之后,会从master分支上开辟。一般也不再dev上写代码。

3.功能分支 feature-xxx

从dev上开启的分支。比如开发购物车模块,我们可以起名 feature-shopCar 开发完成后,合并到dev上。

4.bug修复 feature-xxx-fix-xxx

第一个xxx是模块名,第二个xxx是bug的编号。

5.紧急修复bug hot-fix-xxx

从master直接开辟,用于紧急情况下的bug修复。XXX可以是bug编号,或者日期等等。

本文链接:https://my.lmcjl.com/post/13323.html

展开阅读全文

4 评论

留下您的评论.