Git - 详解 创建一个新仓库 / 推送现有文件夹 / 推送现有的 Git 仓库 到私有Gitlab

news2024/11/26 0:34:01

文章目录

  • 【推送现有文件夹】详细步骤
  • 指令说明
    • Git 全局设置
      • 设置Git全局用户名
      • 设置Git全局电子邮件地址
    • 推送现有文件夹
      • 1. 进入现有文件夹
      • 2. 初始化Git仓库并设置初始分支为main
      • 3. 添加远程仓库
      • 4. 添加所有文件到暂存区
      • 5. 提交更改
      • 6. 推送代码到远程仓库并设置上游分支
    • 创建一个新仓库
      • 1. 克隆现有仓库
      • 2. 进入克隆的仓库目录
      • 3. 创建并切换到新分支
      • 4. 创建一个新的README文件
      • 5. 添加文件到暂存区
      • 6. 提交更改
      • 7. 推送更改到远程仓库并设置上游分支
    • 推送现有的 Git 仓库
      • 1. 进入现有的Git仓库
      • 2. 重命名现有的远程仓库
      • 3. 添加新的远程仓库
      • 4. 推送所有分支到新的远程仓库
      • 5. 推送所有标签到新的远程仓库

在这里插入图片描述


【推送现有文件夹】详细步骤

我这里的需求为 将本地代码 推送到 新建的Gitlab项目,如下为操作截图 , follow即可
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

点击【创建项目】

在这里插入图片描述


指令说明

Git 全局设置

设置Git全局用户名

git config --global user.name "artisan"
  • git config命令用于设置Git的配置选项。
  • --global选项指定该配置为全局配置,即对所有Git项目生效。如果省略此选项,该配置只对当前项目有效。
  • user.name选项用于设置提交代码时所使用的用户名。
  • "artisan"是你希望在提交历史中显示的用户名。

设置Git全局电子邮件地址

git config --global user.email "xxx@xxx.com"
  • git config命令用于设置Git的配置选项。
  • --global选项指定该配置为全局配置,即对所有Git项目生效。如果省略此选项,该配置只对当前项目有效。
  • user.email选项用于设置提交代码时所使用的电子邮件地址。
  • "xxx@xxx.com"是你希望在提交历史中显示的电子邮件地址。

推送现有文件夹

#推送现有文件夹
cd existing_folder
git init --initial-branch=main
git remote add origin http://gitlab.example.com/amazing/backend/ssss.git
git add .
git commit -m "Initial commit"
git push --set-upstream origin main
  • 进入了现有项目文件夹。
  • 初始化了Git仓库并设置了默认分支为main
  • 添加了远程仓库地址。
  • 将所有文件添加到暂存区。
  • 提交了更改并进行了初次提交。
  • 推送了本地仓库的更改到远程仓库,并设置了上游分支。

1. 进入现有文件夹

cd existing_folder
  • cd命令用于更改当前目录。
  • existing_folder是你本地项目的文件夹名称,进入该文件夹后,后续所有Git操作将在这个目录中进行。

2. 初始化Git仓库并设置初始分支为main

git init --initial-branch=main
  • git init命令用于初始化一个新的Git仓库。
  • --initial-branch=main选项指定了初始化仓库时的默认分支名称为main,而不是Git默认的master。这是为了与当前业界规范一致(main已逐渐取代master作为默认分支名称)。

3. 添加远程仓库

git remote add origin http://gitlab.example.com/amazing/backend/ssss.git
  • git remote add命令用于添加一个远程仓库。
  • origin是这个远程仓库的名字,这是一个常见的命名惯例,表示这个远程仓库是本地仓库的主要版本。
  • http://gitlab.example.com/amazing/backend/ssss.git是远程仓库的URL,表示你将在Gitlab上存储代码的位置。

4. 添加所有文件到暂存区

git add .
  • git add .命令用于将当前目录下的所有更改(包括新文件、修改过的文件和删除的文件)添加到Git的暂存区。暂存区是Git用于存储即将提交的更改的区域。

