Git 使用手册

一、Git 简介与安装

  1. 什么是Git?

• Git 是一个分布式版本控制系统,用于跟踪文件变化,支持多人协作开发。

  1. 安装步骤

• Windows:通过 Git官网 下载安装包,按默认配置安装即可。

• macOS:使用 Homebrew 安装:brew install git。

• Linux:使用包管理器安装(如 apt install git 或 yum install git)。

二、基础配置

首次使用前需配置用户信息:

配置用户名(提交时显示)

git config --global user.name “你的名字”

配置邮箱(提交时显示)

git config --global user.email “你的邮箱@example.com”

查看配置信息

git config --list
三、Git 核心命令

  1. 仓库初始化与克隆

• 初始化本地仓库:
git init # 在当前目录创建.git文件夹,初始化仓库
• 克隆远程仓库:
git clone [远程仓库URL] # 例:git clone https://github.com/user/repo.git
2. 文件操作(添加、提交、状态查看)

在Git中使用个人访问令牌(Token)来进行身份验证,切换Token的步骤如下:

生成新的Token

  1. 登录到你的代码托管平台(如GitHub、GitLab等)。

  2. 进入个人设置或账户设置页面,找到与访问令牌相关的选项。

  3. 生成新的Token,并记录下来,注意保密。

替换旧的Token

• 如果你之前是通过命令行直接使用Token进行认证,例如在克隆仓库时使用了https://@github.com/user/repo.git这种形式,那么可以直接修改命令中的部分为新的Token。

• 如果你使用了Git的凭证存储,以Windows为例,通常可以通过以下步骤替换Token:

  1. 打开“控制面板”,找到“用户账户”。

  2. 点击“管理你的凭据”。

  3. 在“Windows凭据”中找到与你的代码托管平台相关的条目,点击“编辑”。

  4. 将“密码”字段更新为新的Token,然后点击“保存”。

在Linux或macOS系统上,如果你使用了git-credential-store等工具来存储凭证,可通过相应的命令来更新凭证,如git credential-store set,具体用法可参考相关工具的文档。
• 查看文件状态:
git status # 查看未跟踪/已修改的文件
• 添加文件到暂存区:
git add [文件名] # 添加单个文件
git add . # 添加所有文件
• 提交暂存区文件到本地仓库:
git commit -m “提交说明(必填)”
3. 分支管理

• 查看分支:
git branch # 查看本地分支(当前分支前有*标记)
git branch -a # 查看所有分支(包括远程分支)
• 创建分支:
git branch [分支名] # 例:git branch feature/new-feature
• 切换分支:
git checkout [分支名] # 例:git checkout main
• 创建并切换分支:
git checkout -b [新分支名]
• 合并分支(在目标分支执行):
git merge [待合并分支名] # 例:git merge feature/new-feature
• 删除分支:
git branch -d [分支名] # 删除本地分支(需先切换到其他分支)
4. 远程仓库操作

• 添加远程仓库:
git remote add [别名] [远程URL] # 例:git remote add origin https://github.com/repo.git
• 查看远程仓库:
git remote -v
• 拉取远程仓库代码:
git pull [远程别名] [分支名] # 例:git pull origin main
• 推送本地代码到远程:
git push [远程别名] [分支名] # 例:git push origin main
5. 版本回退与历史查看

• 查看提交历史:
git log # 查看详细提交记录
git log --oneline # 简洁模式显示提交记录
• 回退到指定版本:
git reset --hard [commit哈希值前7位] # 例:git reset --hard a1b2c3d
• 撤销未提交的修改:
git checkout – [文件名] # 撤销文件修改,恢复到上一次提交状态
四、进阶功能

  1. 解决冲突

当合并分支出现冲突时:

  1. 打开冲突文件,会看到类似 <<<<<<< HEAD 和 >>>>>>> 标记冲突内容。

  2. 手动修改冲突部分,保留正确代码。

  3. 保存文件后,执行 git add [文件名] 和 git commit 完成合并。

  4. 标签(Tag)

• 创建标签:
git tag [标签名] # 例:git tag v1.0.0
git tag -a [标签名] -m “标签说明” # 带说明的标签
• 推送标签到远程:
git push origin [标签名] # 推送单个标签
git push --tags # 推送所有未推送的标签
3. 变基(Rebase)

• 将当前分支基于另一个分支重新应用提交:
git rebase [目标分支] # 例:git rebase main
五、实用配置与技巧

  1. 别名设置

