如何将代码轻松上传到 Gitee?Git 使用全攻略!

如何将代码轻松上传到 Gitee?Git 使用全攻略!

在开发过程中,代码托管平台是每个开发者的必备工具。无论你是刚接触版本控制的新手,还是已经拥有多项目管理经验的程序员,掌握如何将代码上传到 GiteeGitHub 都是必不可少的技能。

今天,我将带你一步步了解 如何将项目上传到 Gitee,并且在过程中顺便深入解析 GitGiteeGitHub 的关系,让你在使用这些工具时不再迷茫。


一、准备工作:Git 基础知识

首先,我们需要知道 Git 是什么,它是如何与 GiteeGitHub 配合使用的。

1.1 什么是 Git?

Git 是一款开源的分布式版本控制工具,旨在帮助程序员管理代码历史、团队协作以及代码合并。无论你是一个人开发项目,还是和团队一起协作,Git 都能帮助你:

  • 跟踪代码的更改
  • 回退到任何历史版本
  • 合并团队成员的修改

1.2 Git 与 Gitee 和 GitHub 的关系

  • Git:本地管理代码的版本控制工具。
  • Gitee:由国内码云公司推出的 Git 托管平台,类似 GitHub,但主打国内用户,提供了国内更快的访问速度,并支持私有仓库。
  • GitHub:全球知名的 Git 托管平台,适用于开源项目,许多大公司和开发者都将项目托管在 GitHub 上,广受开发者欢迎。

简单来说,Git 是工具,Gitee 和 GitHub 是平台,Git 负责本地管理,Gitee/GitHub 用来托管代码,方便多人协作和在线访问。


二、如何将代码上传到 Gitee

上传代码到 Gitee 主要分为以下三个步骤:创建仓库初始化 Git关联并推送代码。下面是详细的操作步骤:

2.1 第一步:在 Gitee 网站上创建远程仓库

  1. 登录/注册 Gitee 账号:首先,访问 gitee.com 并登录或注册一个账号。
  2. 新建仓库
    • 点击页面右上角的 + 号,选择 “新建仓库”
    • 填写仓库信息:
      • 仓库名称:例如 my-project
      • 仓库路径:通常自动生成,可根据需要修改。
      • 简介:可选,简要描述仓库内容。
      • 公开性
        • 公开:任何人都能访问,适合开源项目。
        • 私有:只有特定用户可以访问,适合私密项目。
      • 初始化选项:建议不要勾选 “添加 .gitignore”“许可证”“README”,因为如果本地已有代码,勾选这些会生成额外文件,导致推送时冲突。
  3. 创建仓库并复制仓库地址
    • 点击 “创建” 后,仓库页面会显示远程仓库的 URL。
    • 复制该地址。常见格式如下:
      • HTTPS 格式:https://gitee.com/你的用户名/你的仓库名.git
      • SSH 格式:[email protected]:你的用户名/你的仓库名.git(需要配置 SSH 密钥,新手建议使用 HTTPS 格式)。

2.2 第二步:在本地电脑准备项目

在本地进行初始化操作:

情况 A:全新项目(未使用 Git 管理)
  1. 进入项目文件夹:在终端或命令行中,进入你本地的项目目录:
cd /path/to/your/project 
  1. 初始化 Git 仓库
git init 
  1. 配置 Git 用户信息(如果是第一次使用 Git):
git config --global user.name "你的名字"    git config --global user.email "你的邮箱" 
  1. 将文件添加到暂存区
git add . 
  1. 提交到本地仓库
git commit -m "first commit: 初始化项目" 
情况 B:已有本地 Git 管理项目

如果你的项目已经用 Git 进行管理,只需跳过 git init 步骤,直接进入关联远程仓库步骤。


2.3 第三步:关联远程仓库并上传代码

  1. 添加远程仓库地址: 在本地项目文件夹中,执行以下命令,将本地仓库与 Gitee 仓库进行关联:
git remote add origin https://gitee.com/你的用户名/你的仓库名.git 

如果提示 fatal: remote origin already exists,你可以通过以下命令修改远程仓库地址:

git remote set-url origin https://gitee.com/你的用户名/你的仓库名.git 
  1. 验证远程仓库关联是否成功
git remote -v 
  1. 推送代码到 Gitee
git push -u origin main 
  • 注意:main 是新版 Git 默认的主分支名,旧版 Git 默认是 master,如果你的分支名称是 master,需要将命令中的 main 换成 master
  1. 输入 Gitee 账号密码
    • 如果你使用 HTTPS 地址,会提示输入 Gitee 用户名和密码。为了安全性,建议使用 个人访问令牌 代替密码。
    • 如果使用 SSH 地址,确保你已经配置了 SSH 密钥,若没有配置,可以选择使用 HTTPS。

2.4 第四步:验证上传结果

  1. 刷新 Gitee 仓库页面:你应该能看到你的项目代码和提交记录。
  2. 恭喜,你的项目成功上传到了 Gitee!

三、Git 与 Gitee、GitHub 的关系

Git 是一个开源的版本控制工具,而 Gitee 和 GitHub 是两个托管 Git 仓库的服务平台。它们的关系可以用以下几点来总结:

3.1 Git 是工具,Gitee 和 GitHub 是平台

  • Git:用于本地管理代码版本。
  • Gitee:国内代码托管平台,提供更快的访问速度,适合中国用户,支持私有仓库,适用于公司或个人隐私项目。
  • GitHub:国际上最受欢迎的代码托管平台,开源项目众多,拥有广泛的社区支持,适合全球开发者。

