Git 命令行快速入门

news2024/9/26 5:13:19

前言

(1)新手个人建议使用TortoiseGit这类图形化界面来上手学习。
(2)如果一定需要用命令行进行操作,可以按照B站:程式与网页开发者必备技能!Git 和 GitHub 零基础快速上手,轻松掌握版本控制的要诀!视频教程来。
(3)上述视频教程讲解的非常好,我这里只是在该视频基础上稍微增加几条可能会使用到的命令。

Github操作

创建仓库

(1)创建仓库。

在这里插入图片描述

(2)输入仓库名称,然后创建。

在这里插入图片描述

查看仓库提交记录

(1)如果想在Github上查看仓库的提交信息,进行如下方法即可查看。

在这里插入图片描述

合并分支

(1)如果我们现在有多个分支,在会出现下图这样的情况。

在这里插入图片描述

(2)

在这里插入图片描述

(3)

在这里插入图片描述

(4)

在这里插入图片描述

(5)

在这里插入图片描述

(6)如果发现没有问题,进行合并

在这里插入图片描述

首次使用Git需要设置用户信息

(1)首次在电脑中使用Git,需要输入如下两条命令设置当前用户姓名用户邮箱
非首次使用Git的用户,不需要执行该操作。

# 设置用户名
git config --global user.name "myname"
# 设置用户邮箱
git config --global user.email "myemail"

在这里插入图片描述

常用命令介绍

初始化Git仓库

(1)执行如下操作进行初始化,最终会生成一个.git隐藏文件,用于跟踪版本,存储档案变更历史和备份记录。

# 初始化 Git 仓库
git init

在这里插入图片描述

查看仓库文件状态

(1)Git 仓库有四种状态:

  • Untracked(未追踪):该状态下,Git不会记录他们的内容变更和编辑历史。需要使用git add命令转换为下一个状态。
  • Tracked(已追踪):此时Git会追踪该文件,但文件内容与上一次提交时的内容相同。通俗来说,它们在上次提交后没有被修改过。需要使用git commit命令转换为下一个状态。
  • Staged(已暂存):这时会记录修改后的文件信息。需要使用git push命令转换为下一个状态。
  • Committed(已提交):此时本地仓库和远程仓库同步成功。
# 查看当前目录下文件状态
git status
# 以简短的格式显示当前目录下文件状态,推荐该命令
# ?? : 未追踪(Untracked)
# A : 已追踪,新增文件
# M : 已经被修改的文件,但是没有被暂存
# 
git status -s

追踪文件

(1)初始化仓库之后,Git 需要知道要追踪那些文件,因此可以使用如下命令进行追踪。

# git add : 追踪文件
# . : 追踪当前目录下所有文件
git add .

忽略追踪特定文件

.gitignore文件

(1)在一个工程中,我们可能有一部分文件不需要,例如工程打编译产生的build/文件夹。

# 创建一个 .gitignore 文件
touch .gitignore
# 在 .gitignore 文件中加入要屏蔽的文件/文件夹
build/

对于已经追踪打文件取消追踪

(1)该命令用于从Git的暂存区(索引)中删除文件或目录,同时保留工作目录中的文件。这意味着文件或目录将不再被Git追踪,但它们仍然会保留在你的本地文件系统中。
(2)一般是编译的过程文件被误操作追踪,使用该命令进行取消追踪。
(3)虽然说使用该命令可以将文件从Git的暂存区删除。但是需要注意,执行完该命令之后,还需要将要忽略的文件添加进入.gitignore文件,防止再次被误追踪。

# git rm: 删除文件或目录。
# -r: 递归删除,即删除目录及其内容。
# --cached: 仅从暂存区删除文件或目录,不从工作目录中删除。
git rm -r --cached <File>

### 示例 ###
git rm -r --cached build/
# 然后进入 .gitignore 文件添加如下内容
build/

提交

(1)当Git成功追踪了工程之后,我们需要

