登录gitee
  • 登录方式:通过网站登录,使用注册时的账号(通常是手机号)和密码进行认证

创建仓库 
  • 新建仓库步骤

    • 命名规范:仓库名称应尽量符合规范,避免与已有仓库冲突,建议使用有意义的命名

    • 初始化设置:

      • 选择.gitignore模板

      • 添加README文件作为代码说明文档

      • 使用默认的单分支模型(适合初学者)

  • 仓库属性设置

    • 开源许可:创建时默认为私有仓库,后期可改为开源

    • 模板文件:

      • LICENSE文件:记录开源许可证信息

      • README文件:包含中英文两个版本的说明文档

把远端的仓库拉取下来 
  • 克隆方式选择

    • 推荐协议:使用HTTPS协议而非SSH协议

      • SSH需要配置密钥对,过程复杂(所以一般不用)

      • HTTPS只需输入账号密码即可

  • 克隆操作步骤

    • 命令格式:git clone <仓库HTTPS地址>.git

    • 认证信息:

      • 用户名:gitee网站登录账号

      • 密码:gitee网站登录密码(非系统密码)

    • 结果验证:成功后会生成与仓库同名的本地目录

忽略文件操作 
  • .gitignore文件作用

    • 功能原理:列出需要被git忽略的文件后缀

    • 实际效果:匹配到的文件不会被上传到远端仓库

    • 查看方式:在Linux中使用ls -al查看(因为是隐藏文件)

  • 本地仓库本质

    • 核心组成:名为.git的隐藏目录及其内容

    • 同步机制:

      • 提交操作实质是同步.git目录内容

      • 远端仓库会保存完全相同的.git目录结构

    • 版本控制:.git目录包含分支配置和提交历史等版本信息

写代码并git操作 
  • 文件准备与添加

    • 文件拷贝操作:将上级目录的.c和.h文件拷贝到当前目录,使用make dl创建process目录后,将所有.c和.h文件移动到process目录中

    • git add作用:将新增的文件(之前git没有跟踪的文件)添加到本地仓库的临时区域

      • 特别注意:添加的是新增文件,不是修改已有文件

      • 底层原理:文件经过二进制转码后存入.git目录(具体位置暂不深究)

  • 提交操作详解

    • git commit命令:

      • 完整格式:git commit -m "提交日志"

      • 强制要求:-m选项后必须跟提交日志内容,否则会报错

      • 日志规范:

        • 禁止空白(必须填写有意义的内容)

        • 禁止随意填写(如"abcd"等无意义内容)

        • 不需要手动添加时间戳(系统自动记录)

    • commit本质:将临时区域的变更正式合并到本地仓库,此时远端仓库仍未更新

  • 推送操作与完整流程

    • git push作用:将本地仓库的变更推送到远端服务器,完成代码同步

    • 完整三步流程:

      • git add .:添加新文件到暂存区

      • git commit -m "描述":提交到本地仓库

      • git push:推送到远端仓库

    • 密码提示:push时需要输入git账号密码(非系统root密码)

  • 提交日志的重要性

    • 日志查看方式:通过git log命令可查看完整提交历史,包含:

      • 提交ID(长哈希值)

      • 作者信息(用户名+邮箱)

      • 提交时间戳

      • 提交日志内容

    • 专业要求:

      • 在团队协作中,清晰的日志有助于他人理解代码变更

      • 面试时可能被查看提交历史(如简历附git链接)

      • 错误示例:模糊的日志可能导致后期维护困难,甚至被离职后追责

  • Git环境配置

    • 安装方法:sudo apt-get install -y git(Linux环境,注意 apt-get和yum的区别)

    • 首次配置:

      • 必须设置用户名:git config --global user.name "姓名简写"

      • 必须设置邮箱:git config --global user.email "真实邮箱"

    • 配置重要性:

      • 这些信息将永久记录在提交历史中

      • 公司内部可能通过邮箱联系代码作者

      • 建议使用真实姓名简写和工作邮箱(避免私人邮箱)