3.2 Gitee 和 GitHub 的异同

  • 相同点
    • 都是 Git 仓库托管平台。
    • 都支持公开和私有仓库。
    • 都支持项目管理、团队协作和自动化功能。
  • 不同点
    • Gitee:主打国内市场,访问速度快,支持更多的国内开发者习惯。
    • GitHub:全球最大代码托管平台,广泛支持开源项目,拥有庞大的开发者社区。

四、常见问题与解决方案

4.1 推送失败:failed to push some refs

通常是因为在 Gitee 创建仓库时勾选了“初始化 README”,导致远程仓库已有提交记录与本地冲突。解决方法:

  1. 拉取远程代码并合并:
git pull origin main --allow-unrelated-histories 
  1. 解决冲突后,再推送:
git push -u origin main 

4.2 如何忽略某些文件?

在项目根目录创建 .gitignore 文件,写入你希望 Git 忽略的文件或文件夹。例如:

node_modules/ *.log .env .DS_Store 

五、总结

掌握 Git 和 Gitee 的基本操作,能大大提高开发效率和代码管理能力。无论是个人项目还是团队合作,版本控制和代码托管都是不可或缺的工具。

按照本文的步骤,你就能轻松将项目上传到 Gitee,也能更好地理解 Git 与 Gitee/GitHub 的关系。如果你遇到任何问题,随时欢迎提问!

Read more

Flutter 三方库 actors 鸿蒙超算平台底层架构适配真知:搭建轻量级并发处理结构强力引入无状态内存安全的传递协议,全景释放超密集系统多核全量调配效力-适配鸿蒙 HarmonyOS ohos

Flutter 三方库 actors 鸿蒙超算平台底层架构适配真知:搭建轻量级并发处理结构强力引入无状态内存安全的传递协议,全景释放超密集系统多核全量调配效力-适配鸿蒙 HarmonyOS ohos

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 actors 鸿蒙超算平台底层架构适配真知:搭建轻量级并发处理结构强力引入无状态内存安全的传递协议,全景释放超密集系统多核全量调配效力 在高性能并发编程中,共享内存锁竞争是导致系统卡顿的主要诱因。actors 库采用了经典的 Actor 语言模型(类似 Erlang/Akka),为 Dart 开发者提供了一种无锁的异步任务处理方案。本文将详细探讨该库在 OpenHarmony 上的适配与应用实践。 前言 什么是 Actor 模式?在这种模式下,每个 Actor 都是一个独立、自治的逻辑单元,它们之间只能通过“消息传递”进行通信,而不共享任何内部状态。在鸿蒙这个强调极速流畅和多线程(TaskPool)调度的系统中,actors 库能显著提升应用处理大规模计算密集型任务时的稳定性。 一、原理解析 1.1 基础概念 每一个

By Ne0inhk
RUST:异步代码的测试与调试艺术

RUST:异步代码的测试与调试艺术

RUST:异步代码的测试与调试艺术 一、异步测试的本质与难点 1.1 异步测试与同步测试的区别 💡在Rust同步编程中,测试通常是顺序执行的,每个测试函数会阻塞线程直到完成,结果是确定的。而异步测试的结果可能受到任务调度、网络延迟、数据库连接等因素的影响,时序性和状态管理更加复杂。 同步测试示例: #[cfg(test)]modtests{#[test]fntest_add(){assert_eq!(1+1,2);}} 异步测试示例(使用Tokio测试宏): #[cfg(test)]modtests{usetokio::time::sleep;usestd::time::Duration;#[tokio::test]asyncfntest_async_add(){sleep(Duration::from_millis(100)).await;assert_

By Ne0inhk
运行openclaw gateway install时出现Gateway install failed: Error: schtasks create failed的解决方案

运行openclaw gateway install时出现Gateway install failed: Error: schtasks create failed的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为ZEEKLOG博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的知识进行总结与归纳,不仅形成深入且独到的理解,而且能够帮助新手快速入门。 本文主要介绍了运行openclaw gateway install时出现Gateway install failed: Error: schtasks create failed的解决方案,希望能对学习和使用openclaw的同学们有所帮助。 文章目录 * 1. 问题描述 * 2. 解决方案 1. 问题描述 今天在运行openclaw gateway install命令时,却出现了Gateway install failed: Error: schtasks create failed的错误提示,具体报错信息如下图所示: 在经过了亲身的实践后,终于找到了解决问题的方案,最终将逐步的操作过程总结如下。希望能对遇到同样b

By Ne0inhk
五分钟理解Rust的核心概念:所有权Rust

五分钟理解Rust的核心概念:所有权Rust

欢迎来到Rust的世界。你可能听说过Rust以其惊人的运行速度、强大的内存安全保证而闻名,甚至连续多年被评为“最受开发者喜爱的编程语言”。而支撑起这一切荣耀的基石,正是我们今天要深入探讨的核心概念——所有权(Ownership)。 对于许多刚从Java、Python、C++等语言转来的开发者来说,“所有权”就像一个神秘的守门人,它严格、挑剔,甚至有点不近人情,常常用编译错误将你拒之门外。但请相信我,一旦你理解了它的工作原理和设计哲学,这位守门人就会变成你最忠诚、最强大的守护骑士。 这篇文章的目的,就是带你穿越迷雾,用最详尽的解析和最生动的比喻,让你不仅“知道”所有权是什么,更能“理解”它为何如此设计,并最终“掌握”如何与它和谐共处。准备好了吗?让我们开始这场精彩的思维探险吧! 第一章:编程语言的“内存难题” —— Rust给出的答案 在程序的世界里,管理内存(Memory Management)是一件天大的事。它就像一个国家的财政管理,管得好,国家繁荣昌盛(程序高效稳定)

By Ne0inhk