GitHub 使用教程:从入门到进阶

1. GitHub账号注册

  • 访问 GitHub 官网 (https://github.com)
  • 点击 "Sign up" 按钮
  • 填写用户名、邮箱和密码
  • 验证邮箱完成注册

2. 基础配置

2.1 安装Git

  • 访问 Git 官网下载安装包
  • 运行安装程序,按提示完成安装
  • 打开终端,设置用户信息:
bash 复制代码
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"

2.2 配置SSH密钥

  • 打开命令行终端生成SSH密钥:
bash 复制代码
ssh-keygen -t rsa -C "你的邮箱"

设置过程可一路使用默认配置

  • 将公钥添加到GitHub账号设置中,路径为settings->SSH and GPG keys->New SSH key,然后去C:\Users\xxxx.ssh下找到id_rsa.pub文件,复制里面的内容,粘贴到key的框中。

3. 上传项目

3.1 创建新仓库

  • 在GitHub网站点击 "New repository"
  • 填写仓库名称和描述
  • 选择公开或私有
  • 初始化README文件(可选)

3.2 上传本地项目

bash 复制代码
# 初始化本地仓库
git init

# 添加远程仓库
git remote add origin git@github.com:用户名/仓库名.git

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

# 提交更改
git commit -m "初始提交"

# 推送到远程仓库
git push -u origin main

4. 克隆和下载项目

4.1 克隆仓库

bash 复制代码
git clone git@github.com:用户名/仓库名.git

4.2 更新本地仓库

bash 复制代码
git pull origin main

5. 处理冲突

5.1 常见冲突情况

  • 多人同时修改同一文件
  • 分支合并时的代码冲突
  • 远程仓库与本地仓库不同步

5.2 解决冲突步骤

  1. 拉取最新代码:git pull origin main

  2. 查看冲突文件,文件中会标记冲突部分:

    <<<<<<< HEAD
    本地代码

    远程代码

    branch-name

  3. 手动修改冲突文件,选择要保留的代码

  4. 添加修改后的文件:git add .

  5. 提交更改:git commit -m "解决冲突"

  6. 推送到远程:git push origin main

6. 常用Git命令速查

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

# 查看提交历史
git log

# 创建分支
git branch 分支名

# 切换分支
git checkout 分支名

# 合并分支
git merge 分支名

# 删除分支
git branch -d 分支名

# 查看远程仓库信息
git remote -v

7. 常见问题

7.1 # ssh: connect to host github.com port 22: Connection timed out

解决方法:去C:\Users\xxxx.ssh下新建一个config文件里面输入以下内容:

复制代码
Host github.com
User git
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443

保存之后重试操作

相关推荐
第七种黄昏几秒前
GitHub 项目提交完整流程(含常见问题与解决办法)
github
确定过眼神!1 小时前
GitHub提交到公共项目流程
github·changeset
掘我的金2 小时前
mpc4j 在 macOS M3(Apple Silicon)上的部署实录:JDK 21(Preview)与 FourQ 缺失排错
github
油泼辣子多加3 小时前
[特殊字符] GitHub 热门开源项目速览(2025/09/09)
github
CoderJia程序员甲4 小时前
GitHub 热榜项目 - 日榜(2025-09-09)
ai·开源·大模型·github·ai教程
BillKu5 小时前
下载 Eclipse Temurin 的 OpenJDK 提示 “无法访问此网站 github.com 的响应时间过长”
github·openjdk·eclipse temurin
绝无仅有5 小时前
HTTP面试之实战经验与总结
后端·面试·github
绝无仅有5 小时前
职场面试redis经历之与一位资深技术面试官的技术问答与总结
后端·面试·github
老马啸西风10 小时前
v0.29.2 敏感词性能优化之基本类型拆箱、装箱的进一步优化的尝试
性能优化·开源·nlp·github·敏感词
伴杯猫13 小时前
【ESP32-IDF】基础外设开发2:系统中断矩阵
c语言·单片机·嵌入式硬件·mcu·物联网·github