在 Linux 上使用 Git

欢迎阅读这份在 Linux 上使用 Git 的初学者指南!本指南旨在帮助您开始使用 Git 和 GitLab,并提供如何使用这些工具的基本了解。

Git 概述

用于制作应用程序的代码保存在系统上的文件夹和文件集合中。 Git 是一个允许我们备份、共享和复制该集合的应用程序。 Git 被称为版本控制系统,允许您跟踪代码更改并与其他人协作。它是一个在开源社区中广泛使用的强大工具。 GitLab 是一个基于 Web 的平台,可让您在线托管和管理 Git 存储库,从而轻松与他人协作并跟踪代码更改。

什么是存储库?

repo 是存储库的缩写,是一个由 Git 管理的本地文件夹,具有在线副本。 Git Lab 存储库是组成项目的文件和文件夹的集合。它可以具有作为同一项目的独立副本的_分支_。分支是项目的单独版本,允许您进行更改而不影响主版本。这对于在不中断主项目的情况下测试新功能或修复错误非常有用。本地存储库存储在硬盘上,远程存储库使用 Git 和 GitLab 在线存储。

使用 Git

您需要在系统上安装 Git。在基于Debian的系统上,您可以使用apt命令来安装软件包。在本例中,我们使用它来安装 Git,这是一个提供 Git 版本控制系统的包。 sudo 命令授予安装程序在您的系统上安装的权限。

 sudo apt install git

访问 GitLab

在使用 GitLab 之前,您需要通过访问 GitLab 网站并完成注册过程来创建一个帐户。

在执行 cloningpushingfetching 存储库等 Git 操作时,GitLab 需要 SSH 来在客户端(例如您)和 GitLab 服务器之间进行安全且经过身份验证的通信。克隆是制作存储库的本地副本,获取是将存储库中所做的任何更改带到本地副本,推送是将更改和内容发送到服务器存储库。 SSH(安全外壳)是一种网络协议,允许安全远程访问并使用_密钥对_来验证和建立安全连接。要生成 SSH 密钥对,您可以在终端中使用 ssh-keygen 命令。

 ssh-keygen

指定文件名,或按 Enter 键使用默认值,还可以指定密码。在您的主目录中名为 .ssh 的隐藏文件夹中,如果您使用默认名称,现在有两个 id_rsa 文件。 .pub 文件是公钥,您可以使用文本编辑器查看其内容。

登录您的 GitLab 帐户并导航至您的用户设置。单击左侧导航菜单中的“SSH 密钥”。将您的公钥复制并粘贴到“密钥”字段中,并为该密钥指定一个相关的标题,例如 PC@Home。单击“添加密钥”按钮保存密钥。您的 SSH 公钥现已添加到您的 GitLab 帐户,您可以使用它对 GitLab 存储库进行身份验证。测试您的密钥和连接是否可以使用 ssh -T 命令来查看来自 GitLab 的欢迎消息。

 $ ssh -T git@ssh.gitlab.gnome.org
 Welcome to GitLab, @username!

基本 Git 命令现在您已经安装了 Git 并使用 GitLab 设置了 SSH 密钥,让我们来了解一些用于管理存储库的基本 Git 命令。这些命令将帮助您处理现有项目,使它们保持最新状态并安全地进行更改。

1. 克隆存储库

克隆是创建远程存储库的本地副本的过程。当您想要处理 GitLab 上已存在的项目时,这非常有用。要克隆存储库,请使用 git clone 命令,后跟存储库 URL:

git clone https://gitlab.com/username/repository.git

https://gitlab.com/username/repository.git 替换为您要克隆的存储库的 URL。此命令将在新目录中创建存储库的本地副本。

2. 检查存储库状态

要查看本地存储库是否有任何更改或查看其当前状态,请使用:

git status

此命令将显示存储库的本地副本中已修改、添加或删除的文件。

3. 远程存储库

远程存储库是在线托管的项目版本,例如在 GitLab 上。它们是存储您的代码并可供其他人访问的中心位置。当您克隆项目时,Git 创建的默认远程存储库称为origin。您可以使用以下命令添加、删除或列出远程存储库:

  • 列出遥控器:

    要查看哪些远程存储库链接到本地项目,请使用:

    git remote -v

    此命令列出所有遥控器及其 URL。通常,您会看到此处列出origin

  • 添加遥控器:

    如果您需要添加新的远程存储库,可以使用以下命令:

    git remote add <name> <url>

    <name> 替换为远程名称,并将 <url> 替换为存储库的 URL。

  • 移除遥控器:

    要删除远程存储库,请使用:

    git remote remove <name>

    <name> 替换为您要删除的遥控器的名称。

4. 从远程存储库获取更改

如果您想查看对远程存储库所做的更改而不将其应用到本地副本,请使用:

git fetch origin

此命令从远程存储库获取最新更改,但不会将它们合并到本地分支中。这是在决定合并更新之前检查更新的一种方法。

5. 重置您的本地存储库

如果您想重置本地存储库以与远程存储库完全匹配,您可以使用“硬”重置。 警告: 这将覆盖您所做的任何本地更改。

git reset --hard origin/branch-name

branch-name 替换为要重置的分支的名称。此命令将放弃任何本地更改并使本地存储库与远程存储库相同。

6. 查看提交历史记录

要查看一段时间内对存储库所做的更改列表,请使用:

git log

此命令显示提交的历史记录,包括每次更改的作者、日期和消息。它对于了解进行了哪些更改以及何时进行了更改很有用。

总结

这些基本的 Git 命令将帮助您使用存储库,使本地副本保持最新状态并确保您可以安全地管理远程存储库。克隆存储库、检查本地副本的状态以及管理远程存储库是使用 Git 管理项目的关键技能。