【远程仓库】- 上传本地项目到远程仓库Gitee(码云)指南

在Windows系统下,通过SSH协议 将本地项目上传到Gitee远程仓库 https://gitee.com/javatoai/car_price_prediction_cloud(需要提前建好新仓库),请按照以下步骤操作(全程使用Git Bash或CMD均可,推荐Git Bash):

前提准备

  1. 确认Git已安装
    打开CMD/Git Bash,输入 git --version,若显示版本号则已安装;未安装则下载:Git官网
  2. 确认SSH密钥已配置到Gitee (核心!SSH协议依赖密钥):
    • 检查本地SSH密钥:在Git Bash中输入 cd ~/.ssh && ls,若能看到 id_rsa(私钥)和 id_rsa.pub(公钥),说明已生成;

    • 若未生成密钥,执行:

      bash 复制代码
      ssh-keygen -t rsa -C "你的Gitee绑定邮箱"

      全程按回车(无需设置密码),密钥会生成在 C:\Users\你的用户名\.ssh 目录下。

    • 复制公钥内容:

      bash 复制代码
      cat ~/.ssh/id_rsa.pub

      打开Gitee → 个人设置 → SSH公钥 → 粘贴公钥内容 → 保存。

    • 验证SSH连接:

      bash 复制代码
      ssh -T git@gitee.com

      若提示 Hi XXX! You've successfully authenticated,说明配置成功。

核心上传步骤

步骤1:进入本地项目目录

打开Git Bash/CMD,切换到你的项目根目录(示例):

bash 复制代码
cd D:\projects\car_price_prediction_cloud  # 替换为你的实际路径
步骤2:初始化本地Git仓库(首次上传需执行)

若项目还未关联Git仓库,执行初始化:

bash 复制代码
git init
步骤3:关联Gitee远程仓库(SSH地址)

注意:Gitee仓库的SSH地址不是HTTPS地址,需先获取:

执行关联命令:

bash 复制代码
# 关联远程仓库,命名为origin(默认名称)
git remote add origin git@gitee.com:javatoai/car_price_prediction_cloud.git

# 若之前已关联过origin,先删除旧关联:git remote rm origin,再重新关联
步骤4:添加本地文件到暂存区
bash 复制代码
git add .  # 上传所有文件(推荐)
# 或指定文件:git add 文件名/文件夹名
步骤5:提交到本地仓库
bash 复制代码
git commit -m "首次提交:汽车价格预测项目初始化"  # 替换为你的提交备注,必填
步骤6:推送到Gitee远程仓库
情况1:远程仓库为空(无任何文件)

直接推送(默认分支为mainmaster,根据Gitee设置):

bash 复制代码
# 首次推送需加 -u 绑定分支,后续可直接 git push
git push -u origin main  # 若Gitee默认分支是master,替换为 git push -u origin master
情况2:远程仓库已有文件(如README.md

先拉取远程仓库内容合并,再推送(避免冲突):

bash 复制代码
# 拉取远程分支内容
git pull origin main --allow-unrelated-histories  # 允许无关联历史合并(首次合并可能需要)
git pull origin main (报错可以尝试)
# 若出现冲突,手动解决冲突后,重新执行 git add . 和 git commit -m "解决冲突"
# 再推送
git push -u origin main

验证上传结果

打开Gitee仓库页面,刷新后即可看到本地项目文件已上传。

常见问题解决

  1. 推送失败:fatal: remote origin already exists

    原因:已关联过origin,执行 git remote rm origin 删除旧关联,再重新执行 git remote add origin ...

  2. SSH连接超时/拒绝

    • 检查网络,确保未被防火墙拦截;
    • 确认Gitee的SSH公钥未过期,且本地私钥(id_rsa)未被修改/删除;
    • Windows下若提示 Permissions for 'id_rsa' are too open,需修改私钥权限:
      右键id_rsa文件 → 属性 → 安全 → 高级 → 禁用继承 → 删除所有用户(仅保留当前用户)→ 应用。
  3. 分支名称不匹配

    查看Gitee仓库默认分支:仓库页面 → 管理 → 分支管理 → 查看默认分支,推送时对应分支名称即可。

首次合并冲突

git bash 页面出现 Please enter a commit message to explain why this merge is necessary, # especially if it merges an updated upstream into a topic branch. # # Lines starting with '#' will be ignored, and an empty message aborts # the commit.

这个提示是 Git 自动触发了合并提交的信息编辑环节 (因为你执行了git pull --allow-unrelated-histories,Git 需要你为这次「本地与远程分支的合并」填写一条提交说明),并非报错,按以下步骤操作即可(默认编辑器是 Vim,新手重点看按键操作):

核心操作步骤(Vim 编辑器)

  1. (可选)输入合并说明

    直接在光标处输入你想写的合并原因(比如 merge remote master branch: sync remote README.md),不用管以 # 开头的注释行(这些会被 Git 忽略)。

    ✅ 建议填写:方便后续回溯这次合并做了什么,比如简单写 merge origin/master to local master 即可。

  2. 保存并退出(关键!)

    Vim 编辑器的操作逻辑:先按 Esc 键退出「输入模式」,再输入指令:

    • 输入 :wq(含义:w=保存,q=退出);
    • 按回车键(Enter)确认。

    执行完后,Git 会完成合并提交,你就可以继续执行 git push -u origin master 了。

补充场景操作

场景1:不想写说明,直接用默认信息保存

不用输入任何内容,直接按 Esc → 输入 :wq → 回车即可(Git 会用默认的合并信息提交)。

场景2:放弃这次合并(不想继续了)

如果后悔合并,想退出并取消这次操作:

Esc → 输入 :q!(含义:q=退出,! = 强制放弃修改)→ 回车。

⚠️ 注意:这会取消本次 git pull 的合并操作,需要重新评估是否要合并。

新手友好:避免下次弹出这个编辑器(可选)

如果觉得 Vim 操作麻烦,可以把 Git 默认编辑器改成记事本(Windows 系统):

在 Git Bash 中执行:

bash 复制代码
git config --global core.editor notepad

之后再遇到需要填写提交信息的场景,会自动弹出记事本,编辑后保存关闭即可,更符合 Windows 操作习惯。

操作完验证

保存退出后,Git 会输出类似以下内容,说明合并提交成功:

复制代码
[master 1234567] merge origin/master to local master

此时再执行 git push -u origin master 就能正常推送了。

后续更新代码(日常操作)

若本地代码修改后,只需执行:

bash 复制代码
git add .
git commit -m "修改:修复XX问题"
git push  # 无需再加 -u,已绑定分支
相关推荐
Java后端的Ai之路3 小时前
【远程仓库】- 关于Gitee(码云)许可证详细说明
gitee·远程仓库·许可证
QH_ShareHub4 小时前
SSH 隧道:如何让本机借用服务器网络
运维·ssh·php
m0_738120724 小时前
渗透测试——靶机DC-5详细渗透getshell过程
网络·安全·web安全·ssh·php
bj_zhb4 小时前
git reflog用法
大数据·linux·git·github
Autumn72994 小时前
超算 HPC使用 (集群1):SSH免密登录
运维·ssh
Java后端的Ai之路4 小时前
【AI编程工具】-关闭Trae IDE的Git自动Pull开关
ide·git·ai编程·trae
有谁看见我的剑了?4 小时前
Linux ssh连接超时时间学习
linux·学习·ssh
梅梅绵绵冰16 小时前
Git分支管理
git
( •̀∀•́ )92017 小时前
GitHub Actions SSH 部署密钥
运维·ssh·github