练习1:Git基础操作

练习目标

通过实际操作掌握Git的基本命令,包括初始化仓库、添加文件、提交更改等。

练习步骤

步骤1:环境准备

  1. 确保已安装Git
  2. 配置用户信息(如果未配置)
# 检查Git版本
git --version# 配置用户信息
git config --global user.name "你的名字"
git config --global user.email "你的邮箱@example.com"

步骤2:创建本地仓库

# 创建练习目录
mkdir git-practice
cd git-practice# 初始化Git仓库
git init# 查看仓库状态
git status

步骤3:创建并添加文件

# 创建第一个文件
echo "# Git练习项目" > README.md# 查看状态
git status# 添加文件到暂存区
git add README.md# 再次查看状态
git status

步骤4:提交更改

# 提交更改
git commit -m "添加README文件"# 查看提交历史
git log --oneline

步骤5:修改文件并再次提交

# 修改README文件
echo "这是一个Git练习项目,用于学习版本控制。" >> README.md# 查看文件内容
cat README.md# 查看变更
git diff# 添加并提交
git add README.md
git commit -m "更新README文件内容"

步骤6:查看历史记录

# 查看提交历史
git log# 查看简洁历史
git log --oneline# 查看图形化历史
git log --graph --oneline

练习检查点

完成练习后,请检查以下几点:

  • Git仓库已正确初始化
  • 能够查看仓库状态
  • 能够添加文件到暂存区
  • 能够提交更改
  • 能够查看提交历史
  • 能够查看文件变更

扩展练习

  1. 创建更多文件

    echo "console.log('Hello Git!');" > app.js
    echo "body { color: blue; }" > style.css
    git add .
    git commit -m "添加JavaScript和CSS文件"
    
  2. 查看文件历史

    git log --oneline README.md
    git blame README.md
    
  3. 撤销操作

    # 修改文件但不提交
    echo "这行会被撤销" >> README.md
    git checkout -- README.md
    

常见问题

Q: 为什么git status显示文件为红色?
A: 红色表示文件未被Git跟踪,需要先使用 git add添加到暂存区。

Q: 如何查看具体的文件变更?
A: 使用 git diff查看工作区的变更,使用 git diff --staged查看暂存区的变更。

Q: 提交信息应该怎么写?
A: 提交信息应该简洁明了,描述本次更改的主要内容,建议使用中文或英文。

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

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

相关文章

RK3399内核驱动实战:获取设备号控制LED的四种方法(由浅入深、代码注释详尽)

RK3399 内核驱动实战:获取设备号控制 LED 的四种方法(由浅入深、代码注释详尽) 在 Linux 字符设备驱动开发中,设备号(major minor)是内核与用户空间沟通的桥梁。文章围绕设备号这一条线展开,从…

2025年AI智能体开源技术栈全面解析:从基础框架到垂直应用