# 打开编辑器编写详细提交消息。Ctrl+X退出编辑。
git commit
# 提交简短的更改信息。
git commit -m "first commit"
# 如果上一次提交信息有问题,可以使用该命令进行修改。Ctrl+X退出编辑。
git commit --amend

查看提交信息

(1)我们可以使用如下命令查看提交历史。

# 查看提交历史
git log
# 查看简化版的提交历史
git log --oneline
# 退出查看
q

在这里插入图片描述

版本对比

(1)如果出现了问题,我们可以使用如下命令对比版本信息。

# 先使用查看提交 ID
git log --oneline
# 版本对比
# git diff : 进行版本对比
# 8f3b66f : 提交ID
# ./main/hello_world_main.c : 要对比的文件
git diff 8f3b66f -- ./main/hello_world_main.c

在这里插入图片描述

版本回退

保留历史记录的回退

(1)如果是因为某个文件的错误导致出现了问题,我们就可以进行版本回退。
(2)该方式能够回退指定文件,并且不会将历史记录进行删除,是属于比较安全的版本回退方法。

# git checkout : 保留历史记录的版本回退
# 8f3b66f :  提交ID
# ./main/hello_world_main.c : 要回退的文件
git checkout 8f3b66f  -- ./main/hello_world_main.c

不保留历史记录的回退

(1)如果某个版本出现了问题,但是仅仅只修改特定的文件发现没有成功。我们可以使用如下命令将整个工程环境回退到能够使用的版本。
(2)需要注意,这个操作是不可逆的。如果想知道最新版本的仓库情况,需要重新拉取或者提前备份

git reset --hard <commit ID>

克隆项目

(1)如果你想获取他人的仓库,可以先按照如下方法获取地址信息。

在这里插入图片描述

(2)按照如下方法克隆即可。

git clone <仓库地址>

将本地文件上传至云端

(1)在本地修改工程后,我们还需要将本地的工程推送到云端才可以和其他人一起合作。

git push

将云端文件下载到本地

(1)如果同事将工程进行了修改,我们需要和他们的环境同步,执行下面的内容同步。

git pull

查看分支信息

(1)一个工程可能有多个分支,我们可以使用如下命令查看。

git branch

创建分支

# git checkout : 切换分支
# -b : 创建并切换至新分支
git checkout -b <新分支名>

切换分支

# 查看目前有多少个分支
git branch
# 切换分支
git checkout <分支名>

常用操作介绍

仓库首次创建推送

(1)

git init
git add .
git commit -m <内容>
# 将本地和远端的存储库进行连结
git remote add origin <仓库地址>
# 该操作只是对分支进行一个改名,可以不进行操作
# git branch : 分支管理
# -M : 重命名
git branch -M main

# 执行完下面这条命令之后,刷新仓库页面即可看到本地仓库信息
# git push : 将本地仓库的更改推送到远程仓库
# -u : 设置本地分支与远程分支的关联,即上游分支。这样做的好处是,之后可以简化 git pull 和 git push 命令,不需要每次都指定远程分支。

git push -u origin <分支>

新增工程文件并进行上传

(1)

git add . 
git commit -m "增加文件"
# 将这个提交推送至Github
git push

删除工程文件

(1)

git add .
git commit -m "删除文件"

README.md文件

(1)一个开源仓库给他人使用时候,别人是不知道具体信息的,因此需要添加一个README.md文件进行说明。

# 创建一个 README.md 文件,并且向该文件内输入# test
echo "# test" >> README.md

在这里插入图片描述

参考

(1)B站:程式与网页开发者必备技能!Git 和 GitHub 零基础快速上手,轻松掌握版本控制的要诀!

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

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

相关文章

odoo模型继承

odoo模型继承 模块化是Odoo一个非常重要的功能。一个模块通常定义一块业务内容&#xff0c;模块之间是可以交互的。所以从已有模块中去继承修改原有模块功能就很有必要。 Odoo中&#xff0c;模型之间也定义了一套继承的逻辑&#xff0c;目前有三种继承方 式&#xff1a; 1、…