简化常用命令:
git config --global alias.[别名] “[命令]” # 例:git config --global alias.lg “log --oneline --graph”
设置后,可通过 git lg 代替 git log --oneline --graph。

  1. .gitignore 文件

在仓库根目录创建 .gitignore 文件,用于忽略不需要跟踪的文件(如日志、编译文件等):

示例:

*.log
node_modules/
dist/
六、常见问题与解决方案

  1. 忘记提交说明怎么办?
    git commit --amend -m “新的提交说明” # 修改最后一次提交的说明
  2. 远程分支已删除,本地仍显示?
    git fetch -p # 清理无效的远程分支引用
    在这里插入图片描述在这里插入图片描述

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

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

相关文章

k8s Headless Service

Kubernetes 无头服务&#xff08;Headless Service&#xff09;配置与使用场景 1.无头服务概述 无头服务&#xff08;Headless Service&#xff09;是 Kubernetes 中的一种特殊服务类型&#xff0c;它**不分配集群 IP&#xff08;ClusterIP&#xff09;&#xff0c;而是直接暴露…

基本面高股息策略

策略概述 一种基于基本面高股息策略的投资策略,主要通过Python在聚宽平台上实现。该策略的核心思想是通过筛选出具有优质基本面和高股息率的股票进行投资,以期获得稳定的长期回报。策略包括以下几个主要步骤: 1. 初始化与参数设置:定义策略的基本参数和回测设置。 2. 每日…

GaussDB资源冻结与解冻:精细化资源管理的实践与策略

GaussDB资源冻结与解冻&#xff1a;精细化资源管理的实践与策略 引言 在云计算环境中&#xff0c;数据库资源的动态调配能力直接影响业务成本与稳定性。华为云GaussDB作为新一代分布式数据库&#xff0c;通过​​资源冻结&#xff08;Resource Quota Freeze&#xff09;​​与…

设计模式24——访问者模式

写文章的初心主要是用来帮助自己快速的回忆这个模式该怎么用&#xff0c;主要是下面的UML图可以起到大作用&#xff0c;在你学习过一遍以后可能会遗忘&#xff0c;忘记了不要紧&#xff0c;只要看一眼UML图就能想起来了。同时也请大家多多指教。 访问者模式&#xff08;Visito…

cuda编程笔记(2)--传递参数、设备属性

以下是最简单的带参数的核函数使用过程&#xff1a; #include<iostream> #include<cstdio> #include "cuda_runtime.h" #include "device_launch_parameters.h" __global__ void add(int a,int b,int *c) {*c a b; } int main() {int c;int…

C# WinForm应用程序多语言实现全面指南

目录 引言 一、多语言实现基础概念 1.1 多语言实现的核心原理 1.2 .NET本地化支持机制 二、基于XML的多语言实现方案 2.1 方案概述 2.2 XML文件结构示例 2.3 实现步骤 2.4 优缺点分析 三、基于.resx资源文件的多语言实现 3.1 方案概述 3.2 实现步骤 3.3 资源文件结…

Python爬虫实战:研究Playwright框架相关技术

1 引言 1.1 研究背景与意义 网络爬虫作为一种自动获取互联网信息的技术,在数据采集、信息监测、竞争情报等领域具有广泛应用。随着 Web 技术的发展,越来越多的网站采用 JavaScript 动态渲染技术,传统爬虫工具难以有效获取完整的页面内容。Playwright 作为新一代自动化测试…

中企出海大会|打造全球化云计算一张网,云网络助力中企出海和AI创新

全球化是阿里云的长期战略&#xff0c;未来阿里云将持续加大云和 AI 基础设施建设投入。首先是加速打造全球化的云计算网络&#xff0c;一张具备 AI技术服务能力和全球竞争力的云计算网络是阿里云的长期目标。 —— 阿里巴巴集团 CEO、阿里云智能集团董事长兼 CEO 吴泳铭 5 月 …

唯创WT2606B TFT显示灵动方案,重构电子锁人机互动界面,赋能智能门锁全场景交互!

在智能家居的浪潮中&#xff0c;门锁搭载显示屏已成为行业创新的焦点。据行业数据显示&#xff0c;2023年全球智能门锁出货量中&#xff0c;搭载显示屏的型号占比已突破40%&#xff0c;且年复合增长率达25%。而2024年国内智能门锁销量突破2200万套&#xff0c;预计2025年市场规…

轻量化开源方案——浅析PdfPatcher实际应用

