前端学习 Git笔记

1 Git配置

1.1 配置用户名与邮箱
git config --global user.name "..."
git config --global user.email "...@cookies.cn"

注意:如果使用了--global选项,那么该命令只需要运行一次,即可永久生效

1.2 Git的全局配置文件

配置好的信息会被写入C:/Users/用户名文件夹/.gitconfig

Window + E 打开我的电脑

1.3 检查配置信息

除了上面的方法外,还可以运行如下命令

# 查看所有的全局配置项
git config --list --global
# 查看指定的全局配置项
git config user.name
git config user.email
1.4 获取帮助信息

使用git help <verb>命令,无需联网即可在浏览器中打开帮助手册

# 想打开git config命令的帮助手册
git help config 

-h选项可以获取更简明的help输出

# 想要获取git config命令的快速参考
git config -h

2 基本操作

2.1 获取Git仓库的两种方式

在现有目录中初始化仓库

如果有一个尚未进行版本控制的项目目录,想用Git来控制它

  1. 在项目目录中,通过右键打开Git Bash

  2. 执行git init命令将当前的目录转化为Git仓库

会生成一个.git隐藏目录

2.3 Git中文件的状态

工作区中文件的4种状态

未跟踪(Untracked):不被Git所管理的文件

未修改(Unmodified):工作区中文件的内容与Git保持一致

已修改(Modified):工作区中文件的内容与Git不一致

已暂存(Staged):已被放到暂存区,准备修改后的文件保存到Git仓库中

使用git status --short命令查看文件处于什么状态

2.4 移除文件
# 从Git仓库和工作区中同时移除index.js文件
git rm -f index.js
# 只从Git仓库中移除index.css,但保留工作区中的index.css文件
git rm --cached index.caa
2.5 Git忽略文件

.gitignore

# 忽略所有 .a 文件
*.a
# 但跟踪所有的 lib.a ,即时你在前面忽略了 .a 文件
!lib.a
# 只忽略当前目录下的 TODO 文件,而不忽略 subdir/TODO
/TODO
# 忽略任何目录下名为 build 的文件
build/
# 忽略 doc/notes.txt ,但不忽略 doc/server/arch.txt
doc/*.txt
# 忽略 doc/ 目录及其所有子目录下的 .pdf 文件
doc/**/*.pdf
2.6 提交历史与版本回退
# 按时间先后顺序列出所有的提交历史,最近的在最上面
git log
# 只展示最新两条
git log -2
# 在一行上显示所有的提交历史
git log --pretty=oneline
# 使用 git reset --hard 命令,根据指定的提交 ID 回退到指定版本
git reset --hard <CommitID>
# 在旧版本中使用命令查看命令操作的历史
git reflog --pretty=oneline
# 再次根据最新的提交 ID ,跳转到最新的版本
git reset --hard <CommitID>

3 Github

3.1 常见的开源许可协议

GPL

  • 具有传染性,不允许商用

  • 典型:Linux

MIT

  • 限制最少的协议,只要包含原作者许可信息
3.2 远程仓库的两种访问方式

HTTPS SSH

推荐使用SSH

SSH Key

作用:本地仓库和Github之间免登录的加密传输

两部分组成:

  1. id_rsa(私钥文件,直接生成,存放在客户端电脑中即可)

  2. id_rsa.pub(公钥文件,需要配置到 Github 中)

生成SSH Key

  1. 打开 Git Bash

  2. 粘贴如下命令,并替换成注册账号时填写的邮箱:

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    
  3. 连续敲击3次回车,即可在C:\Users\用户名文件夹\.ssh目录中生成私钥、公钥文件

配置SSH Key

  1. 打开公钥文件,复制里面的内容

  2. 点击头像=>Setting=>SSH and GPG Keys =>New SSH Key

  3. 复制进文本框

  4. 任意填写名称,用来标识Key的来源

检测是否配置成功

ssh -T git@github.com

4 分支

4.1 分支的概念

master:主分支——用来保存已完成的功能

功能分支:用来开发新功能,开发完成后合并到master主分支上

4.2 查看&创建&切换

查看

git branch

前面带*,说明当前所在分支

创建

git branch 分支名称

基于当前分支创建新分支

切换

git checkout 分支名称
4.3 快速创建并切换
git checkout -b 分支名称
4.4 合并分支&删除分支
# 1.切换到 master 分支
git checkout master
# 2.在 master 分支上运行 git merge 命令,将 login 分支的代码合并到 master 分支
git merge 分支名称
git branch -d 分支名称
4.5 上传分支&查看远程分支列表
# -u 表示把本地分支和远程分支进行关联,只在第一次推送时需要带 -u 参数
git push -u 远程仓库的别名 本地分支名称:远程分支名称
# 实际案例
git push -u origin payment:pay
# 如果希望远程分支和本地分支保持一致,也可以简化
git push -u orgin payment

一般默认origin

查看远程仓库所有分支列表

git remote show 远程仓库名称

一般默认origin

4.6 跟踪分支&拉取分支&删除远程分支
# 从远程仓库中,把对应的远程分支下载到本地仓库
git checkout 远程分支的名称
# 示例:
git checkout pay
# 从远程仓库中,把对应的分支下载到本地,并把下载的本地分支进行重命名
git checkout -b 本地分支名称 远程仓库名称/远程分支名称
# 示例:
git checkout -b payment origin/pay
# 从远程仓库更新代码
git pull
# 删除远程仓库中,指定名称的远程分支
git push 远程仓库名称 --delete 远程分支名称
# 示例:
git push origin --delete pay
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值