Linux 中 Git 使用指南:从零开始掌握版本控制

目录

[1. 什么是 Git?](#1. 什么是 Git?)

[Git 的核心功能:](#Git 的核心功能:)

[2. Git 的安装](#2. Git 的安装)

[Ubuntu/Debian 系统:](#Ubuntu/Debian 系统:)

验证安装:

3.gitee库

[4. Git 的首次配置](#4. Git 的首次配置)

配置用户名和邮箱:

查看配置:

[5. Git 的基本使用](#5. Git 的基本使用)

初始化仓库

添加文件到暂存区

提交更改

推送到远程仓库

[6. Git Ignore 文件](#6. Git Ignore 文件)

[gitignore 文件:](#gitignore 文件:)

[生效 .gitignore:](#生效 .gitignore:)

[7. 结语](#7. 结语)


1. 什么是 Git?

Git 是一个分布式版本控制系统,用于跟踪文件的修改历史,帮助开发者高效协作和管理代码。无论是个人项目还是团队开发,Git 都是不可或缺的工具。

Git 的核心功能:

  • 版本控制:记录文件的每一次修改,方便回溯和对比。
  • 分支管理:支持多分支开发,便于并行开发和功能隔离。
  • 协作开发:支持多人协作,通过远程仓库共享代码。

2. Git 的安装

在 Linux 系统中,可以通过包管理器轻松安装 Git。

Ubuntu/Debian 系统:

bash 复制代码
sudo apt update
sudo apt install git

CentOS/Fedora 系统:

bash 复制代码
sudo yum install git
# 或者
sudo dnf install git

验证安装:

安装完成后,运行以下命令检查 Git 是否安装成功:

bash 复制代码
git --version

3.gitee库

首先进入gitee官网,注册完账户后,进入界面

填写相关内容

下一步

这个我们有用

4. Git 的首次配置

输入刚刚得到的地址

bash 复制代码
git clone +刚刚复制的http(git的)

在首次使用 Git 之前,需要配置用户名和邮箱,这些信息会记录在每次提交中。

配置用户名和邮箱:

bash 复制代码
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"

查看配置:

bash 复制代码
git config --list

5. Git 的基本使用

初始化仓库

在项目目录中初始化 Git 仓库:

bash 复制代码
git init

添加文件到暂存区

使用 git add 将文件添加到暂存区(准备提交):

bash 复制代码
git add <file_name>  # 添加单个文件
git add .           # 添加所有文件

提交更改

使用 git commit -m 提交更改并添加提交信息:

bash 复制代码
git commit -m "Initial commit"

推送到远程仓库

如果项目关联了远程仓库(如 GitHub、GitLab),可以使用 git push 将本地更改推送到远程仓库:

bash 复制代码
git push origin main  # 将本地 main 分支推送到远程仓库

6. Git Ignore 文件

.gitignore 文件用于指定哪些文件或目录不需要被 Git 跟踪。例如,忽略编译生成的文件、日志文件等。

gitignore 文件:

在项目根目录下创建 .gitignore 文件,并添加需要忽略的文件或目录:

bash 复制代码
# 忽略所有 .log 文件
*.log

# 忽略 build 目录
/build/

# 忽略 .env 文件
.env

生效 .gitignore:

.gitignore 文件生效后,Git 会自动忽略指定的文件或目录。

7. 结语

通过本文,你已经学会了如何在 Linux 中使用 Git,包括安装、配置、基本命令、关联远程仓库以及推送代码。Git 是开发者必备的工具,掌握这些基础操作将为你的开发工作带来极大便利。如果你有任何问题,欢迎在评论区留言讨论!

相关推荐
云栖梦泽15 小时前
Linux内核与驱动:9.Linux 驱动 API 封装
linux·c++
si莉亚16 小时前
ROS2安装EVO工具包
linux·开发语言·c++·开源
Tingjct16 小时前
Linux常用指令
linux·运维·服务器
广州灵眸科技有限公司16 小时前
为RK3588注入澎湃算力:RK1820 AI加速卡完整适配与评测指南
linux·网络·人工智能·物联网·算法
IT界的老黄牛17 小时前
Linux 压缩命令实战:tar、gzip、bzip2、xz、zstd 怎么选?一篇讲清楚
linux·运维·服务器
IT WorryFree17 小时前
飞塔防火墙与第三方设备进行IPSEC故障诊断期间,用户可能会观察到以下错误:
linux·服务器·网络
12345,catch a tiger17 小时前
虚拟机ubuntu安装Vmware Tools
linux·运维·ubuntu
天若有情67317 小时前
【C++原创开源】formort.h:一行头文件,实现比JS模板字符串更爽的链式拼接+响应式变量
开发语言·javascript·c++·git·github·开源项目·模版字符串
凉、介17 小时前
别再把 PCIe 的 inbound/outbound、iATU 和 eDMA 混为一谈
linux·笔记·学习·嵌入式·pcie
辰风沐阳18 小时前
OpenClaw 安装教程(Ubuntu 24.04 Desktop)
linux·ubuntu