Git 配置与理解

简述 Git 在 Windows 和 Ubuntu 中的配置,以及对 Git 工作区域划分和 Git 中对于文件状态划分的理解。


git 基础安装与配置

基于 WSL 的 Ubuntu 下的 git

打开或关闭Windows功能 -> Hyper-V、Virtual Machine Platform、Windows Subsystem for Linux

# 1.必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 
# 2.在管理员模式下打开 PowerShell 或 Windows 命令提示符
wsl --install
$ sudo apt-get install git # 安装 git

配置(设置用户名和邮箱)同下。

Windows系统下 git 配置

下载:Git - Downloads (git-scm.com)。安装完成后,进入你要存放文件的文件夹,右击点击进入 Git Bash Here

# 设置用户名
$ git config --global user.name '自己的用户名'
# 设置用户名邮箱
$ git config --global user.email '这里填写自己的用户名邮箱'
# 查询配置信息
$ git config list

工作区域

工作区 Working Directory

工作区(Working Directory)是在资源管理器中能直接看到的文件或目录。

暂存区 Index / Stage

暂存区(Index / Stage)存放被追踪的文件(git add

本地仓库 repository

默认创建的分支是 master,并有指向 master 的指针 HEAD。

在这里插入图片描述

把文件往 Git 本地仓库 repository 里添加的时候,是分两步执行的:

  1. git add 把文件添加进去,实际上就是把文件修改添加到暂存区,可以理解为文件开始被追踪。
  2. git commit 提交更改,实际上就是把暂存区的所有内容提交到 repository 中的分支里。

Git 中的文件类型

版本控制系统 Git 中每个文件的状态仅有:已跟踪未跟踪。已跟踪的文件在工作一段时间后, 它们的状态可能是未修改(Unmodified)已修改(modified)已放入暂存区(staged)

未跟踪文件(Untracked):工作区(Working Directory)中除已跟踪文件外的其它所有文件。它们既不存在于上次快照(提交)的记录中,也没有被放入暂存区。

已跟踪文件(staged):初次克隆某个仓库的时候,工作区中的所有文件都是已追踪文件。或是创建后 git add (被追踪)的文件。

未修改文件(Unmodified):已提交且未被修改的文件。

已修改文件(modified):提交后又被修改,且重新 git add 到版本库(被追踪)的文件。

在这里插入图片描述在这里插入图片描述


参考:

Git book 2nd Edition (2014)

Git教程 - 廖雪峰的官方网站 (liaoxuefeng.com)

faster-git datawhale

安装 WSL | Microsoft Learn

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【好文翻译】JavaScript 中的 realm 是什么?

本文由体验技术团队黄琦同学翻译。 原文链接: https://weizmangal.com/2022/10/28/what-is-a-realm-in-js/ github仓库地址: https://github.com/weizman/weizman.github.io/blob/gh-pages/_posts/2020-02-02-what-is-a-realm-in-js.md 前言 作为我对…

【51单片机Keil+Proteus8.9】温室盆栽灌溉系统

实验五 实验名称 温室盆栽灌溉系统 软件设计: 1. 定义对应的引脚和端口的别名。 2. 编写延时函数,用于控制程序的执行速度。 3. 编写LCD控制函数,包括发送命令和发送数据两种操作。 4. 编写显示函数,用于在LCD上显示字符串…

免费使用IntelliJ IDEA的7种方式(2024 最新版)

大家好,我是小黑,今天要和大家分享的是如何免费使用 IntelliJ IDEA。我们都知道,作为一名程序员,拥有一个高效的开发工具是至关重要的。IntelliJ IDEA 无疑是市面上最受欢迎的开发工具之一。但是,获取授权的成本有时会…

探究Java中的链表

引言: 在Java编程中,链表是一种常见的数据结构,具有灵活的内存管理和动态的元素插入与删除能力。本篇博客将深入探讨链表的结构和概念,比较链表与顺序表的区别,介绍Java中LinkedList的常用函数并通过示例说明LinkedLis…

Android Termux技能大揭秘:安装MySQL并实现公网远程连接

🌈个人主页:聆风吟 🔥系列专栏:网络奇遇记、Cpolar杂谈 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 📋前言一. 安装MariaDB二. 安装cpolar内网穿透工具三. 创建安全隧道映射mysql四. 公网…

class_12:析构函数

#include <iostream>using namespace std;class Myclass{ private:int* datas; public:Myclass(int size){datas new int[size];}~Myclass(){cout<<"析构函数被调用"<<endl;delete [] datas;} };int main() {cout << "Hello World!&qu…

【复现】科达ViewShot登录系统数据库信息泄露漏洞_23

目录 一.概述 二 .漏洞影响 三.漏洞复现 1. 漏洞一&#xff1a; 四.修复建议&#xff1a; 五. 搜索语法&#xff1a; 六.免责声明 一.概述 科达ViewShot视频监控系统采用数字化、网络化和智能化相融合的新一代视频监控技术&#xff0c;支持领先的视音频编解码算法&#…

x-cmd pkg | ncat - 网络调试工具

目录 简介首次用户快速实验指南通用的网络连接器强大的网络调试功能相关作品竞品进一步探索 简介 Ncat 是一个功能丰富的网络工具&#xff0c;用于在网络中读取、写入、重定向和加密数据。它可以处理各种安全测试和管理任务。 Ncat 是 Nmap 工具集的一部分&#xff0c;适合交…

国科大模式识别与机器学习2015-2019、2021、2023仅考题

2015 &#xff08;8&#xff09;试描述线性判别函数的基本概念&#xff0c;并说明既然有线性判别函&#xff0c;为什么还需要非线性判别函数&#xff1f;假设有两种模式&#xff0c;每类包括6个4维不同的模式&#xff0c;且良好分布。如果他们是线性可分的。问权向量至少需要几…

抖音小店无货源怎么做?新手常见问题解析,做抖店前认真阅读

大家好&#xff0c;我是电商花花。 要说现在线上创业项目什么最靠谱&#xff0c;那首先就是正处于红利期的抖音小店无货源电商项目。 无货源模式不需要货源&#xff0c;创业起来的成本低&#xff0c;风险低&#xff0c;深受创业者喜欢。 很多人都是看到抖音的巨大流量&#…

Linux 批量添加 known_hosts

前言 我们在做完linux ssh 免密登录后&#xff0c;通常会执行一些自动化任务&#xff08;比如启动Spark集群&#xff09;&#xff0c;也就是需要ssh到每台节点执行相同命令。但是有一个问题就是如果 known_hosts 文件中不存在这个ip的话&#xff0c;在第一次连接时会弹出确认公…

【C++入门】STL容器--vector底层数据结构剖析

目录 前言 1. vector的使用 vector的构造 vector迭代器 vector空间相关的接口 vector 功能型接口 find swap insert erase 2. vector内部数据结构剖析 reserve push_back和pop_back size、capacity、empty、operator[ ]&#xff1b; insert和erase resize swap 拷贝构造和…