git 学习

news/2024/10/8 22:18:10

git 学习

git学习推荐课程和笔记

02-深入 Git (yuque.com)

尚硅谷Git教程全套完整版(12h深入掌握git)_哔哩哔哩_bilibili

git工作区

git 工作区流程图

image

参考博客;

【Git】(1)---工作区、暂存区、版本库、远程仓库 - 雨点的名字 - 博客园 (cnblogs.com)

【Git】---工作区、暂存区、版本库、远程仓库 - hanease - 博客园 (cnblogs.com)

git 文件三种状态

git中,文件的状态只有三种(已修改、已暂存、已提交)

已修改 : 在工作目录修改Git文件

已暂存 : 对已修改的文件执行Git暂存操作(git add),将文件存入暂存区

已提交 : 将已暂存的文件执行Git提交操作(git commit),将文件存入版本库

我们对文件的各种操作新建、编辑(写代码)都是在工作区完成的,但是工作区的文件还是不被Git所管理的

git status 详解

1. git status结果分析

当执行 git status 的时候,返回结果大致可分为3个部分:

  1. 拟提交的变更:这是已经放入暂存区,准备使用 git commit 命令提交的变更
  2. 未暂存的变更:这是工作目录和暂存区快照之间存在差异的文件列表
  3. 未跟踪的文件:这类文件对于 Git 系统来说是未知的,也是可以被忽略的

image

2. git status 命令

#查看指定文件状态
git status [filename]
#查看所有文件状态
git status

git commit 详解

git commit 命令

#将暂存区-->资源库(版本库)
git commit -m '该次提交说明'
PS D:\java\gitStudy> git status
On branch master
Changes to be committed:(use "git restore --staged <file>..." to unstage)new file:   CommitTest.javaUntracked files:(use "git add <file>..." to include in what will be committed).idea/ingoretest.java# 提交       PS D:\java\gitStudy> git commit -m "commit提交测试"
[master c228023] commit提交测试1 file changed, 2 insertions(+)create mode 100644 CommitTest.java# 提交历史
PS D:\java\gitStudy> git log
commit c228023a4c357a61606b9eb6bff4e33b90b8057a (HEAD -> master)
Author: c
Date:   Tue Jul 9 16:29:23 2024 +0800commit提交测试commit 5075727703edf81cdb914a5540d4030812f94342
Author: c
Date:   Tue Jul 9 16:23:05 2024 +0800新建文件测试提交到暂存区commit 47c4d714e7c8c5418f3a258e24d99ec14af83f23
Author: c
Date:   Tue Jul 9 16:16:22 2024 +0800第一次提交

idea commit 提交

**快捷方式: ctrl+k **

image

idea 操作git

1. idea 分支详细介绍

image

image

HEAD:表示当前工作的分支

2. idea 切换分支

branch 切换 test

image

切换后结果

image

切换分支存在问题:

  1. 若当前的分支已经做了一定的修改,则直接进行分支切换时git 会产生如下错误信息。这是由于已经对当前分支进行了修改,但尚未保存而导致的。

    idea checkout报错

image

git checkout 报错


error: Your local changes to the following files would be overwritten by checkout : xxxx 
Please commit your changes or stash them before you switch branches

解决办法: checkout之前 先commit

1. 在当前分支(master)先提交(commit) 保存修改信息 2. checkout 目标分支(branch)当再次切换回来的时候 master分支修改的内容已经保存,不会丢失。

git 学习笔记 —— 保留/丢弃当前分支修改并切换至其他分支 - yhjoker - 博客园 (cnblogs.com)

3. idea Reset current branch here

详细介绍

image

Reset current branch here:操作执行回退,导致之间的所有提交记录全部没了

branch-sout2回溯,导致提交信息没了

image

4. undo commit

相邻的提交撤销,等同于上述Reset current branch here

合并分支

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/54186.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

【私有云场景案例分享②】批量装包与冒烟测试的自动化实现

利用AirtestIDE企业版与DeviceKeeper结合的多机跑测方案不仅解决了传统测试流程中的效率瓶颈,还为整个产品开发生命周期带来了革命性的变化!此文章来源于项目官方公众号:“AirtestProject” 版权声明:允许转载,但转载必须保留原链接;请勿用作商业或者非法用途一、前言 在…

MySQL 延迟从库介绍

延迟从库主要适用于需要增强数据安全性和提高系统可用性的场合。通过合理配置和监控,可以有效利用延迟从库的优势来增强数据库系统的稳定性、可靠性和性能。前言: 我们都知道,MySQL 主从延迟是一件很难避免的情况,从库难免会偶尔追不上主库,特别是主库有大事务或者执行 DD…

使用open3d合并ply模型

import open3d as o3d from scipy.ndimage import binary_fill_holesdef merge_ply(ply1, ply2, output_path):# 加载两个多边形模型mesh1 = o3d.io.read_triangle_mesh(ply1)mesh2 = o3d.io.read_triangle_mesh(ply2)# 使用 + 运算符合并两个多边形模型merged_mesh = mesh1 + …

淘宝商品API接口:电商数据的金钥匙

在数字化浪潮的推动下,电商行业蓬勃发展,数据成为企业最宝贵的资产之一。淘宝,作为中国乃至全球最大的在线零售平台,其庞大的商品数据蕴含着无限商机。如何高效地获取并利用这些数据,成为电商从业者和开发者关注的焦点。本文将带您了解淘宝商品API接口的强大功能,以及如何…

DB9和DB15的引脚编号

1、DB9的引脚编号2、DB15的引脚编号

Win10笔记本,蓝牙设备自动断开

在Win10笔记本设备使用中,有些用户在使用蓝牙设备(蓝牙耳机)时常常会遇到自动断开问题,以下是参考解决方案:设置   ➡️  系统   ➡️  电源和睡眠   ➡️  其他电源设置由于默认的设置,会触发USB选择性暂停,将上图所圈出的配置,由已启用改为已禁用,然后确…

[学习笔记] Splay Treap 平衡树 - 数据结构

[学习笔记] Splay & Treap 平衡树 - 数据结构 Splay 树又名伸展树,一种平衡二叉查找树,通过 \(\text{Splay}\) 操作不断把节点旋到根节点来维护整颗树的平衡。说人话,很玄学的玩意,复杂度是单 log 级别的。为啥是单 log,科学的解释请移步 OI-WIKI。不科学的解释就是,…

哈希-快乐数

解决这个问题的关键在于,判断结束遍历的条件,即当n!=1 或者 在循环过程中,没有出现过重复的数。class Solution:def isHappy(self, n: int) -> bool:def get_score(n):sum_ = 0while n > 0:end_ = n % 10sum_ += end_ ** 2 n = n // 10return sum_data_set = set()wh…