gitee

git

1.什么是git?

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

2.什么是版本控制?

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

具体功能:
  • 记录文件的所有历史变化。
  • 随时可恢复到任何一个历史状态
  • 多人开发

3.版本控制的软件

SVN 集中式

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

Git 分布式

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

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

4.下载安装

下载:

​ 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 出现版本号就表示安装成功。

5.基础配置

查看git的全局配置

git config --list

执行效果如下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OVHxLrh8-1629883188108)(img\image-20210527093537774.png)]

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

添加和修改用户名邮箱
git config --global user.email "你的邮箱"
git config --global user.name "你的用户名"

6.基础操作

创建git仓库

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

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v7xv2YqM-1629883188112)(img\git分区与操作.png)]

查看工作区和暂存区状态
git status
提交到暂存区
git add 文件名
git add 文件夹名
git add . 把所有的文件都提交
从暂存区回退
git reset HEAD 文件名
git reset HEAD 文件夹名
git reset HEAD .  把所有暂存区的文件都回退
//HEAD表示从当前版本中回退

如果没有提交过,回退时

git reset  文件名
git reset  文件夹名
git reset  .  把所有暂存区的文件都回退
提交到版本库
git commit -m "提交说明"
查看版本历史记录
git log

效果如下:

// commit 版本ID 当前版本  master分支
commit 5149d1acac5f9024c45fbeeaf0df8f215584daa4 (HEAD -> master)
// 谁提交的
Author: zhangguihao <244389185@qq.com>
//提交的日期
Date:   Thu May 27 10:22:53 2021 +0800

    第二次提交,提交了一个c文件

commit 05495cd28296e9d404524cab01f3f3b7504f617a
Author: zhangguihao <244389185@qq.com>
Date:   Thu May 27 10:16:01 2021 +0800
回滚历史版本
git reset --hard 版本ID

【注意】如果回到之前的版本,做了修改,再提交就相当于开辟了一个新的事件线,git log时就看不到之前的版本了。

删除历史版本
git rebase -i 版本ID

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

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

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

如果没有选择vscode

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

7.github

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

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

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

8.将本地git仓库上传到远程

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

1.创建一个远程仓库

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L2O9MBMn-1629883188116)(img\image-20210527150949509.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xOOj6FSy-1629883188119)(img\image-20210527151702808.png)]

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

  2. 随意创建一个文件。

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

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

    remote 远程

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

    不需要再写很长的地址了。

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

git push -u origin master

push:推送

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

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

git remote rm origin

以上代码是将git配置项中远程仓库地址删除

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

  2. 输入以下命令

    1. ssh-keygen -t rsa -C "git配置的邮箱"
      
    2. 按下三个回车,在你的C:\Users\Administrator.ssh目录下会生成两个文件。

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

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

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

  6. 执行

    1. git remote add origin git@gitee.com:你的地址
      

7.git push -u origin master

9 从远处仓库拉取代码到本地

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

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

10 git相关文件

README.md

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

.gitignore

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

11.分支

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

11.1 新建分支
git branch 分支名
11.2 查看所有分支
git branch -a
11.3 切换分支
git checkout 分支名
11.4 删除分支
git branch -d 分支名

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

11.5 合并分支

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

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

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

git push origin 分支名
11.7 将远程分支拉取到本地
git checkout -b dev(本地分支名称) origin/dev(远程分支名称)
11.8 删除远程分支
git push origin --delete 分支名
11.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编号,或者日期等等。

建时会自动生成,不要在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编号,或者日期等等。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值