PDF处理在实际工作中十分重要&#xff0c;今天浅析PdfPatcher在PDF处理中的实际应用。 核心功能实测 批量处理能力 支持修改文档属性/页码编号/页面链接 一键清除复制/打印限制&#xff08;实测WPS加密文档可解锁&#xff09; 自动清理隐藏冗余数据&#xff08;经测试可平均…

Docker 环境搭建与三大数据库(MySQL/Redis/MongoDB)部署教程

Docker 环境搭建与三大数据库(MySQL/Redis/MongoDB)部署教程 一、简介二、安装wsl三、wsl磁盘迁移四、wsl磁盘压缩五、Docker下载六、win11配置docker虚拟环境命令工具七、Docker部署mysql八、Docker部署redis九、Docker部署mongo一、简介 Docker 是一个开源的容器化平台,它…

CPO-BP+MOPSO,冠豪猪优化BP神经网络+多目标粒子群算法!(Matlab源码)

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.CPO-BPNSGA&#xff0c;冠豪猪优化BP神经网络粒子群算法&#xff01;&#xff08;Matlab完整源码和数据&#xff09;&#xff0c;冠豪猪算法优化BP神经网络的权值和阈值&#xff0c;运行环境Matlab2020b及以上。 多…

Vision Pro发布!开发者如何快速上手空间UI设计?

Vision Pro发布&#xff01;开发者如何快速上手空间UI设计&#xff1f; 【内容摘要】 苹果最新发布的Vision Pro&#xff0c;不仅重新定义了我们对虚拟现实&#xff08;VR&#xff09;和增强现实&#xff08;AR&#xff09;的认知&#xff0c;也为开发者们带来了前所未有的机…

Bootstrap法进行随机模拟

一、问题背景 # 26名神经功能受损儿童接受了两组&#xff08;A组与B组&#xff09;空间知觉测试&#xff0c;得分如下A组和B组数据。 # A组数据 x_A <- c(48, 36, 20, 29, 42, 42, 20, 42, 22, 41, 45, 14, 6, 0, 33, 28, 34, 4, 32, 24, 47, 41, 24, 26, 30, 41)# B组数据…

Spring AI 多模型智能协作工作流实现指南

Spring AI 多模型智能协作工作流实现指南 说明 本文档旨在指导开发者基于 Spring AI 框架&#xff0c;在 Spring Boot 2 环境下集成多种主流大语言模型&#xff08;如 OpenAI ChatGPT、Deepseek、阿里云通义千问等&#xff09;&#xff0c;并提供从环境配置、模型调用、流式输…

C语言中清空缓存区到底写到哪里比较好

文章目录 问题背景%d和%c读取缓冲区的差别清空缓存区 问题背景 在写C语言的命令行程序时&#xff0c;我们经常会用到用户输入和标准输出&#xff0c;特别的&#xff0c;当用户输入后&#xff0c;我们发现程序运行不是我们要的样子&#xff0c;这个时候&#xff0c;很可能就是输…

计算机视觉与深度学习 | 基于 YOLOv8 + BeautyGAN + CodeFormer + Face Parsing 实现简单的人脸美颜

人脸美颜 **一、算法流程图****二、完整代码实现**1. 环境准备2. 完整代码(face_beautify.py)**三、核心算法公式**1. YOLOv8检测损失函数2. BeautyGAN损失函数3. CodeFormer图像重建公式**四、关键实现细节**1. 多尺度人脸处理2. 颜色校正策略**五、模型下载清单****六、性能…

如何在WordPress中选择最佳Elementor主题:专家指南

当你在WordPress建站过程中逐步积累了经验&#xff0c;你可能会发觉&#xff0c;基础和进阶主题已难以完全满足你的需求。如果你需要更复杂的功能、更灵活的布局设计&#xff0c;甚至高级定制效果&#xff0c;那么就需要选择更加专业的主题。在这篇文章中&#xff0c;我将为你推…

FPGA高速接口 mipi lvds cameralink hdml 千兆网 sdi

mipi: https://blog.csdn.net/SDJ_success/article/details/146541776 cameralink CameraLink协议 CameraLink协议是一种专门针对机器视觉应用领域的串行通信协议&#xff0c;它使用低压差分信号(LVDS)进行数据的传输和通信。CameraLink标准是在ChannelLink标准的基础上多加了…

手机收不到WiFi,手动输入WiFi名称进行连接不不行,可能是WiFi频道设置不对

以下是电脑上分享WiFi后&#xff0c;部分手机可以看到并且能连接&#xff0c;部分手机不行&#xff0c;原因是&#xff1a;频道设置为5GHz&#xff0c;修改成&#xff0c;任何可用频率&#xff0c;则可