5. 提交更改

git commit -m "Initial commit"
  • git commit命令用于将暂存区的更改提交到本地仓库。
  • -m "Initial commit"选项用于提供提交信息,这里提交信息为"Initial commit",表示这是该仓库的第一次提交。

6. 推送代码到远程仓库并设置上游分支

git push --set-upstream origin main
  • git push命令用于将本地仓库的更改推送到远程仓库。
  • --set-upstream origin main选项设置了main分支的上游分支为远程仓库的main分支。这样,之后可以只用git pushgit pull命令来推送和拉取main分支的更改,而不需要每次都指定远程仓库和分支名称。

创建一个新仓库

git clone http://gitlab.example.com/amazing/backend/ssss.git
cd ssss
git switch --create main
touch README.md
git add README.md
git commit -m "add README"
git push --set-upstream origin main
  • 从远程仓库克隆了一个新的本地仓库。
  • 进入了克隆的仓库目录。
  • 创建并切换到了一个新的main分支。
  • 创建了一个新的README.md文件。
  • README.md文件添加到了暂存区。
  • 提交了更改,添加了提交信息。
  • 将本地仓库的更改推送到了远程仓库,并设置了上游分支。

1. 克隆现有仓库

git clone http://gitlab.example.com/amazing/backend/ssss.git
  • git clone命令用于从远程仓库克隆一个新的本地仓库副本。
  • http://gitlab.example.com/amazing/backend/ssss.git是远程仓库的URL,表示你将从Gitlab上克隆该仓库到本地。

2. 进入克隆的仓库目录

cd ssss
  • cd ssss命令用于进入刚刚克隆的仓库目录ssss。在这个目录中进行后续的Git操作。

3. 创建并切换到新分支

git switch --create main
  • git switch命令用于切换分支。
  • --create main选项表示创建并切换到一个名为main的新分支。

4. 创建一个新的README文件

touch README.md
  • touch README.md命令用于在当前目录中创建一个名为README.md的空文件。

5. 添加文件到暂存区

git add README.md
  • git add README.md命令用于将新创建的README.md文件添加到Git的暂存区。暂存区是Git用于存储即将提交的更改的区域。

6. 提交更改

git commit -m "add README"
  • git commit命令用于将暂存区的更改提交到本地仓库。
  • -m "add README"选项用于提供提交信息,这里提交信息为"add README",描述了提交的目的和内容。

7. 推送更改到远程仓库并设置上游分支

git push --set-upstream origin main
  • git push命令用于将本地仓库的更改推送到远程仓库。
  • --set-upstream origin main选项设置了main分支的上游分支为远程仓库的main分支。这样,之后你可以只用git pushgit pull命令来推送和拉取main分支的更改,而不需要每次都指定远程仓库和分支名称。

推送现有的 Git 仓库

cd existing_repo
git remote rename origin old-origin
git remote add origin http://gitlab.example.com/amazing/backend/ssss.git
git push --set-upstream origin --all
git push --set-upstream origin --tags
  • 进入了现有的Git仓库目录。
  • 重命名了现有的远程仓库为old-origin,以避免命名冲突。
  • 添加了一个新的远程仓库origin。
  • 推送了所有本地分支到新的远程仓库。
  • 推送了所有本地标签到新的远程仓库。

1. 进入现有的Git仓库

cd existing_repo
  • cd命令用于更改当前目录。
  • existing_repo是你本地的现有Git仓库目录,进入该目录后,后续所有Git操作将在这个目录中进行。

2. 重命名现有的远程仓库

git remote rename origin old-origin
  • git remote rename命令用于重命名现有的远程仓库。
  • origin是当前远程仓库的名称。
  • old-origin是新的名称,这一步是为了避免与新的远程仓库命名冲突,并保留旧的远程仓库地址以备不时之需。

3. 添加新的远程仓库

