Git 基础:了解版本控制,跟踪更改,Push 和 Pull 代码,适合初学者

发布: (2026年1月18日 GMT+8 05:30)
5 min read
原文: Dev.to

Source: Dev.to

请提供您希望翻译的完整文本内容(包括标题、段落、列表等),我将按照要求保留源链接并将其余部分翻译成简体中文。谢谢!

Git Bash

Git 通过让您保存代码快照、安全协作以及轻松撤销错误,简化了版本控制。

什么是版本控制?

版本控制是一种帮助您:

  • 跟踪文件随时间的更改。
  • 在出现问题时回退到之前的版本。
  • 与他人协作而不会产生冲突。

什么是 Git 和 GitHub?

  • Git – 安装在您电脑上的工具,用于跟踪项目中的更改。
  • GitHub – 一个在线平台,您可以在此存储 Git 仓库并与他人协作。

关键术语

  • Repository – 一个 Git 跟踪项目历史的文件夹。
  • Working directory – 您编辑文件的地方。
  • Staging area – 在永久保存之前准备文件的区域。
  • Commit – 项目在特定时间点的快照。

设置 Git

首先,确认已安装的 Git Bash 版本:

git --version

Git 版本输出

配置你的姓名和电子邮件:

git config --global user.name "Your Name"
git config --global user.email "you@example.com"

生成 SSH 密钥

SSH 密钥是一种安全的访问凭证。

ssh-keygen -t ed25519 -C "you@example.com"
  • -t 指定密钥类型(ed25519 是一种安全的加密方法)。
  • -C 添加注释(通常是你的电子邮件)。

这会生成私钥(id_ed25519)和公钥(id_ed25519.pub)。公钥将关联到 GitHub。

启动 SSH 代理

eval "$(ssh-agent -s)"

将 SSH 密钥添加到代理

ssh-add ~/.ssh/id_ed25519

复制你的公钥

cat ~/.ssh/id_ed25519.pub

将 SSH 密钥添加到 GitHub

  1. 前往 GitHub → Settings → SSH and GPG keys
  2. 点击 New SSH key,填写标题,粘贴复制的密钥,然后点击 Add SSH key

跟踪你的更改

Git 在三个阶段跟踪更改:工作目录暂存区提交历史

工作目录

工作目录保存了项目文件在你电脑上的实际状态。你在这里编辑文件。

创建仓库的步骤

mkdir my-first-repo      # 创建一个新文件夹
cd my-first-repo          # 进入该文件夹
git init                  # 初始化 Git(将文件夹变成仓库)

Git init 截图

创建文件:

touch README.md

创建 README 截图

暂存

当你修改文件时,Git 已经知道有更改,但尚未将其包含在下一个快照中。将你想要提交的文件加入暂存区:

git add README.md

提交

暂存完成后,使用描述性的消息创建一次提交:

git commit -m "Add README.md file"

提交截图

将 GitHub 仓库添加为远程(请替换为你的实际 URL):

git remote add origin git@github.com:username/repository-name.git
git remote -v   # 验证远程仓库

如何将代码推送到 GitHub

git push -u origin main
  • origin – 远程仓库的名称。
  • main – 您要推送到的分支。

如何从 GitHub 拉取代码

git pull origin main

使用场景:

  • 在多个分支上工作。
  • 与团队协作。
  • 用远程更改更新本地项目。

Git 工作流

  1. 编辑文件。
  2. git add → 暂存更改。
  3. git commit → 保存更改。
  4. git push → 上传到 GitHub。
  5. git pull → 下载更新。

结论

Git 起初可能看起来令人生畏,但它是开发者必不可少的工具。通过掌握 addcommitpushpull,你已经覆盖了核心工作流,现在可以每天使用 Git。

Back to Blog

相关文章

阅读更多 »

Git 与 Github 入门

为什么版本控制很重要 - 每一次更改都会被记录 - 你可以回到代码的旧版本 - 你可以看到是谁在何时做的更改 - 多...