验证忽略文件配置 
  • .gitignore文件配置

    • 配置语法:使用.扩展名格式指定要忽略的文件类型,例如.txt忽略所有文本文件,*.sln忽略Visual Studio解决方案文件

    • 测试方法:

      • 创建测试文件(如test.txt)

      • 执行git status查看文件状态

      • 确认被忽略文件不会出现在待提交列表中

    • 多级目录处理:需要在仓库根目录下的.gitignore文件进行配置才会全局生效

  • 文件状态管理

    • 新增文件检测:git status会显示"Untracked files"表示新文件

    • 修改文件检测:显示"Modified"表示已跟踪文件的修改

    • 批量添加:git add .会自动添加所有未跟踪和修改的文件

  • 提交流程

    • 标准流程:

      • git add <文件> 或 git add .

      • git commit -m "提交说明"

      • git push

    • 提交说明规范:要求明确描述修改内容(如"修复野指针bug"),避免不专业的日志

远程仓库修改操作及冲突解决 
  • 冲突产生场景

    • 典型场景:

      • 开发者A在远程仓库直接修改文件

      • 开发者B在本地修改同一文件

      • 开发者B尝试git push时出现冲突

  • 冲突解决方法

    • 强制同步流程:

      • 先执行git pull拉取远程变更

      • 解决可能的合并冲突

      • 重新git push

    • 错误提示:冲突时会显示"rejected"提示,要求先整合远程变更

  • 文件重命名操作

    • 正确方法:使用git mv 旧文件名 新文件名而非直接重命名

    • 操作流程:

      • git mv test.txt hello.txt

      • 提交重命名操作

      • 推送变更

  • 文件删除操作

    • 标准删除:使用git rm 文件名而非直接删除

    • 完整流程:

      • git rm xx.txt

      • git commit -m "删除临时文件"

      • git push

  • 提交记录查看

    • 日志查看:git log显示完整提交历史,包括:

      • 提交者信息

      • 提交时间

      • 提交说明

      • 变更内容

      • 注:所有Git操作建议在仓库根目录下执行以确保全局生效,部分操作(如.gitignore配置)需要提交到仓库才能完全生效。

基础操作 
核心
  • 仓库克隆:git clone 用于从远程仓库克隆项目到本地

  • 添加文件:git add 将文件添加到暂存区

  • 提交更改:git commit -m "message" 提交变更并添加描述信息

常用辅助命令
  • 状态检查:git status 查看当前仓库状态

  • 日志查看:git log 查看提交历史记录

  • 文件操作:

    • git rm 删除文件

    • git mv 重命名文件

  • 远程同步:git push 将本地提交推送到远程仓库

注意事项
  • 提交不可修改:已提交记录无法直接修改,需删除仓库后重新提交(但会改变提交时间戳)

  • 设计原则:Git设计上不允许随意修改历史记录,这是版本控制系统的核心特性

常见问题
提交绿点问题
  • 更新机制:GitHub等平台的贡献绿点不是实时更新,通常会在夜间批量处理

  • 解决方案:正常提交2-3天后会自动显示,无需特殊处理

认证配置
  • 密码输入:git push时会要求输入用户名和密码

  • 免密配置:

    • 技术上支持配置免密码登录(课件中有具体方法)

    • 但不推荐初学者使用免密配置,原因有二:

      • 频繁输入有助于记忆重要密码

      • 提交门槛能防止草率提交错误代码

建议
  • 练习方式:

    • 可使用Git Bash命令行操作(支持Linux命令)

    • 也可使用图形界面工具(如TortoiseGit)

  • 学习路径:

    • 先掌握基础命令

    • 后续可逐步学习分支管理、版本回退等高级功能

  • 提交习惯:

    • 建议保持手动输入密码的习惯

    • 工作熟练后可考虑配置免密

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

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

相关文章

[论文精读]StruQ: Defending Against Prompt Injection with Structured Queries

StruQ: Defending Against Prompt Injection with Structured Queries [2402.06363] StruQ: Defending Against Prompt Injection with Structured Queries usenix security 2025 提示注入攻击是一个重要的威胁&#xff1a;它们诱使模型偏离原始应用程序的指令&#xff0c;转…

