当前位置: 首页 > news >正文

Linux下如何使用Git工具:从安装到实战的完整指南

使用:

代码语言:javascript

AI代码解释

bash 1 sudo yum install git -y

安装完成后,通过git --version验证版本(建议使用2.30+版本以支持最新特性)。

2. 配置全局信息

首次使用前需设置用户名和邮箱(此信息会关联到所有提交记录):

代码语言:javascript

AI代码解释

bash 1 git config --global user.name "Your Name" 2 git config --global user.email "your.email@example.com"

查看配置:

代码语言:javascript

AI代码解释

bash 1 git config --list
3. 生成SSH密钥(推荐)

通过SSH协议克隆仓库可避免频繁输入密码:

代码语言:javascript

AI代码解释

bash 1 ssh-keygen -t ed25519 -C "your.email@example.com"

按提示保存密钥文件(默认~/.ssh/id_ed25519),然后将公钥(id_ed25519.pub)内容添加到GitHub/GitLab等平台的SSH设置中。

二、基础操作流程

1. 初始化仓库

在项目目录下执行:

代码语言:javascript

AI代码解释

bash 1 git init

生成隐藏的.git目录,用于存储版本历史。

2. 提交更改
  • 暂存文件:bash1git add file.txt #添加单个文件 2git add . # 添加所有修改文件
  • 提交到本地仓库:bash1git commit -m "Initial commit"-m参数后接提交说明,建议遵循Conventional Commits规范。
3. 查看状态与日志
  • 状态检查:bash1git status 显示未暂存/已暂存的修改。
  • 日志查看:bash1git log --oneline # 简洁模式 2git log -p file.txt # 查看文件修改历史

三、远程仓库协作

1. 关联远程仓库

代码语言:javascript

AI代码解释

bash 1 git remote add origin git@github.com:username/repo.git

验证远程地址:

代码语言:javascript

AI代码解释

bash 1 git remote -v
2. 推送与拉取
  • 首次推送:bash1git push -u origin main # -u设置上游分支
  • 后续推送:bash1git push
  • 拉取更新:bash1git pull origin main # 等同于git fetch + git merge

四、分支管理

1. 创建与切换分支

代码语言:javascript

AI代码解释

bash 1 git branch feature/login # 创建分支 2 git checkout feature/login # 切换分支 3 # 或使用简写: 4 git checkout -b feature/login
2. 合并分支

代码语言:javascript

AI代码解释

bash 1 git checkout main # 切换到目标分支 2 git merge feature/login # 合并feature/login到main

解决冲突后,通过git add标记冲突文件,再执行git commit完成合并。

五、实用技巧

1. 忽略文件配置

在项目根目录创建.gitignore文件,排除不需要版本控制的文件(如日志、编译产物):

代码语言:javascript

AI代码解释

1 # .gitignore示例 2 *.log 3 dist/ 4 node_modules/
2. 撤销更改
  • 撤销暂存:bash1git reset HEAD file.txt
  • 撤销提交:bash1git reset --soft HEAD~1 # 保留修改 2git reset --hard HEAD~1 # 彻底回退(慎用)
3. 标签管理

为版本发布打标签:

代码语言:javascript

AI代码解释

bash 1 git tag v1.0.0 2 git push origin v1.0.0 # 推送标签到远程

结语

Linux下的Git操作通过命令行即可完成全流程管理,其优势在于可脚本化、适合自动化集成。掌握基础操作后,可进一步学习git rebasegit stash等高级功能。建议结合和实际项目练习,逐步提升版本控制能力。

http://www.jsqmd.com/news/450457/

相关文章:

  • Spring Cloud Alibaba 组件版本选择
  • SpringBoot+Vue 学院个人信息管理系统平台完整项目源码+SQL脚本+接口文档【Java Web毕设】
  • 基于Java+SSM+Flask疫情信息管理系统(源码+LW+调试文档+讲解等)/疫情数据管理系统/疫情信息统计软件/疫情信息管理工具/公共卫生信息管理系统/疫情监控平台/实时疫情信息系统
  • Spring Integration + MQTT
  • 使用OpenClaw,搭建私人QQ助理
  • Flutter 三方库 youtube_caption_scraper 的鸿蒙化适配指南 - 掌控多媒体字幕资产、精密 Scraper 治理实战、鸿蒙级内容专家
  • 企业级养老院管理系统管理系统源码|SpringBoot+Vue+MyBatis架构+MySQL数据库【完整版】
  • 前后端分离校车调度管理系统系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程
  • Flutter 三方库 nyxx_commands 的鸿蒙化适配指南 - 掌控指令资产、精密 Discord Bot 治理实战、鸿蒙级交互专家
  • Flutter 三方库 delete_un_used_assets 的鸿蒙化适配指南 - 掌控清理资产、精密冗余治理实战、鸿蒙级瘦身专家
  • R语言,linux及服务器远程配置
  • Spring cloud alibaba集成nacos 报错:[Nacos Config] config[dataId=xxx, group=DEFAULT_GROUP] is empty 解决
  • 流水潺潺:探寻Linux下C语言文件流的诗意实现
  • 风吹字符起,诗意Linux:一场指令与自由的浪漫邂逅(下)
  • Spring Boot与MyBatis
  • ASP.NET商家联盟会员消费管理系统源码(含IIS+SQL Server 2005部署说明)
  • 2026年西藏抖音短视频代运营推广公司排行 - 精选优质企业推荐榜
  • 基于SpringBoot+Vue的校园一卡通abo管理系统设计与实现【Java+MySQL+MyBatis完整源码】
  • 称重装置(CAD装配图)
  • 梯度下降:机器学习中的核心优化算法
  • 2026年山东抖音短视频代运营公司排行榜发布 - 精选优质企业推荐榜
  • 纸上流年:Linux基础IO的文件理解与操作
  • Spring Cloud Data Flow 简介
  • spring loCDI 详解
  • Spring Boot:Java开发的神奇加速器(二)
  • 2026年济南抖音代运营公司推荐榜单TOP5发布 - 精选优质企业推荐榜
  • Flutter 三方库 sendgrid_mailer 的鸿蒙化适配指南 - 掌控邮件分发资产、网关治理实战、鸿蒙级精密通讯专家
  • 前后端分离洋州影院购票管理系统系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程
  • Flutter 三方库 zxcvbn 的鸿蒙化适配指南 - 掌控密码强度资产、安全审计实战、鸿蒙级精密鉴权专家
  • Selenium的学习