GitHub 登录与远程仓库配置
841 字
4 分钟
GitHub 登录与远程仓库配置
GitHub 登录与远程仓库配置
本文采用 HTTPS 作为默认连接方式,同时保留 SSH 作为备用方式。
一、先认识 HTTPS 和 SSH
GitHub 远程仓库常见的两种地址:
HTTPS:https://github.com/用户名/仓库名.gitSSH: git@github.com:用户名/仓库名.git| 方式 | 认证方法 | 适用场景 |
|---|---|---|
| HTTPS | 浏览器登录、Git Credential Manager 或 Token | 默认推荐,适合大多数网络环境 |
| SSH | 本地私钥 + GitHub 公钥 | 适合已配置 SSH 密钥的开发环境 |
两种方式可以同时保留,互不冲突。
二、HTTPS 登录 GitHub(默认方式)
1. 检查凭据管理器
Windows 通常使用 Git Credential Manager:
git credential-manager --version2. 触发登录
在项目目录中执行:
git push origin main通常会弹出浏览器,登录 GitHub 并完成授权。
如果终端要求输入用户名和密码:
Username:GitHub 用户名Password:Personal Access Token密码位置不能填写普通 GitHub 登录密码。
三、SSH 登录 GitHub(备用方式)
1. 检查是否已有 SSH 密钥
ls ~/.ssh常见文件:
id_ed25519id_ed25519.pub2. 没有密钥时创建
ssh-keygen -t ed25519 -C "你的邮箱"按提示完成后,将公钥内容复制到 GitHub:
cat ~/.ssh/id_ed25519.pub在 GitHub 中进入:
Settings → SSH and GPG keys → New SSH key3. 测试 SSH 登录
ssh -T git@github.com首次连接时输入:
yes出现成功认证提示,说明 SSH 可以使用。
四、查看当前远程仓库
先进入项目目录:
cd /d/Dev/Projects/项目目录查看远程地址:
git remote -vHTTPS 地址示例:
origin https://github.com/用户名/仓库名.gitSSH 地址示例:
origin git@github.com:用户名/仓库名.git如果提示:
fatal: not a git repository说明当前目录不是 Git 仓库,需要进入正确的项目目录。
五、推荐配置:HTTPS 默认,SSH 备用
1. 将 origin 设置为 HTTPS
git remote set-url origin https://github.com/用户名/仓库名.git2. 添加 SSH 备用远程
git remote add origin-ssh git@github.com:用户名/仓库名.git3. 检查配置
git remote -v正常结果:
origin https://github.com/用户名/仓库名.gitorigin-ssh git@github.com:用户名/仓库名.git其中:
origin:默认使用 HTTPSorigin-ssh:需要时使用 SSH
如果 origin-ssh 已经存在,可执行:
git remote set-url origin-ssh git@github.com:用户名/仓库名.git六、日常使用方法
默认使用 HTTPS
git fetch origingit pull origin maingit push origin main临时使用 SSH
git fetch origin-sshgit pull origin-ssh maingit push origin-ssh main远程名称决定 Git 使用哪个地址。
七、设置 main 默认跟踪 HTTPS
远程已有 main 分支时:
git fetch origingit branch --set-upstream-to=origin/main main检查:
git branch -vv看到以下内容表示设置成功:
[origin/main]以后可以直接使用:
git pullgit push如果远程仓库为空,第一次推送使用:
git push -u origin main八、常见问题
1. 远程地址配置错误
直接修改:
git remote set-url origin https://github.com/用户名/正确仓库.git然后检查:
git remote -v单独执行 git fetch 通常不会修改当前工作区。
2. 推送出现 fetch first
说明远程分支中存在本地没有的提交:
git pull --rebase origin maingit push origin main不要轻易使用:
git push --force它可能覆盖远程提交。
3. 删除 SSH 备用远程
git remote remove origin-ssh这不会删除电脑中的 SSH 密钥。
九、最终检查
依次执行:
git remote -vgit remote get-url origingit branch -vv只要满足以下两点,当前项目就默认使用 HTTPS:
origin 地址以 https:// 开头main 分支跟踪 origin/main文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!