磁悬浮轴承的反馈线性化:非线性控制的智能解耦之道

摘要:磁悬浮轴承凭借无摩擦、高速度、长寿命等优势,成为高速旋转机械的理想支撑方案。然而,其本质非线性与强耦合特性使得传统线性控制方法难以满足高性能要求。本文深入解析反馈线性化技术如何精确解除磁悬浮系统的非线性耦合,揭示其从微分几何理论到工程实现的核心路径,…

探寻《答案之书》:在随机中寻找生活的指引

我强烈推荐4本可以改变命运的经典著作&#xff1a; 《寿康宝鉴》在线阅读白话文《欲海回狂》在线阅读白话文《阴律无情》在线阅读白话文《了凡四训》在线阅读白话文 在快节奏的现代生活中&#xff0c;人们常常面临各种困惑与抉择。当常规的思考与决策方式无法带来清晰答案时&am…

【PTA数据结构 | C语言版】计算1~n平方的和加上1~n的和

本专栏持续输出数据结构题目集&#xff0c;欢迎订阅。 文章目录 题目代码 题目 给定正整数 n&#xff0c;请编写程序&#xff0c;求 (12⋯n^2 )(12⋯n) 的值。 输入格式&#xff1a; 输入在一行中给出正整数 n&#xff08;≤100&#xff09;。 输出格式&#xff1a; 在一行中…

Assistant API的原理及应用

&#x1f9e0; 什么是 Assistants API&#xff1f; &#x1f4c5; **发布日期&#xff1a;**2023年11月6日&#xff0c;OpenAI在开发者大会上发布了 Assistants API —— 一款面向开发者的工具&#xff0c;用于在应用中构建 AI 助手。 ✅ 它可以做什么&#xff1f; Assistants …

《北京市加快推动“人工智能+医药健康“创新发展行动计划(2025-2027年)》深度解读

引言 随着新一轮科技革命和产业变革的深入推进,人工智能技术与医药健康的深度融合已成为全球科技创新的重要方向。北京市于2025年7月正式发布《北京市加快推动"人工智能+医药健康"创新发展行动计划(2025-2027年)》,旨在充分发挥北京在人工智能技术策源、头部医疗…

DPDK 关于 IOMMU 设置

一、IOMMU 基础概念 定义:IOMMU(Input/Output Memory Management Unit)即输入 / 输出内存管理单元,它是一种硬件机制,用于将设备发出的内存访问请求进行地址转换。在现代计算机系统中,它在设备与内存之间起到桥梁作用,提供内存保护和设备隔离功能。作用: 内存保护:防止…

pg_class 系统表信息

SELECT c.relname, c.relkind, CASE WHEN c.relkind r THEN 普通表 WHEN c.relkind p THEN 分区表 WHEN c.relkind f THEN 外表 WHEN c.relkind v THEN 视图 WHEN c.relkind m THEN 物化视图 ELSE 其他 END as table_type_desc FROM pg_class c JOIN pg_namespace …

【C++开源库使用】使用libcurl开源库发送url请求(http请求)去下载用户头像文件(附完整源码)

目录 1、libcurl介绍 2、libcurl库源码下载与编译 3、调用libcurl库的API接口实现http/https请求发送&#xff0c;实现头像文件下载 4、发送图片url下载图片文件的完整代码展示 5、使用libcurl发送https请求时可能会遇到的两个错误 在某SDK项目中&#xff0c;第三方…

在Docker容器中更改,保存为新的镜像

# 1. 进入原始容器 docker run -it --name mydev ubuntu:20.04 /bin/bash# 2. 在容器内做大量修改 apt update && apt install -y python3 mkdir /app && echo print("Hello from modified container") > /app/app.py# 3. 退出容器 exit# 4. 保存…

【网络与爬虫 13】智能伪装:Scrapy-Fake-UserAgent反检测技术实战指南