2025年,开源AI智能体技术正以前所未有的速度重塑人工智能领域,从单一任务处理到复杂多智能体协作,开源生态已成为技术创新的核心驱动力。一、开源AI智能体生态概述 1.1 技术演进与发展历程 AI智能体技术经历了从规则式智能体(2015…

Empire: LupinOne靶场渗透

Empire: LupinOne 来自 <https://www.vulnhub.com/entry/empire-lupinone,750/#top> 1&#xff0c;将两台虚拟机网络连接都改为NAT模式 2&#xff0c;攻击机上做namp局域网扫描发现靶机 nmap -sn 192.168.23.0/24 那么攻击机IP为192.168.23.128&#xff0c;靶场IP192.16…

飞腾2000+/64核 PCIE扫描异常问题排查

1、背景介绍近期项目中采用全国产飞腾计算模块搭配一块FPGA模块&#xff08;FPGA为复旦微的VU9P&#xff09;&#xff0c;实现业务数据的收发。FPGA中采用了Xilinx的XDMA IP核&#xff0c;飞腾计算模块中的FT2000/64核处理器通过PEU1的一路 PCIE3.0x8与VU9P相连接&#xff0c;发…

证明与激励:Walrus 可编程数据如何通过激励可用性证明获得安全性

Walrus 的可用性证明&#xff08;Proof of Availability&#xff0c;PoA&#xff09; 是部署在 Sui 上的链上凭证&#xff0c;它为数据托管创建了一个可验证的公开记录&#xff0c;并作为存储服务正式启动的标志。PoA 中的“激励”来自一个健全的经济框架&#xff1a;存储节点需…

云存储(参考自腾讯云计算工程师认证)

目录 存储基础知识&#xff1a; RAID&#xff1a; 云存储概述&#xff1a; 云存储产品&#xff1a; CBS&#xff1a; CFS文件存储&#xff1a; COS对象存储&#xff1a; 云存储安全&#xff1a; 存储基础知识&#xff1a; 机械硬盘&#xff1a;HDD&#xff0c;即传统硬…

面试tips--JVM(2)--对象创建的过程

一、创建对象的完整过程1. 类加载检查JVM 遇到 new 指令时&#xff0c;首先去检查这个类 User 是否已经被加载、解析和初始化过。如果没有&#xff0c;就先执行 类加载过程&#xff08;加载 .class 文件到方法区/元空间、创建 Class 对象等&#xff09;。【这个过程就是加载、验…

【Web安全】CRLF注入攻击深度解析:原理、场景与安全测试防御指南

文章目录前言&#xff1a;为什么CRLF注入是安全测试不可忽视的威胁&#xff1f;1. CRLF注入核心原理&#xff1a;从字符定义到协议依赖1.1 什么是CRLF&#xff1f;1.2 CRLF在HTTP协议中的关键作用1.3 CRLF注入的本质&#xff1a;格式混淆攻击2. CRLF注入典型利用场景与安全测试…

【安全学习】DVWA 靶场 SQL 注入漏洞原理分析与防御策略(教育用途)

注意&#xff1a;本文内容仅用于合法授权的安全研究、教学演示及漏洞复现&#xff0c;严禁用于任何未授权的系统或网络环境。 所有操作需在本地沙箱或个人可控靶场中执行&#xff0c;切勿对生产环境、他人系统进行测试&#xff0c;非法使用后果自负。&#x1f4cc; 法律与道德双…

Langflow Memory 技术深度分析

Langflow Memory 技术深度分析 1. Memory 技术概述和设计理念 1.1 技术概述 Langflow 的 Memory 系统是一个多层次的记忆管理框架&#xff0c;专门设计用于处理对话历史、上下文状态和会话数据的存储与检索。该系统采用了分层架构设计&#xff0c;支持多种记忆类型和存储后端&a…

从0开始搭建一个前端项目(vue + vite + less + typescript)

版本 node&#xff1a;v22.17.1 pnpm&#xff1a;v10.13.1 vue&#xff1a;^3.5.18 vite&#xff1a;^7.0.6 typescipt&#xff1a;~5.8.0脚手架初始化vue pnpm create vuelatest只选择&#xff1a; TypeScript, JSX 3. 用vscode打开创建的项目&#xff0c;并删除多余的代码esl…

(十)ps识别:Swin Transformer-T 与 ResNet50 结合的 PS 痕迹识别模型训练过程解析

Swin Transformer-T 与 ResNet50 结合的 PS 痕迹识别模型 思路分析模型融合思路&#xff1a; 利用ResNet50提取图像的局部纹理和边缘特征&#xff0c;这对检测篡改区域的细微变化非常重要利用Swin Transformer-T捕捉全局上下文信息和长距离依赖关系&#xff0c;有助于理解图像整…

[ICCV25]TRACE:用3D高斯直接学习物理参数,让AI“推演”未来场景

导读在复杂的动态世界中&#xff0c;让机器人既能看懂场景&#xff0c;又能预测未来变化&#xff0c;是一项极具挑战性的任务。过去的方法往往依赖人工标注或简化的物理模型&#xff0c;却难以真正捕捉物体运动的规律。TRACE 提出了一个全新的思路&#xff1a;把三维场景中的每…

电商数据开发实践:深度剖析1688商品详情 API 的技术与应用

在电商行业数字化转型的进程中&#xff0c;数据获取与处理的效率和准确性&#xff0c;直接影响着企业的竞争力。作为开发者&#xff0c;相信大家都遇到过这类棘手问题&#xff1a;在构建时&#xff0c;因数据不一致导致采购决策失误&#xff1b;使用传统&#xff0c;又常遭遇电…

Docker 详解+示例(部署Kafka镜像容器)

介 绍Docker 是一个开源的容器化平台&#xff0c;它的核心目标是解决 “软件在不同环境下运行不一致” 的问题&#xff0c;实现 “一次构建&#xff0c;到处运行” 。它基于 Linux 内核的底层技术&#xff0c;将应用程序及其依赖&#xff08;如库文件、配置、运行环境等&#x…

SciPy科学计算与应用:SciPy应用实战-数据分析与工程计算

SciPy案例研究&#xff1a;从理论到实践 学习目标 通过本课程&#xff0c;学员将了解一系列实际案例&#xff0c;深入探讨SciPy库在数据分析、物理模拟和工程计算中的应用。同时学员将学习如何利用SciPy解决实际问题&#xff0c;加深对SciPy各个模块的理解和应用能力。 相关知识…

React学习教程,从入门到精通, ReactJS - 架构(6)

ReactJS - 架构 React应用的架构 React的架构就像一个井然有序的厨房&#xff0c;每个工具都有其特定的位置和用途。在其核心&#xff0c;React遵循一个基于组件的架构&#xff0c;这意味着我们使用可重用的组件构建应用程序。 组件&#xff1a;构建块 可以把组件想象成乐高积木…

Bias / variance and neural networks|偏差/方差和神经网络

----------------------------------------------------------------------------------------------- 这是我在我的网站中截取的文章&#xff0c;有更多的文章欢迎来访问我自己的博客网站rn.berlinlian.cn&#xff0c;这里还有很多有关计算机的知识&#xff0c;欢迎进行留言或…

Linux HMM(Heterogeneous Memory Management)的应用

原理篇见【https://blog.csdn.net/shenjunpeng/article/details/150931847?spm1011.2415.3001.5331】 1. HMM 的优势与挑战 1.1 优势 统一虚拟地址空间&#xff1a;简化异构计算平台的数据共享和访问。 高效页表同步&#xff1a;支持设备端的 page fault 和页表同步&#x…

鸿蒙创新赛活动——Mac提交压缩失败后续

Mac提交压缩失败后续来了… 传送带【上一篇】 背景 华为2025HarmonyOS创新赛 上传作品的时候&#xff0c;遇到了一个提示 ZIP包中的Office文件含有嵌入文件&#xff0c;就去这个Office文件找&#xff0c;怎么也找不到嵌入的文件。 解决方法1 上次推荐的解决方式是&#xff0…