极狐GitLab 使用指南:如何使用极狐GitLab 进行第一次 git commit

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。

进行第一次 Git 提交

本教程包含一些关于 Git 的工作原理,引导您完成创建自己的项目、编辑文件以及从命令行将更改提交到 Git 仓库的步骤。

完成后,您将拥有一个可以练习使用 Git 的项目。

您需要什么

在您开始之前:

  • 本地机器上需要已经安装好 Git。
  • 确保您可以登录极狐GitLab 实例。如果您的组织没有极狐GitLab,请在 JihuLab.com 上创建一个账户。
  • 创建 SSH 密钥并将它们添加到极狐GitLab。SSH 密钥是您在计算机和极狐GitLab 之间安全通信的方式。

什么是 Git?

在我们进入步骤之前,让我们回顾一些基本的 Git 概念。

Git 是一个版本控制系统。它用于跟踪文件的更改。

您将文件(如代码或文档)存储在 Git 仓库 中。当您想要编辑文件时,您可以将仓库 克隆 到您的计算机,进行更改,然后将更改 推送 回仓库。在极狐GitLab 中,Git 仓库位于 项目 中。

每次推送更改时,Git 都会将其记录为唯一的 提交。这些提交构成了文件更改的时间和方式以及更改者的历史记录。

Repository commit history
Author: Sam
Date: 4 Jan at 10AM
Commit message: Removed outdated marketing information
Commit ID: aabb1122
Author: Alex
Date: 3 Jan at 1PM
Commit message: Added sales figures for January
Commit ID: 123abc12
Author: Zhang
Date: 5 Jan at 3PM
Commit message: Added a new 'Invoices' file
Commit ID: ddee4455

当您在 Git 仓库中工作时,您在 分支 中工作。默认情况下,仓库的内容位于默认分支中。要进行更改:

  1. 创建自己的分支,即创建时默认分支的快照。
  2. 进行更改并将其推送到您的分支。每次推送都会创建一个提交。
  3. 准备好后,合并 您的分支到默认分支。
My branch
Default branch
1. Create my branch
2. Add my commit
2. Add my commit
3. Merge my branch to default
Commit
Commit
Commit
Commit
Commit
Commit
Commit

操作步骤

以下是我们将要做的事情的概述:

  1. 创建示例项目。
  2. 克隆仓库。
  3. 创建分支并进行更改。
  4. 提交并推送您的更改。
  5. 合并您的更改。
  6. 在极狐GitLab 中查看您的更改。

创建示例项目

首先,在极狐GitLab 中创建一个示例项目。

  1. 在极狐GitLab 中,在左侧边栏中,选择 搜索或转到 > 查看我的所有项目 > 新建项目
  2. 选择 创建空白项目
  3. 对于 项目名称,输入 My sample project。为您生成项目标识串。此标识串是您可以在创建项目后用来访问项目的 URL。
  4. 确保选中 使用自述文件初始化仓库,其它字段取决于您。
  5. 选择 创建项目

克隆仓库

现在您可以克隆项目中的仓库。克隆 仓库意味着您正在计算机上创建副本,或者在您想要存储和使用文件的任何地方创建副本。

  1. 在您的项目页面上,选择克隆。复制 使用 SSH 克隆 的 URL。

    在这里插入图片描述

  2. 在您的计算机上打开一个终端,然后转到您要克隆文件的目录。

  3. 输入 git clone 并粘贴 URL:

    git clone git@gitlab.com:gitlab-example/my-sample-project.git
    
  4. 进入目录:

    cd my-sample-project
    
  5. 默认情况下,您已经克隆了仓库的默认分支。通常这个分支是 main。为了确认,获取默认分支的名称:

    git branch
    

    您所在的分支标有星号。
    按键盘上的 Q 返回主终端窗口。

创建分支并进行更改

现在您有了仓库的副本,创建自己的分支,以便您可以独立处理更改。

  1. 创建一个名为 example-tutorial-branch 的新分支。

    git checkout -b example-tutorial-branch
    
  2. 在 Visual Studio Code、Sublime、vi 或其它任何文本编辑器中,打开 README.md 文件并添加以下文本:

    Hello world! I'm using Git!
    
  3. 保存文件。

  4. Git 会跟踪更改的文件。要确认哪些文件已更改,请获取状态。

    git status
    

    您应该得到类似于以下内容的输出:

    On branch example-tutorial-branch
    Changes not staged for commit:
    (use "git add <file>..." to update what will be committed)
    (use "git restore <file>..." to discard changes in working directory)
    modified:   README.md
    
    no changes added to commit (use "git add" and/or "git commit -a")
    

提交并推送您的更改

