JS基础21

Git版本控制工具

概念:这是一个管理文件夹的工具,当这个文件夹被管理后,他会保留我们所有对这个文件夹的所有更改,以便我们快速找到某个固定的版本,也可保证我们文件夹的内容不会丢失

下载

  1. https://git-scm.com/
  2. 默认安装完成后git --version出现版本后安装完成

Git命令操作

  1. Git是一个需要再命令行操作的软件
  2. 到需要管理的文件夹下然后鼠标右键点击然后Git Bash Here会出现命令行终端

Git本地库使用

  1. git区域创建:在要管理的文件夹打开终端窗口输入git init
    Initialized empty Git repository in E:/gitwork/管理系统/.git/
  2. git区域介绍
  • 工作区:我们写源代码的地方
  • 暂存区:我们把想要存储的代码先展示存放的地方
  • 历史区:暂存区最终的去除,这里放着所有我们要保存的代码
  1. 初始化用户名与邮箱
  • $ git config --global user.name “name”
  • $ git config --global user.email “[email protected]
    注:只用在最开始初始化一次就好,后续初始化会覆盖以前的值
  1. 内容添加在暂存区
  • 一个文件或文件夹放在暂存区$ git add 文件名
  • 所有文件和文件夹所在暂存区$ git add --all || $ git add .
  1. 把暂存区文件拿回到工作区
  • $ git reset HEAD – 文件名
  • $ git reset HEAD – .
  1. 删除暂存区文件
    $ git rm --cached 文件名
  2. 添加历史区
  • 暂存区存放的文件在删除后还是会丢的,只有在保存到历史区后才会一直记录下来
  • $ git commit -m “记录版本的信息”
  • 在版本多了后,后面的说明信息很重要,可以依靠他查找具体版本
  • 示例
    $ git commit -m "管理系统前端1.1.0" [master (root-commit) 705455b] 管理系统前端1.1.0 4 files changed, 11305 insertions(+) create mode 100644 web/index.html create mode 100644 web/jquery.js create mode 100644 web/login.html create mode 100644 web/signin.html
  1. 查看日志
  • $ git log
  • 示例
    $ git log
    commit 705455b0775e1b60789a4979e4ac2a0a8ceba8bf (HEAD -> master) Author: pengcheng <[email protected]> Date: Tue Apr 19 14:55:10 2022 +0800 管理系统前端1.1.0
  • (HEAD -> master)类似于指针,表示当前在那个版本
  • commit版本号 Author作者名 Date本次版本记录时间
  • $ git reflog回退查看原来版本号
  1. 版本回退
  • 当我们修改下内容再次添加到历史区,再次查看时会有两个版本号
    $ git log
    commit 01f2ca96460d8dde3718f72c1c66087280fcbfc2 (HEAD -> master) Author: pengcheng <[email protected]> Date: Tue Apr 19 15:15:00 2022 +0800 提交后端路由模块1.1.0 commit 705455b0775e1b60789a4979e4ac2a0a8ceba8bf Author: pengcheng <[email protected]> Date: Tue Apr 19 14:55:10 2022 +0800 管理系统前端1.1.0

  • $ git reset --hard 版本号进行历史回退
    $ git reset --hard 705455b0775e1b60789a4979e4ac2a0a8ceba8bf HEAD is now at 705455b 管理系统前端1.1.0

  • $ git reset --hard HEAD ^回退到相邻上一个版本

  • $ git reset --hard HEAD~100回退到之前的第100个版本

  1. 恢复本次误删文件
  • 保存在历史区文件如果误删除了,可以通过以下步骤恢复
  • $ git status
