Git学习之路

【2023.4.7】

一、基础知识

分布式版本控制
在这里插入图片描述

在操作文件中的 ①增加 ②修改 ③删除 都是submit操作到本地的存储文件
在这里插入图片描述
分支功能相关原理:
因为不同的开发人员对一个版本库的提交会产生频繁的冲突
因此作为改进对版本库进行复制多个副本,然后不同的开发人员对最终修改进行合并时只产生一次冲突
在这里插入图片描述
在合并时没有description 可以右键创建tag添加说明

git 中SHA-1 40位的版本号有两个用途:①可以合并版本库②分成2+38前两位用来定位文件夹

在这里插入图片描述

git 基本命令

git init	初始化仓库
git clone	拷贝一份远程仓库,也就是下载一个项目。
git add	    添加文件到暂存区
git status	查看仓库当前的状态,显示有变更的文件。
git stash   将所有已列入追踪(tracked)的文件建立暂存版
git stash pop 取回这个暂存文件
git diff	比较文件的不同,即暂存区和工作区的差异。
git commit	提交暂存区到本地仓库。
git reset	回退版本。
git reset HEAD^ 回退已经提交一次前的版本
git rm	    将文件从暂存区和工作区中删除。
git mv	    移动或重命名工作区文件。

git remote	远程仓库操作
git fetch	从远程获取代码库
git pull	下载远程代码并合并
git push	上传远程代码并合并

git branch 查看当前所有分支
git branch (branchname) 创建分支命令
git checkout (branchname) 切换分支命令
git merge  合并分支命令

二、vscode插件使用

原教程链接:https://blog.l0v0.com/posts/94ffdbdf.html
在这里插入图片描述
M 是 modify 的缩写即该文件存在修改
D 是 delete 的缩写即该文件被删除了
U 是 Update 的缩写即该文件是新添加
在这里插入图片描述
  在这里插入图片描述

文件按钮的的意思。
  如果是新添加的文件,放弃修改就会提示彻底删除文件。
  如果是删除的文件,选择放弃修改就会从仓库中恢复文件(再也不用担心误删的文件找不到了)
  点击 + 号确认文件的修改就会提到 stash Changes 上 (对应 git add 命令)
  点击√确认文件的submit

三、实际使用
描述:
从远程分支创建本地分支
git branch -r 查看远程和本地所有分支:

git branch -a 查看本地分支:

git checkout -b 本地分支名x origin/远程分支名x  使用该方式会在本地新建分支x,并自动切换到该本地分支x。采用此种方法建立的本地分支会和远程分支建立映射关系。

git fetch origin 远程分支名x:本地分支名x       使用该方式会在本地新建分支x,但是不会自动切换到该本地分支x,需要手动checkout。采用此种方法建立的本地分支不会和远程分支建立映射关系。


git branch -vv   查看本地分支和远程分支映射关系
描述:将本地更改提交到远程的一个分支
本地新的文件 远程没有不会被追踪

1.新增部分文件
git add 将修改的文件从工作区添加到缓存区  ##相当于VScode中source control中change的+
	-可以使用git add .添加全部修改 也可以是用git add [文件夹/名]添加指定的
git status 查询当前工作目录的详细状态:包括准备提交的文件,未暂存的文件

2.提交变更 / 建立版本
git commit
git commit -m "版本记录的说明文字" ##相当于在source control中文本框添加描述文字后点commit
git log  查询版本的历史记录
git log -10 通过一个減号与一个数字,就可以限定输出最近几笔记录

git merge [被融合的分支名]  将被融合分支融合进当前分支

3.指定远程上游分支
git push --set-upstream origin [分支名]

4.上传到远程仓库
git push origin [分支名]
描述:回退之前的提交版本
1.输入指令Git log会查看提交历史  (工作区向本地仓库提交的版本,仅发生在自己电脑
;回退也只是在本地提交的历史中回退。)
2.找到并复制你要的commit hash值(图中蓝色线条所指)
3.输入指令git reset --hard 45c00a6924d2cd8781df1a2f21df17accaa442c3(commit hash 值)

git reset   从缓存区恢复到工作区
git reset --hard &  git reset --soft  &  git reset --mixed 的区别
  hard -> 工作区、暂存区、commit 同时回滚
  soft -> 保留工作目录、暂存区
  mixed -> 保留工作目录
描述:将当前分支a的修改暂存 然后切换分支b做另外分支b的修改  然后返回分支a取回暂存代码继续修改
git stash 将当前文件暂存
git stash pop取回上次暂存的文件
描述:.gitignore的使用和将加入.gitignore的文件强制push上去
这个文件中的push时自动忽略
并且想要强制上传用git push -force 文件名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

bu volcano

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

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

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

打赏作者

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

抵扣说明:

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

余额充值