git remote add origin http://gitlab.example.com/amazing/backend/ssss.git
  • git remote add命令用于添加一个新的远程仓库。
  • origin是新远程仓库的名称,这里沿用常见的命名惯例,表示这是你本地仓库的主要远程版本。
  • http://gitlab.example.com/amazing/backend/ssss.git是新的远程仓库的URL,表示你将在Gitlab上存储代码的位置。

4. 推送所有分支到新的远程仓库

git push --set-upstream origin --all
  • git push命令用于将本地仓库的更改推送到远程仓库。
  • --set-upstream origin选项设置上游分支为新远程仓库的对应分支。
  • --all选项表示将所有本地分支推送到远程仓库。

5. 推送所有标签到新的远程仓库

git push --set-upstream origin --tags
  • git push命令用于将本地仓库的更改推送到远程仓库。
  • --set-upstream origin选项设置上游分支为新远程仓库的对应分支。
  • --tags选项表示将所有本地标签推送到远程仓库。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1797230.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

麦克风什么牌子的音质效果好?揭秘最好的无线麦克风品牌排行

最近几年可以说全民短视频也不为过,越来越多人开始通过用手机拍摄短视频、vlog记录自己的生活,而领夹式无线麦克风的需求也开始激增。毕竟一个好的视频除了要有巧妙的构思和清晰稳定的拍摄外,干净的声音也是必不可少的部分。 要知道短视频归根…

pytorch构建模型训练数据集

pytorch构建模型训练数据集 pytorch构建模型训练数据集1.AlexNet:1.1.导入必要的库:1.2.数据预处理和增强:1.3.加载数据集:1.4.划分测试集和训练集:1.5.创建数据加载器:1.6.加载AlexNet模型:1.7.修改模型以…

【Python报错】已解决AttributeError: list object has no attribute ’shape‘ ( Solved )

解决Python报错:AttributeError: ‘list’ object has no attribute ‘shape’ (Solved) 在Python中,AttributeError表明你试图访问的对象没有你请求的属性或方法。如果你遇到了AttributeError: list object has no attribute shape的错误,这…

OpenMV学习笔记3——画图函数汇总

画图,即在摄像头对应位置画出图形,对于需要反馈信息的程序来说很直观。就如上一篇文章颜色识别当中的例子一样,我们在识别出的色块上画出矩形方框,并在中间标出十字,可以直观的看到OpenMV现在识别出的色块。 目录 一…

【机器学习】Python与深度学习的完美结合——深度学习在医学影像诊断中的惊人表现

🔥 个人主页:空白诗 文章目录 一、引言二、深度学习在医学影像诊断中的突破1. 技术原理2. 实际应用3. 性能表现 三、深度学习在医学影像诊断中的惊人表现1. 提高疾病诊断准确率2. 辅助制定治疗方案 四、深度学习对医疗行业的影响和推动作用 一、引言 随着…

冯喜运:6.7今日外汇黄金原油走势分析及日内操作策略

【黄金消息面分析】:美国初请失业金人数超预期,市场对美联储9月降息预期升温,全球降息潮起,黄金市场受支撑。北京时间本周四,美国劳工部公布的数据显示,截至6月1日当周初请失业金人数增加至22.9万人&#x…

【ArcGIS微课1000例】0119:TIFF与grid格式互相转换

文章目录 一、任务描述二、tiff转grid三、grid转tif四、注意事项一、任务描述 地理栅格数据常用TIFF格式和GRID格式进行存储。TIFF格式的栅格数据常以单文件形式存储,不仅存储有R、G、B三波段的像素值,还保存有地理坐标信息。GRID格式的栅格数据常以多文件的形式进行存储,且…

网络原理——HTTP/HTTPS ---- HTTPS

T04BF 👋专栏: 算法|JAVA|MySQL|C语言 🫵 今天你敲代码了吗 目录 HTTPS加密与解密HTTPS的工作流程使用对称密钥来加密使用非对称密钥 来对 对称密钥进行加密第三方公证总结 HTTPS https本质上就是在http的基础之上 增加了加密层,抛开加密层之后,剩下的部…

