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

Git GitHub 个人账户创建教程

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

目录

  1. 基础概念

  2. 环境配置

  3. 本地Git操作

  4. GitHub远程操作

  5. 日常工作流

  6. 实用技巧

基础概念

什么是 Git?

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

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

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

什么是 GitHub?

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

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

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

环境配置

1. 安装 Git

# Windows: 下载 Git for Windows
# macOS: 
brew install git
# Ubuntu/Debian:
sudo apt-get install git

2. 配置用户信息

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

3. 创建 SSH 密钥(推荐)

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

4. 创建 GitHub 账户

  • 访问 github.com注册账户

  • 完成邮箱验证

  • 设置个人资料

本地Git操作

初始化仓库

# 创建新项目
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方式

基本工作流程

# 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          # 图形化显示分支

撤销操作

# 撤销工作区的修改
git checkout -- filename.txt# 撤销暂存区的文件(取消add)
git reset HEAD filename.txt# 修改最后一次提交
git commit --amend -m "新的提交信息"

GitHub远程操作

连接远程仓库

# 查看远程仓库
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

分支管理

# 创建新分支
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. 标准工作流程

# 每天开始工作前拉一下最新的代码
git pull origin main# 开发新功能
git checkout -b feature/login
# ...编写代码...
git add .
git commit -m "完成登录功能"# 推送到远程
git push origin feature/login# 在GitHub上创建Pull Request

2. 处理冲突

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

3. 版本回退

# 查看历史版本
git log --oneline# 回退到某个版本
git reset --hard commit_id# 强制推送到远程(谨慎使用!)
git push -f origin main

实用技巧

.gitignore 文件

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

# 忽略日志文件
*.log# 忽略依赖文件夹
node_modules/
vendor/# 忽略环境配置文件
.env
config/local.yml# 忽略系统文件
.DS_Store
Thumbs.db

别名配置

~/.gitconfig中添加别名:

[alias]co = checkoutbr = branchci = commitst = statuslg = log --oneline --graph --alllast = log -1 HEAD

GitHub 实用功能

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

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

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

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

  5. ​Wiki​​:项目文档

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

常用命令速查表

# 初始化
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使用教程可以帮到你(●'◡'●)

http://www.dtcms.com/a/391271.html

相关文章:

  • Python学习系统计划:从零到精通的科学路径
  • 解锁 JavaScript 的数学魔法:深入探索 Math 对象
  • dcm4che系列主要开源项目概述
  • 枚举深入解析
  • Qt中delete与deleteLater()的使用
  • AD5621(单通道缓冲电压输出DAC)芯片的详细用法
  • vLLM的面试题
  • 最优控制3 -- 动态规划-一个解析解的例子
  • 深入分析大众点评 Ajax 接口:直接请求 JSON 数据高效获取评论
  • 京东零售张科:DataAI Infra会成为驱动未来的技术基石
  • Java 运维中的一些常用命令
  • 用 go-commons 打造一套最小可行监控体系
  • 广东省省考备考(第一百零二天9.19)——言语(拔高突破第二节课)
  • 在vscode中,在powershell 下,如何进入子目录?
  • 易语言源码怎么制作软件 易语言源码和模块怎么做成软件
  • 4-2〔O҉S҉C҉P҉ ◈ 研记〕❘ WEB应用攻击▸目录遍历漏洞-B
  • 【Javaweb】http协议-请求与响应
  • 内网穿透系列十三:wstunnel 一款通过 Websocket 或 HTTP2 隧道传输的内网穿透工具
  • 【开关电源篇】自激振荡开关电源原理详解-从模块解析到故障维修
  • SpringBoot+Vue实现图片上传
  • C++ 函数指针与排序策略
  • 12分钟讲解Python核心理念
  • 01数据结构-串和KMP算法
  • 前端性能优化实用方案(三):骨架屏提升30%用户感知速度
  • NVR设备ONVIF接入平台EasyCVR视频融合平台智慧小区视频监控一站式建设方案
  • window XP环境下配置VC6.0的Win32汇编语言开发环境
  • 【算法】0_算法工程师常见算法题
  • 免费插件分享 | BaseTool
  • sk04.【scikit-learn基础】--『监督学习』之 线性回归
  • Ubuntu终端切换WiFi