【网络与爬虫 13】智能伪装&#xff1a;Scrapy-Fake-UserAgent反检测技术实战指南 关键词&#xff1a;Scrapy-Fake-UserAgent、反爬虫、智能伪装、浏览器指纹、用户代理、爬虫检测规避、自动更新UA 摘要&#xff1a;本文深入解析Scrapy-Fake-UserAgent库的工作原理与应用技巧&a…

前端开发常见问题

前端开发常见问题技术文章大纲 引言 简要介绍前端开发在当前技术环境中的重要性&#xff0c;以及开发者常遇到的挑战和痛点。 浏览器兼容性问题 不同浏览器对CSS、JavaScript的支持差异常见的Polyfill和转译工具&#xff08;如Babel、PostCSS&#xff09;如何利用Can I Use…

文心开源大模型ERNIE-4.5-0.3B-Paddle私有化部署保姆级教程及技术架构探索

一起来轻松玩转文心大模型吧&#x1f449;一文心大模型免费下载地址: https://ai.gitcode.com/theme/1939325484087291906 前言 2025年6月30日&#xff0c;百度正式开源文心大模型4.5系列&#xff08;ERNIE 4.5&#xff09;&#xff0c;涵盖10款不同参数规模的模型&#xff0…

【操作系统】内存管理

要求&#xff1a; 1、在该实验中&#xff0c;采用可变分区方式完成对存储空间的管理&#xff08;即存储空间的分配与回收工作&#xff09;。 2、设计用来记录主存使用情况的数据结构&#xff1a;已分区表和空闲分区表。 3、在设计好的数据结构上设计一个主存分配算法&#xff0…

【算法笔记】5.LeetCode-Hot100-矩阵专项

1. 矩阵置零(t73) 中等难度&#xff0c;题目示例如下&#xff1a; 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用原地算法。示例 1&#xff1a; 输入&#xff1a;matrix [[1,1,1],[1,0,1],[1,1,1]] 输出&…

ORACLE 日常查询

一. 查询索引相关1. 查询索引所在的表空间&#xff0c;单个索引的大小SELECT ui.table_name, us.segment_name AS index_name, us.tablespace_name,ROUND(SUM(us.bytes) / 1024 / 1024 / 1024, 2) AS total_size_GB FROM dba_indexes ui JOIN dba_segments us ON ui.index_name…

【DeepSeek实战】17、MCP地图服务集成全景指南:高德、百度、腾讯三大平台接入实战

引言:为什么MCP是地图服务的下一代革命? 在数字化时代,位置服务已成为电商、出行、物流等行业的核心基础设施。但单一地图服务商的局限性日益凸显:某外卖平台因高德地图API突发故障导致30分钟订单配送延迟,某打车软件因百度地图路线规划偏差引发用户投诉激增,某物流企业…

设计模式之【动态代理】

目录 动态代理中存在的概念 JDK动态代理 代理工厂【ProxyFactory】实现【InvocationHandler】 目标类的接口【TargetInterface】 目标类【Target】实现了接口 测试类【JDKDynamicProxyTest】 CGLIB动态代理 添加Maven依赖 代理工厂【ProxyFactory】实现【MethodInterc…

【Linux驱动-快速回顾】一次性快速回顾TTY体系知识点(新手友好)

我将遵循一条严格的“问题驱动”和“演进”的逻辑线索来构建整个TTY知识体系。每引入一个新概念&#xff0c;都是为了解决前一个阶段出现的问题。这样&#xff0c;你不仅能知道“是什么”&#xff0c;更能深刻理解“为什么是这样设计的”。 第〇阶段&#xff1a;最原始的需求 …

深入浅出:让机器听懂世界的耳朵——梅尔频率倒谱系数(MFCCs)

深入浅出&#xff1a;让机器听懂世界的耳朵——梅尔频率倒谱系数&#xff08;MFCCs&#xff09; 在人工智能的浪潮中&#xff0c;语音识别、声纹支付、音乐推荐等技术早已融入我们的日常生活。你是否曾好奇&#xff0c;计算机是如何理解并区分各种复杂的声音信号的&#xff1f;…