Git & GitHub 个人账户创建教程

本教程将带你从零开始学习如何使用 Git 和 GitHub 管理你的代码项目。

目录

  1. 基础概念

  2. 环境配置

  3. 本地Git操作

  4. GitHub远程操作

  5. 日常工作流

  6. 实用技巧

基础概念

什么是 Git?

  • ​分布式版本控制系统​​:记录文件变化,可以回溯到任意版本

  • ​本地操作​​:大部分操作在本地完成,无需联网

  • ​分支管理​​:轻松创建、合并分支,支持并行开发

什么是 GitHub?

  • ​代码托管平台​​:基于 Git 的云端代码仓库

  • ​协作工具​​:支持多人协作开发

  • ​开源社区​​:全球最大的开源代码托管平台

环境配置

1. 安装 Git

bash 复制代码
# Windows: 下载 Git for Windows
# macOS: 
brew install git
# Ubuntu/Debian:
sudo apt-get install git

2. 配置用户信息

bash 复制代码
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"
git config --global color.ui auto  # 启用颜色显示

3. 创建 SSH 密钥(推荐)

bash 复制代码
ssh-keygen -t ed25519 -C "your_email@example.com"
# 将 ~/.ssh/id_ed25519.pub 内容添加到 GitHub SSH Keys

4. 创建 GitHub 账户

  • 访问 github.com注册账户

  • 完成邮箱验证

  • 设置个人资料

本地Git操作

初始化仓库

bash 复制代码
# 创建新项目
mkdir my-project
cd my-project
git init  # 初始化Git仓库

# 或者克隆现有项目
git clone https://github.com/username/repo.git
git clone git@github.com:username/repo.git  # SSH方式

基本工作流程

bash 复制代码
# 1. 查看状态
git status

# 2. 添加文件到暂存区
git add filename.txt      # 添加单个文件
git add .                 # 添加所有文件
git add *.js              # 添加所有js文件

# 3. 提交更改
git commit -m "描述这次提交的内容"

# 4. 查看提交历史
git log
git log --oneline        # 简洁显示
git log --graph          # 图形化显示分支

撤销操作

bash 复制代码
# 撤销工作区的修改
git checkout -- filename.txt

# 撤销暂存区的文件(取消add)
git reset HEAD filename.txt

# 修改最后一次提交
git commit --amend -m "新的提交信息"

GitHub远程操作

连接远程仓库

bash 复制代码
# 查看远程仓库
git remote -v

# 添加远程仓库(通常命名为origin)
git remote add origin https://github.com/username/repo.git

# 推送到远程仓库
git push -u origin main  # 第一次推送使用-u参数
git push                 # 之后直接使用git push

# 从远程拉取更新
git pull origin main

分支管理

bash 复制代码
# 创建新分支
git branch new-feature

# 切换分支
git checkout new-feature
git switch new-feature  # 新命令

# 创建并切换分支
git checkout -b new-feature
git switch -c new-feature

# 合并分支
git checkout main
git merge new-feature

# 删除分支
git branch -d new-feature  # 安全删除
git branch -D new-feature  # 强制删除

日常工作流

1. 标准工作流程

bash 复制代码
# 每天开始工作前拉一下最新的代码
git pull origin main

# 开发新功能
git checkout -b feature/login
# ...编写代码...
git add .
git commit -m "完成登录功能"

# 推送到远程
git push origin feature/login

# 在GitHub上创建Pull Request

2. 处理冲突

bash 复制代码
# 当git pull提示冲突时
# 1. 手动解决冲突文件中的 <<<<<<<, =======, >>>>>>> 标记
# 2. 添加解决后的文件
git add conflicted-file.txt
# 3. 完成合并
git commit

3. 版本回退

bash 复制代码
# 查看历史版本
git log --oneline

# 回退到某个版本
git reset --hard commit_id

# 强制推送到远程(谨慎使用!)
git push -f origin main

实用技巧

.gitignore 文件

创建 .gitignore文件来忽略不需要版本控制的文件:

bash 复制代码
# 忽略日志文件
*.log

# 忽略依赖文件夹
node_modules/
vendor/

# 忽略环境配置文件
.env
config/local.yml

# 忽略系统文件
.DS_Store
Thumbs.db

别名配置

~/.gitconfig中添加别名:

bash 复制代码
[alias]
    co = checkout
    br = branch
    ci = commit
    st = status
    lg = log --oneline --graph --all
    last = log -1 HEAD

GitHub 实用功能

  1. ​README.md​​:项目说明文档,支持Markdown语法

  2. ​Issues​​:问题跟踪和讨论

  3. ​Pull Requests​​:代码审查和合并

  4. ​Actions​​:自动化CI/CD流程

  5. ​Wiki​​:项目文档

  6. ​Projects​​:项目管理看板

常用命令速查表

bash 复制代码
# 初始化
git init
git clone <url>

# 基本操作
git add <file>
git commit -m "message"
git status
git log

# 分支操作
git branch
git checkout <branch>
git merge <branch>

# 远程操作
git push
git pull
git fetch

# 撤销操作
git reset
git checkout -- <file>
git revert <commit>

最佳实践

  1. ​频繁提交​​:小步快跑,每次提交解决一个问题

  2. ​清晰的提交信息​​:用一句话说明这次提交的目的

  3. ​使用分支​​:为新功能、修复创建独立分支

  4. ​定期拉取​​:每天开始工作前先拉取最新代码

  5. ​代码审查​​:通过Pull Request进行代码审查

  6. ​保护main分支​​:禁止直接push到main分支

遇到问题?

  1. ​认证失败​​:检查SSH密钥或使用Personal Access Token

  2. ​冲突无法解决​​:备份代码,重新拉取,手动合并

  3. ​误删文件​ ​:使用 git checkout -- filename恢复

  4. ​提交到错误分支​ ​:使用 git cherry-pick移动提交

有问题下方留言 希望这篇简略版git使用教程可以帮到你(●'◡'●)

相关推荐
aopstudio3 小时前
零成本上线动态博客:用 Rin + Cloudflare 部署个人博客的完整指南
javascript·serverless·github
wuyunhang1234564 小时前
Git----常用指令入门
git
CoderJia程序员甲5 小时前
GitHub 热榜项目 - 日榜(2025-09-18)
ai·开源·大模型·github·ai教程
逛逛GitHub6 小时前
Kimi K2 + Claude Code 接入 3 个神级开源 MCP,相当丝滑。
github·mcp
越千年7 小时前
Git的“后悔药”全指南:reset、revert、restore 如何优雅地拯救手残
git
Rhys..8 小时前
github修改repo名称
github
杨杨杨大侠9 小时前
手把手教你写 httpclient 框架(七)- 异步处理与性能优化
java·http·github
绝无仅有9 小时前
redis面试史上最全的笔记整理总结
后端·面试·github
绝无仅有10 小时前
面试数据库MySQL 99% 必问的十道题及详细解答
后端·面试·github