$ git status
On branch master
Changes not staged for commit:
  (use "git add/rm <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        deleted:    router/user.js
        deleted:    router/userinfo.js

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .gitignore
        app.js
        db/
        router-handler/
        schema/
        web.js
  • $ git reset HEAD 被删除文件
$ git reset HEAD router
Unstaged changes after reset:
D       router/user.js
D       router/userinfo.js
  • $ git checkout 被删除文件
$ git checkout router
Updated 2 paths from the index
  1. 忽略提交文件
  • 创建.gitignore文件$ touch .gitignore
  • 在文件中写入要忽略的文件
  • 忽略规则
语法 含义
target 忽略这个target目录
angular.json 忽略这个angular.json文件
log 忽略log下的所有文件
css/*.css 忽略css目录下的.css文件

Git远程库

注册账号

git远程库有很多,github由于服务器在国外,网速慢,推荐使用gitee
地址:https://gitee.com

远程仓库操作

  1. 需要在远程仓库中创作新的仓库
  2. 在创建成功后的下面有仓库连接地址,拿到在git命令行输入就行
  • 建立连接$ git remote add origin https://gitee.com/pengcheng933/background-management-system.git
  • 传输数据$ git push -u origin “master”之后需要输入你注册gitee的用户名和密码
  • 只有保存在历史区的文件才能上传
  • 当第二次上传就不用输入用户名和密码,$ git push
  1. Git克隆
  • git克隆就是将从远程仓库中的东西复制到本地(可以是自己的,也可以是别人的开源)
  • 在想要存放的位置打开git命令行输入$ git base
  • 输入克隆指令$ git clone 仓库地址
  1. Git下拉
    当我们拿到仓库中资源后,如果向获得最新资源,只需要$ git pull
  2. Git冲突
  • git冲突是指本次版本和远程版本不一致导致的,我们只需使用$ git push回拉就可以了
  • git pull相对不安全,因为会自动和本地资源合并,可以使用$ git fetch
  • 使用fetch(意:取来)获取远程资源并开辟一个临时分支$ git fetch origin master:tmp
  • 将当前分支与临时分支内容进行对比$ git diff tmp
  • 再选择合并分支内容$ git merge tmp

Git本地分支

  1. 概念:分支类似多线程运行,开辟分支后,所有分支并行运行,互不影响
  2. 开辟一个login分支$ git branch login
  3. 查看分支$ git branch
    结果: login
    * master
    开辟后有两条分支,一条是我们目前正在的前面有*的master主线,另一条是开辟出来的login分支
  4. 切换分支$ git checkout login
$ git checkout login
Switched to branch 'login'

19009@▒▒▒▒ MINGW64 /e/gitwork/管理系统 (login)
$ git branch
* login
  master
  1. Git分支合并
  • 切换到主线$ git checkout master
  • 合并$ git merge login
  1. 删除分支
  • 切换到别的分支上$ git checkout master
  • 删除分支$ git branch -d login

GIT远程分支

  1. 查看远程分支$ git branch -r
  2. 创建远程分支$ git push origin 分支名
  3. 删除远程分支
  • $ git push origin :heads/分支名
  • 也可以在远程仓库中选择删除分支
  1. 拉取远程仓库
  • $ git checkout -b 本地分支名 origin/远程分支名
    该方式会新建本地分支并切换到分支
  • $ git fetch origin 远程分支名:本地分支名
  1. 克隆远程分支$ git clone -b 远程分支名 地址

可视化GIT工具

  1. 下载地址https://tortoisegit.org/download/
  2. 右键直接打开

SSH Key

  1. 用于本地与远程中央仓库连接认证(不用每次输入用户名或密码,当然WIN7以上版本会自动记录,也不同输入)
  2. 本地生成ssk key需要用到rsa公私密钥队
  • 输入$ ssh-keygen
  1. 执行命令时,默认回车完成文件创建,默认会在系统用户目录下会生成.ssh目录,其下有两个文件id-rsa与id-rsa.pub,打开id-rsa.pub公钥文件,复制所有内容
  2. 粘贴到gitee账户=>设置=>ssh设置中
  3. 配置完成后输入$ ssh -T [email protected]检查是否配置成功

猜你喜欢

转载自blog.csdn.net/weixin_64925940/article/details/124272629