学习测试7-ADB的使用

ADB是什么&#xff1f; ADB&#xff0c;即 Android Debug Bridge&#xff08;安卓调试桥&#xff09; 是一种允许模拟器或已连接的 Android 设备进行通信的命令行工具&#xff0c;它可为各种设备操作提供便利&#xff0c;如安装和调试应用&#xff0c;并提供对 Unix shell&…

ScrapySharp框架:小红书视频数据采集的API集成与应用

引言 随着大数据时代的到来&#xff0c;数据采集成为了互联网企业获取信息的重要手段。小红书作为一个集社交和电商于一体的平台&#xff0c;其丰富的用户生成内容&#xff08;UGC&#xff09;为数据采集提供了丰富的资源。本文将介绍如何使用ScrapySharp框架进行小红书视频数…

FLinkCDC引起的生产事故(二)

背景&#xff1a; 最近在做实时数据的抽取工作&#xff0c;利用FLinkCDC实时抽取目标库Oracle的数据到Doris中&#xff0c;但是在抽取的过程中&#xff0c;会导致目标库的生产库数据库非常卡顿&#xff0c;为了避免对生产环境的数据库造成影响&#xff0c;对生产环境的数据库利…

BJT交流分析+共发射极(CE)放大器+单片机的中断系统(中断的产生背景+使用中断重写秒表程序+中断优先级)

2024-7-10&#xff0c;星期三&#xff0c;16:58&#xff0c;天气&#xff1a;阴&#xff0c;心情&#xff1a;晴。今天终于阴天啦&#xff0c;有点风凉快一点了&#xff0c;不然真要受不了了&#xff0c;然后没有什么特殊的事情发生&#xff0c;继续学习啦&#xff0c;加油加油…

物流数据分析成本利润计算软件,佳易王物流货运单管理系统操作教程

前言&#xff1a; 物流数据分析成本利润计算软件&#xff0c;佳易王物流货运单管理系统操作教程 以下软件操作教程以&#xff0c;佳易王物流单统计分析软件为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 一、软件操作教程 1、佳易王物流货运…

原生小程序生成二维码方法之一

效果图&#xff1a; 第一步&#xff1a;下载对应的包并构建&#xff08;工具---》构建npm&#xff09; npm install weapp-qrcode --save 第二步&#xff1a;在wxml页面声明canvas <canvas style"width: 200px; height: 200px;margin:0 auto;" canvas-id"myQ…

【QT】QComboBox允许输入查询,且不区分大小写

目录 0.简介 1.环境 2.详细代码 3.参考 0.简介 项目需求&#xff0c;原本有一个下拉框&#xff0c;但是条目太多&#xff0c;不好搜索&#xff0c;所以用户要求可以输入查找 修改前 &#xff1a; 修改后&#xff1a; 1.环境 windows11 vs-code qt5.12 2.详细代码 QComboB…

常用网络概念

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 ​​ 目录 了解组织 局域网技术 …

将文档做成试卷生成小程序

&#x1f449;将文档题库导入&#xff0c;轻松开启题目随机组卷&#xff0c;生成考试试卷 &#x1f449;创建考试&#xff0c;从题库中抽取试题&#xff0c;配置分值&#xff0c;组成标准的试卷 &#x1f449;如果想要在线组织答题考试的话&#xff0c;进入到考试详情页面&…

大数据信用评分太低,是什么原因引起的?

在大数据时代&#xff0c;个人的大数据信用评分变得尤为重要。它不仅影响着我们能否顺利地获得贷款、信用卡等金融服务&#xff0c;还在很多方面影响着我们的日常生活。那么&#xff0c;哪些原因可能会导致我们的大数据信用评分降低呢?本文将对此进行详细的总结&#xff0c;一…

