1 github打不开的问题
1.确定github网站的ip
打开网址:http://github.com.ipaddress.com/
可能多个ip
140.82.113.4 github.com
2.确定域名ip
打开网址:http://github.global.ssl.fastly.net.ipaddress.com/
140.82.113.4 github.global.ssl.fastly.net
3.确定静态资源ip
打开网址:http://assets-cdn.github.com.ipaddress.com/
185.199.109.153 assets-cdn.github.com
4.修改hosts文件
sudo gedit /etc/hosts
140.82.113.4 github.com
140.82.113.4 github.global.ssl.fastly.net
185.199.109.153 assets-cdn.github.com
2020年11月28日
192.30.255.113 github.com
2.fatal: Could not read from remote repository.
yys@DESKTOP-DV2G0V8:~/r2-drive$ git push
ssh: Could not resolve hostname github.com: Temporary failure in name resolution
fatal: Could not read from remote repository.
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
3.将本地项目上传到 GitHub 仓库(r2-drive)
一前期准备(确保环境就绪)
1. 检查 Git 是否安装
打开终端(Windows 用 Git Bash/CMD,Mac/Linux 用终端),执行:
git --version
- 如果显示
git version x.x.x(比如git version 2.43.0),说明已安装 - 如果提示「未找到命令」,先安装 Git:
- Windows:下载 Git 安装包,一路下一步即可
- Mac:执行
brew install git(需先装 Homebrew) - Linux:执行
sudo apt install git(Ubuntu/Debian)或sudo yum install git(CentOS)。
2. 配置 Git 用户名和邮箱(首次使用必须做)
GitHub 会通过这个信息关联你的提交记录,执行以下命令(替换为你的 GitHub 用户名和邮箱):
git config --global user.name "你的GitHub用户名" # 比如 yyszone
git config --global user.email "你的GitHub注册邮箱"
3. 配置 SSH 密钥(关键!避免推送时输密码/权限错误)
因为你的仓库地址是 git@github.com:...(SSH 协议),需要配置 SSH 密钥让本地和 GitHub 认证:
步骤 1:生成 SSH 密钥
终端执行(邮箱填你 GitHub 注册的邮箱):
ssh-keygen -t ed25519 -C "你的GitHub邮箱"
- 按 3 次回车(默认路径无密码),密钥会生成在
~/.ssh/目录下(Windows 是C:\Users\你的用户名\.ssh\)。
步骤 2:复制 SSH 公钥
- Mac/Linux:执行
cat ~/.ssh/id_ed25519.pub,复制输出的全部内容 - Windows:执行
type C:\Users\你的用户名\.ssh\id_ed25519.pub,复制输出的全部内容。
步骤 3:添加到 GitHub
- 登录 GitHub,点击右上角头像 →
Settings - 左侧菜单选
SSH and GPG keys→ 点击New SSH key Title填任意名称(比如「我的电脑」),Key粘贴刚才复制的公钥,点击Add SSH key。
步骤 4:验证 SSH 连接
终端执行:
ssh -T git@github.com
如果出现 Hi 你的用户名! You've successfully authenticated...,说明配置成功。
二本地项目操作(初始化 Git 仓库)
1. 进入本地项目文件夹
终端执行(替换为你的项目实际路径):
# 示例:Mac/Linux
cd ~/r2-drive # 你的项目文件夹路径
# Windows(Git Bash)
cd /c/Users/你的用户名/r2-drive
2. 初始化 Git 仓库(首次上传必做)
git init
执行后会提示 Initialized empty Git repository in ...,说明本地仓库创建成功。
3. 创建 .gitignore 文件(可选但强烈推荐)
忽略不需要上传的文件(如依赖包日志缓存等),避免仓库体积过大:
# Mac/Linux/Git Bash
touch .gitignore
编辑 .gitignore 文件(用文本编辑器打开),写入项目需要忽略的内容(示例,根据你的项目类型调整):
# 通用忽略
.DS_Store
*.log
.idea/
.vscode/
# 前端项目(如果是Node.js项目)
node_modules/
dist/
build/
.env
.env.local
# Python项目
__pycache__/
venv/
*.pyc
4. 添加文件到暂存区
把本地所有项目文件加入 Git 暂存区:
git add .
- 如果只想添加单个文件:
git add 文件名(比如git add index.js)。
5. 提交暂存区文件到本地仓库
提交并填写「有意义的提交说明」(方便后续追溯):
git commit -m "初始提交:上传 r2-drive 项目基础文件"
执行后会显示提交的文件数量修改内容等信息,说明本地提交成功。
三关联远程仓库并解决分支分歧
1. 关联 GitHub 远程仓库
将本地仓库与你的 r2-drive 远程仓库绑定:
git remote add origin git@github.com:yyszone/r2-drive.git
- 验证关联是否成功:
git remote -v,会显示origin对应的仓库地址。
2. 配置分支合并策略(解决「分歧分支」问题)
因为远程仓库已有初始提交(比如 README.md),本地是新仓库,需要指定合并方式:
# 配置当前仓库默认用 merge 方式合并(新手友好)
git config pull.rebase false
3. 拉取远程仓库内容(整合本地与远程)
git pull origin main --allow-unrelated-histories
- 执行后如果提示
Merge made by the 'ort' strategy,说明合并成功 - 如果出现文件冲突(比如本地和远程有同名文件):
- 终端会提示「CONFLICT (add/add): Merge conflict in 文件名」
- 用文本编辑器打开冲突文件,找到
<<<<<<< HEAD=======>>>>>>> origin/main标记的冲突区域 - 保留需要的内容,删除冲突标记
- 重新提交:
git add .→git commit -m "解决合并冲突:整合远程与本地文件"。
四推送本地代码到 GitHub
1. 推送代码到远程 main 分支
git push -u origin main
- 执行后会显示推送进度,成功后提示:
Branch 'main' set up to track remote branch 'main' from 'origin'.
2. 验证推送结果
- 打开浏览器,访问
https://github.com/yyszone/r2-drive - 刷新页面,就能看到你本地的项目文件已经出现在仓库中。
五后续常用操作(可选)
如果后续修改了本地文件,只需执行以下步骤即可更新到远程:
git add . # 添加修改的文件
git commit -m "修改说明:比如修复XX功能" # 提交到本地
git push origin main # 推送到远程
``
---
### 总结
1. 核心前提:必须配置 **Git 用户名/邮箱** 和 **SSH 密钥**,否则会出现权限/认证错误
2. 关键步骤:本地初始化 → 提交文件 → 关联远程 → 拉取合并 → 推送代码
3. 避坑点:拉取远程内容时必须加 `--allow-unrelated-histories`,并配置 `pull.rebase false` 解决分支分歧,否则会推送失败。
如果后续遇到任何问题(比如分支名不是 main推送超时等),都可以告诉我,我会帮你针对性解决。
评论区(0 条)
发表评论⏳ 加载编辑器…