Git 安装与使用教程:从入门到实战,常用命令一次讲清


Git 是当今最流行的版本控制系统,全球几乎所有开发者都在用它管理代码:提交历史、分支协作、代码回滚、远程同步,全靠 Git。对服务器运维来说,Git 同样重要:网站源码管理、Jenkins 自动部署、克隆开源项目,样样离不开它。这篇文章从安装开始,把 Git 的核心概念和日常高频命令一次讲透,让你真正会用、敢用 Git。

一、Git 是什么

Git 是一个分布式的版本控制系统,由 Linux 之父 Linus Torvalds 开发。它记录文件的每一次改动,你可以随时查看历史、回退到任意版本、开分支做实验,还能多人协作互不干扰。

核心概念先记住四个:

  • 仓库(Repository):存放代码和所有历史记录的地方
  • 提交(Commit):一次改动的快照
  • 分支(Branch):独立的开发线,默认主分支叫 master 或 main
  • 远程仓库(Remote):托管在 GitHub、Gitee 等平台上的仓库

二、安装 Git

Ubuntu / Debian:

apt update && apt install -y git

CentOS / Rocky:

yum install -y git

验证安装:

git --version

三、首次使用配置

安装后先设置用户名和邮箱,这些信息会记录在每次提交里:

git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

查看配置:

git config --list

四、本地仓库基本操作

1. 初始化仓库

mkdir myproject && cd myproject
git init

2. 添加文件并提交

# 添加所有文件到暂存区
git add .

# 提交到仓库
git commit -m "首次提交"

日常修改后的提交流程就是:git add → git commit。

3. 查看状态和历史

git status        # 查看哪些文件被修改
git log --oneline # 查看提交历史(一行一条)

4. 回退版本

# 撤销工作区的修改(还没 git add)
git checkout -- 文件名

# 撤销已 add 但未 commit 的修改
git reset HEAD 文件名

# 回退到指定版本
git log --oneline          # 找到要回退的 commit id
git reset --hard 提交id    # 强制回退,慎用!

五、分支管理

分支是 Git 最强大的功能:你在一个分支上改代码,完全不影响主分支,测试好了再合并。

git branch                 # 查看所有分支
git branch dev             # 新建 dev 分支
git checkout dev           # 切换到 dev 分支
git checkout -b dev        # 新建并切换(一步到位)
git merge dev              # 把 dev 合并到当前分支
git branch -d dev          # 删除分支

六、连接远程仓库(GitHub/Gitee)

1. 配置 SSH 密钥(免密推送)

ssh-keygen -t rsa -b 4096 -C "你的邮箱"
cat ~/.ssh/id_rsa.pub

把输出的公钥复制到 GitHub 的 Settings → SSH and GPG keys 里。

2. 克隆远程仓库

git clone git@github.com:用户名/仓库名.git

国内网络慢的话,参考本站的 GitHub 加速教程,使用镜像代理加速克隆。

3. 推送和拉取

git push origin main    # 推送到远程 main 分支
git pull origin main    # 拉取远程最新代码

七、服务器上的实战场景

场景一:部署网站源码

cd /www/wwwroot/example.com
git clone https://github.com/用户名/网站仓库.git .
git pull   # 以后每次更新,拉取最新代码即可

场景二:配合 Jenkins 自动部署

配置好 Git 仓库地址和分支,Jenkins 在每次 push 后自动拉取代码、执行构建、发布到服务器,全程无人值守(详见本站 Jenkins 教程)。

场景三:忽略不需要提交的文件

新建 .gitignore 文件:

# 忽略敏感和临时文件
.env
node_modules/
*.log
.DS_Store

八、常用技巧

1. 查看某个文件的历史

git log --oneline -- 文件名

2. 暂存当前改动(切分支前用)

git stash          # 暂时保存当前未提交的改动
git stash pop      # 恢复

3. 打标签(发布版本用)

git tag v1.0.0
git push origin v1.0.0

4. 查看本次改了什么

git diff

九、常见报错解决

Q1:fatal: not a git repository

当前目录不是 Git 仓库,先执行 git init 或在仓库目录下操作。

Q2:Permission denied (publickey)

SSH 密钥没配对。确认公钥已添加到 GitHub/Gitee,并检查密钥文件路径。

Q3:error: failed to push some refs

远程有本地没有的提交。先 git pull --rebase 拉取合并,再 push。

Q4:提交了不该提交的文件(如 .env)?

git rm --cached .env   # 从版本控制移除但保留本地文件
echo ".env" >> .gitignore
git commit -m "移除敏感文件"

总结

Git 的核心就三件事:提交(记录改动)、分支(并行开发)、同步(远程协作)。把 add/commit/push/pull 和分支、回退这几个命令练熟,日常开发与服务器部署就完全够用了。剩下的命令,遇到具体场景再查再学,用着用着就熟练了。


手机扫码阅读

微信或手机浏览器扫一扫,随时随地随心阅读与分享

Vim 编辑器详解:模式切换、常用命令与 .vimrc 配置,新手入门到熟练

Typecho 博客搭建教程:轻量高效,低配 VPS 也能流畅运行的博客程序

评 论
更换验证码