从0开始搭建Spring-Cloud若依项目开发环境

文章目录 1. 安装Java开发环境配置环境变量 2. Maven安装环境变量配置setting文件配置 3. MySQL安装与配置环境变量配置配置MySQLNavicat配置Idea配置 4. redis安装配置1. 下载Redis安装包2. 安装Redis3. 启动Redis服务4. 配置Redis 5. Nacos环境修改配置文件启动Nacos服务服务…

数一140+上岸|七月强化一定要避开这3个雷区!

当然可以&#xff0c;强化阶段的主要任务就是做题&#xff01; 但是不用一刀切&#xff0c;强化阶段听课和做题可以二八原则&#xff0c;就是听课占20%&#xff0c;做题占80%。 因为自己去自学讲义的话&#xff0c;比如张宇18讲&#xff0c;会漏掉一些重点&#xff0c;有的技…

机器视觉/自然语言/生成式人工智能综合应用实验平台-实训平台-教学平台

AIGC是人工智能1.0时代进入2.0时代的重要标志&#xff0c;MIT 科技评论也将Al合成数据列为2022年十大突破性技术之一&#xff0c;甚至将生成性Al(Generative Al) 称为是AI领域过去十年最具前景的进展。同时&#xff0c;AIGC领域岗位需求数量暴涨。高校方面在人工智能专业与机器…

常见的嵌入式软件体系结构

本文介绍常见的嵌入式软件体系结构。 在嵌入式开发过程中&#xff0c;尤其是MCU为主控的项目开发中&#xff0c;实时性是需要考虑的重要因素&#xff0c;本文介绍常见的2种嵌入式软件体系结构&#xff0c;并对其优缺点作简要分析&#xff0c;另外&#xff0c;还对它们的软件层…

❤️‍FlyFlow: 新增异步子流程节点

FlyFlow 介绍 官网地址&#xff1a;www.flyflow.cc 演示网址&#xff1a;pro.flyflow.cc FlyFlow 借鉴了钉钉与飞书的界面设计理念&#xff0c;致力于打造一款用户友好、快速上手的工作流程工具。相较于传统的基于 BPMN.js 的工作流引擎&#xff0c;我们提供的解决方案显著简…

为什么要考国际人力资源证书?HR不能不知道!

在人力资源领域中&#xff0c;持有专业的人力资源证书并非铁律般的必需。但不容忽视的是&#xff0c;随着时代的进步和行业的不断演进&#xff0c;越来越多的人力资源专业人员开始重视并追求人力资源资格认证。 一张高含金量的证书让HR在求职市场上更具竞争力&#xff0c;更能…

GenAI 技术堆栈架构师指南 - 十种工具

这篇文章于 2024 年 6 月 3 日首次出现在 The New Stack 上。 我之前写过关于现代数据湖参考架构的文章&#xff0c;解决了每个企业面临的挑战——更多的数据、老化的Hadoop工具&#xff08;特别是HDFS&#xff09;以及对RESTful API&#xff08;S3&#xff09;和性能的更大需求…

Python编写的俄罗斯方块小游戏

文章目录 游戏页面实现代码 游戏页面 左右键移动方块位置&#xff0c;上键切换方块形态。 实现代码 import pygame import random# 初始化 Pygame pygame.init()# 定义颜色 colors [(0, 0, 0), # 黑色(255, 0, 0), # 红色(0, 255, 0), # 绿色(0, 0, 255), # 蓝色(255,…

『大模型笔记』GraphRAG:用于复杂数据发现的新工具现已在GitHub上发布

GraphRAG:用于复杂数据发现的新工具现已在GitHub上发布 文章目录 一. GraphRAG:用于复杂数据发现的新工具现已在GitHub上发布1. 评估和结果2. 研究见解和未来方向二. 参考文献一. GraphRAG:用于复杂数据发现的新工具现已在GitHub上发布 下载 GraphRAG今年早些时候,我们介绍…