您已对仓库中的文件进行了更改。现在是时候通过首次提交来记录这些更改了。

  1. README.md 文件添加到 暂存 区域。暂存区是您在提交文件之前放置文件的地方。

    git add README.md
    
  2. 确认文件已暂存:

    git status
    

    您应该得到类似于以下内容的输出,并且文件名应该是绿色文本。

    On branch example-tutorial-branch
    Changes to be committed:
    (use "git restore --staged <file>..." to unstage)
    modified:   README.md
    
  3. 现在提交暂存文件,并包含一条描述您所做更改的消息。确保用双引号 (") 将消息括起来。

    git commit -m "I added text to the README file"
    
  4. 更改已提交到您的分支,但您的分支及其提交仍然仅在您的计算机上可用。还没有其它人可以访问它们。将您的分支推送到极狐GitLab:

    git push origin example-tutorial-branch
    

您的分支现在在极狐GitLab 上可用,并且对您项目中的其他用户可见。

在这里插入图片描述

合并您的更改

现在您已准备好将您的 example-tutorial-branch 分支中的更改合并到默认分支(main)。

  1. 查看仓库的默认分支。

    git checkout main
    
  2. 将您的分支合并到默认分支中。

    git merge example-tutorial-branch
    
  3. 推送更改。

    git push
    

NOTE:
对于本教程,您将分支直接合并到仓库的默认分支。在极狐GitLab 中,您通常使用合并请求来合并您的分支。

在极狐GitLab 中查看您的更改

您更新了分支中的 README.md 文件,并将这些更改合并到了 main 分支中。

让我们查看 UI 并确认您的更改。转到您的项目。

  • 向下滚动并查看 README.md 文件的内容。您的更改应该是可见的。
  • README.md 文件上方,查看 最后提交 列中的文本。您的提交消息显示在此列中:
    在这里插入图片描述

现在您可以返回命令行并切换回您的个人分支(git checkout example-tutorial-branch)。您可以继续更新文件或创建新文件。键入 git status,查看更改的状态并放弃提交。

如果您没有成功完成,不要担心。Git 中的所有内容都可以恢复,如果您发现无法恢复,您可以随时创建一个新分支并重新开始。

更多关于极狐GitLab 的最佳实践,可以搜索关注公众号【极狐GitLab】或者登录极狐GitLab 官网进行学习。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Escalate_Linux-环境变量劫持提权(5)

环境变量劫持提权 在Shll输入命令时&#xff0c;Shel会按PAH环境变量中的路径依次搜索命令&#xff0c;若是存在同名的命令&#xff0c;则执行最先找到的&#xff0c;若是PATH中加入了当前目录&#xff0c;也就是“”这个符号&#xff0c;则可能会被黑客利用&#xff0c;例如在…

RM电控讲义【HAL库篇】(二)

8080并口模式是一种常见的计算机接口模式&#xff0c;主要用于LCD&#xff08;液晶显示屏&#xff09;模块。 在8080并口模式中&#xff0c;通信端口包括多种信号线&#xff0c;用于实现数据的读写和控制功能。主要的信号线包括&#xff1a; CS&#xff08;片选信号&#xff…

ArcgisForJS如何将ArcGIS Server发布的点要素渲染为热力图?

文章目录 0.引言1.ArcGIS创建点要素2.ArcGIS Server发布点要素3.ArcgisForJS将ArcGIS创建的点要素渲染为热力图 0.引言 ArcGIS For JS 是一个强大的地理信息系统&#xff08;GIS&#xff09;工具&#xff0c;它允许开发者使用 JavaScript 语言来创建各种 GIS 应用。ArcGIS Ser…

Java——防止SQL注入的几种策略

一、什么是SQL注入 SQL注入&#xff08;SQL Injection&#xff09;是一种常见的网络安全漏洞&#xff0c;它允许攻击者通过操纵应用程序的输入来执行恶意的SQL查询。这种漏洞发生在应用程序没有正确验证、过滤或转义用户提供的输入数据时。攻击者可以利用这个漏洞来执行未经授…

Flask基础学习3

参考视频&#xff1a;41-【实战】答案列表的渲染_哔哩哔哩_bilibili flask 实现发送短信功能 pip install flask-mail # 安装依赖 我这里用登录的网易邮箱获取的授权码&#xff08;登录QQ邮箱的授权码总是断开收不到邮件&#xff09;&#xff0c; # config # config mail MAI…

Python入门必学:单引号、双引号与三引号的差异与应用

Python入门必学&#xff1a;单引号、双引号与三引号的差异与应用 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程 &#x1f448; 希望得…

HC595级联原理及实例 - STM32

74HC595的最重要的功能就是&#xff1a;串行输入&#xff0c;并行输出。其次&#xff0c;74HC595里面有2个8位寄存器&#xff1a;移位寄存器、存储寄存器。74HC595的数据来源只有一个口&#xff0c;一次只能输入一个位&#xff0c;那么连续输入8次&#xff0c;就可以积攒为一个…

MiKTeX安装后,Latex编译后PDF无法预览,是灰色的

解决方式删掉编译器就可以&#xff0c; 即删掉MiKTeX MiKTeX安装后会将编译器默认修改为MiKTeX&#xff0c;这个时候会显示报错&#xff0c;简单粗暴的方式是删掉MiKTeX软件

python统计分析——单因素方差分析

参考资料&#xff1a;用python动手学统计学 方差分析&#xff1a;analysis of variance&#xff0c;缩写为ANOVA 1、背景知识 1.1 要使用方差分析&#xff0c;数据的总体必须服从正态分布&#xff0c;而且各个水平内部的方差必须相等。 1.2 反复检验导致显著性结果更易出现…

相机选型介绍

摄影测量中&#xff0c;相机是非常重要的角色&#xff0c;合适的相机产出合适的图像&#xff0c;得到合适的重建精度&#xff0c;这是相机的重要性。 您也许第一反应是&#xff0c;摄影测量所需的理想相机&#xff0c;是有着超高分辨率的相机&#xff0c;但事实可能并非如此&a…

太阳能光伏模型的参数确定及模型应用介绍

一、太阳能光伏模型介绍 ​ 太阳能通过光伏&#xff08;PV&#xff09;发电系统转化为电能。通过使用新材料技术&#xff0c;一直致力于提高光伏系统中太阳能电池的功率转换效率。基于钙钛矿太阳能电池的冠军器件具有24.8%的认证功率转换效率&#xff0c;仍有很大的改进空间。…

学习 LangChain 的 Passing data through

学习 LangChain 的 Passing data through 1. Passing data through2. 示例 1. Passing data through RunnablePassthrough 允许不改变或添加额外的键来传递输入。这通常与 RunnableParallel 结合使用&#xff0c;将数据分配给映射中的新键。 RunnablePassthrough() 单独调用&…

ChatGPT Plus遇到订阅被拒原因与解决方案

ChatGPT Plus被广泛认为相比普通版本更快、更强&#xff0c;并且能最先体验新功能。 很多小伙伴再订阅时遇到图片中的问题 错误提示包括这些&#xff1a; Your credit card was declined.Try paying with a debit card instead.您的信用卡被拒绝了。请尝试用借记卡支付。你的…

Data-Shape制作UI节点简介

很多小伙伴对于Data-Shape制作简单的UI都是似懂非懂&#xff0c;群里很多小伙伴也总是询问相关的问题&#xff0c;那么&#xff0c;今天我就简单举几个例子&#xff0c;专门介绍下Data-Shape创建简单UI的教程。 首先&#xff0c;本次教程&#xff0c;使用的是Data-Shape 2021.…

队列基础练习(C语言实现)

目录 队列基础练习 用队列实现栈 用栈实现队列 设计循环队列 队列基础练习 用队列实现栈 题目链接&#xff1a;225. 用队列实现栈 - 力扣&#xff08;LeetCode&#xff09; 请你仅使用两个队列实现一个后入先出&#xff08;LIFO&#xff09;的栈&#xff0c;并支持普通栈的全部…

政安晨【示例演绎虚拟世界开发】(一):Cocos Creator 的 Hello World

政安晨的个人主页&#xff1a;政安晨 欢迎 &#x1f44d;点赞✍评论⭐收藏 收录专栏: AI虚拟世界大讲堂 希望政安晨的博客能够对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正。 前言 Cocos Creator是一款非常强大的游戏开发引擎&#xff0c;它有着优秀…

基于springboot+vue的安康旅游网站(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战&#xff0c;欢迎高校老师\讲师\同行交流合作 ​主要内容&#xff1a;毕业设计(Javaweb项目|小程序|Pyt…

洛谷P5723 质数口袋 题解

#题外话&#xff08;第39篇题解&#xff09;&#xff08;本题为普及-难度&#xff09; #先看题目 题目链接https://www.luogu.com.cn/problem/P5723 #思路&#xff08;看代码吧&#xff09; #代码 #include <bits/stdc.h> using namespace std; bool p(int p_i){for(i…

啊丢的刷题记录手册

1.洛谷题P1923 求第k小的数 题目描述 输入 n&#xff08;1≤n<5000000 且 n 为奇数&#xff09;个数字ai​&#xff08;1≤ai​<109&#xff09;&#xff0c;输出这些数字的第 k 小的数。最小的数是第 0 小。 请尽量不要使用 nth_element 来写本题&#xff0c;因为本题…

《优化接口设计的思路》系列:第八篇—分页接口的设计和优化

系列文章导航 第一篇—接口参数的一些弯弯绕绕 第二篇—接口用户上下文的设计与实现 第三篇—留下用户调用接口的痕迹 第四篇—接口的权限控制 第五篇—接口发生异常如何统一处理 第六篇—接口防抖(防重复提交)的一些方式 第七篇—接口限流策略 第八篇—分页接口的设计和优化 …