【Python】实现极致:克服PyInstaller打包挑战,解决libpython3.10.so.1.0库丢失难题

【Python】实现极致:克服PyInstaller打包挑战,解决libpython3.10.so.1.0库丢失难题 大家好 我是寸铁👊 总结了一篇【Python】实现极致:克服PyInstaller打包挑战,解决libpython3.10.so.1.0库丢失难题✨ 喜欢的小伙伴可以…

Git的概念

Git 一些概念 **工作区:**电脑上你能看到的目录 **版本库:**工作区的隐藏目录.git。含 暂存区:git add后但未git commit的文件修改被添加到暂存区本地分支:git commit后,但未git push,即把暂存区的所有…

【云原生】kubernetes中secret原理详解与应用实战

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

51单片机-实机演示(LED点阵)

目录 前言: 一.线位置 二.扩展 三.总结 前言: 这是一篇关于51单片机实机LED点阵的插线图和代码说明.另外还有一篇我写的仿真的连接在这:http://t.csdnimg.cn/ZNLCl,欢迎大家的点赞,评论,关注. 一.线位置 接线实机图. 引脚位置注意: 1. *-* P00->RE8 P01->RE7 …

JavaWeb2-Vue

Vue 前端框架,免除原生JS中的DOM操作简化书写 (以前学过又忘了,现在才知道原来vue是前端的) 基于MVVM思想(model-view -viewModel)实现数据双向绑定 model是数据模型 view负责数据展示 即DOM 中间这个负责…

EitbaseEX香港启航,携手OpenAI和路透社开发AI分析技术

全球知名的加密货币交易平台EitbaseEX宣布正式入驻香港,并改名为EitbaseEX。这一举措标志着EitbaseEX在亚洲市场的重要布局,旨在为香港及周边地区的用户提供安全、合规且高效的数字货币交易服务。与此同时,EitbaseEX还宣布与OpenAI和路透社展…

怎么找抖音视频素材?下载抖音的素材视频网站分享给你

在这个视觉印象至关重要的时代,选用高质量的视频素材对于制作抖音视频来说是关键。如果你正在寻找适合的视频素材来丰富你的抖音创作,以下这份详细的视频素材网站指南将帮助你迈出第一步。 蛙学府网 蛙学府网提供了丰富多样的视频素材,包括动…

如何新建并导入数据集并智能标注

如何新建并导入数据集并智能标注 智能标注 提交等待即可,智能标注结束会有难例确认,这个可以检查一下,检查完毕就自动保存标注就可以了

搭贝请假审批应用

在现代企业管理中,高效的请假审批系统至关重要。搭贝的请假审批应用通过简化员工的请假流程、提升管理层的工作效率,确保企业运作的连贯性和透明度。本文将介绍搭贝请假审批应用的主要功能模块:请假分析看板、请假申请审批流、请假类型维护和…

什么是振动电阻式传感器测量模块RM501/502

什么是振动电阻式传感器测量模块RM501/502 基本概念 差动电阻式传感器: ( Elastic wire sensor)是以两个电阻的比值来反映被测物理量的传感器。由于是由卡尔逊教授在 1932 年研发成功,所以也称为卡尔逊式传感器。 因为采用的是两…

YOLOv10涨点改进:原创自研 | GhostNet融合 | 从廉价的操作中生成更多的特征图

文章目录 GhostNet理论基础实验部分改进方案新增yolov10s-ghost.yaml文件代码运行GhostNet理论基础 Ghost Module是一种模型压缩的方法,即在保证网络精度的同时减少网络参数和计算量,从而提升计算速度(speed),降低延时(latency)。Ghost 模块可以代替现有卷积网络中的每…

Glance:支持RSS的自托管仪表板

本文软件由网友 P家单推人 推荐 什么是 Glance ? Glance 是一个自托管仪表板,可以显示实时 RSS 订阅、Reddit 子版块帖子、天气、书签、特定频道的最新 YouTube 视频、日历、股票信息、iframe、twitch 频道和热门游戏、GitHub 发布和网站监控等。 因为是…