Git的使用

本文详细介绍了Git的核心命令,包括初始化仓库、版本控制、分支操作(如reset、checkout和merge)、暂存区管理、远程库拉取与推送,以及在VSCode中的应用。还涵盖了如何处理合并冲突和临时回溯等常见场景。
摘要由CSDN通过智能技术生成

概述

  • git init:初始化仓库
  • git reset --soft 版本号A:指针指向版本号A,保留暂存区和工作目录中的修改,撤销之后的提交变成尚未提交状态。
  • git reset --mixed 版本号A:指针指向版本号A,暂存区的内容会被保留,但是工作目录中的修改会被撤销。需要重新提交这些修改。(默认方式)
  • git reset --hard 版本号A:指针指向版本号A,暂存区和工作目录中的修改都会被撤销,慎用,因为这将永久丢失之前的修改。
  • git checkout -b <分支A>:创建并切换到分支A,分支A从本地当前分支分出
  • git branch:查看当前分支
  • git branch <分支A>:创建新的分支A,分支A从本地当前分支分出
  • git branch -a:查看所有分支名,并显示当前分支
  • git branch -vv:查看本地当前分支和远程分支的对应关系
  • git branch -u 远程库A/远程分支a:本地当前分支和远程库A/远程分支a建立对应关系
  • git branch -d <分支a>:删除本地分支a
  • git remote -v:远程库的地址
  • git config --global user.name "Your Name":设置提交用户的用户名
  • git config --global user.email "youremail@example.com":设置提交用户的邮箱
  • git config --global --list:查看git全局配置

查看仓库信息

  • git status:查看当前仓库的工作区和暂存区改变的状态
  • git log:查看当前指针的历史提交记录与版本号
  • git reflog:展示你执行的所有的Git命令记录

临时回溯

  1. master分支上执行git checkout 版本号A
  2. 切换到临时指针(HEAD detached at 版本号A)
  3. 临时指针指向版本号A
  4. git checkout master,切换到master分支,临时指针销毁

本地库操作

git add <file1><file2>···<dir1><dir2>····把指定文件、文件夹的修改信息,提交给暂存区
git add .把所有文件夹和文件的修改信息,提交给暂存区
git rm指令

把文件从工作区中删除,暂存区会自动记录删除信息

不建议使用

我们可以直接手动删除文件

并且删除信息会自动保存在暂存区

git commit <file1><file2>···<dir1><dir2>····

-m "描述信息"

把暂存区指定文件、文件夹的修改信息,提交给本地库
git commit -m "描述信息"

①把暂存区的所有文件夹和文件的修改信息提交本地库

②把暂存区的删除信息提交本地库

拉取和推送远程库

git clone <远程库>

把远程库所有分支克隆到本地库

自动关联远程库分支和本地库分支

git pull

从默认远程库中

拉取与本地当前分支a关联的远程分支b

并把远程分支b与本地当前分支a合并

还会更新远程分支的增删情况

git push

把本地当前分支推送到默认远程库

并将其合并到与之关联的远程分支

git push -u <远程库A> <分支b>

把新建的本地分支b推送到远程库A

在远程库A新建远程分支b

远程分支b合并本地分支b的代码

远程分支b和本地分支b建立关联

git push <远程库A> :<远程分支a>

把远程库A的远程分支a删除

git checkout <分支a>

本地存在分支a:

        直接切换到分支a

本地不存在分支a,远程存在分支a:

        创建本地分支a,并与远程分支a建立关联

本地不存在分支a,远程也不存在分支a:

        报错

无冲突合并

  • 分支A:a、b、c、d
  • 分支B:a、b、c
  • 分支A合并分支B:分支A无任何改变
  • 分支B合并分支A:分支B添加了d版本

单指针-单分支

60706651d3484a06af70e899d910a490.jpeg

多指针-多分支

正常提交

  1. commit提交四次,依次生成A、B、C、D四个版本
  2. 创建新的testA指针,testA指针默认当前版本号D
  3. 194c7c5f4f5b43698b780aa956336c3d.png

创建新分支

  1. 切换指针testA
  2. 指针testA指向版本B,生成版本B1、B2
  3. 3d05eb75e3a04a8982d87efad30d463f.png

合并冲突分支

  1. 切换到master指针
  2. master指针与testA指针合并
  3. git会保留,master和testA的冲突部分
  4. 我们不进行处理,直接git add . & git commit -m "combine"
  5. testA线上独有的版本,会有序的添加到master线上
  6. master线的最后一个的版本:combine版本 

//D版本
123456
123456
123456
123456


//B2版本
123456
123456
abcdef
abcdef


//combine版本
123456
123456
<<<<<<< HEAD
123456
123456
=======
abcdef
abcdef
>>>>>>> testA

417a34284db6421e8aa055b743dfb2fe.jpeg

VSCode使用git

初始化git仓库

fae76b483c5f4dacb5097fb41f0c2333.jpeg

修改区的操作

f1992514987d47888c7a8870f55ce4ed.jpeg

 暂存区的操作

0b64ac77acf7447c8ddb1b29046fcfe4.jpeg

 暂存区提交本地库

445a53c22c264338ab74080c94487e0c.jpeg

开启vscode模式

github

https://github.com/xxx  ===》  https://github1s.com/xxx

gitee

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

stealPigs-youth

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值