Git的基础知识

Git

Git是一种版本控制系统,用于记录和追踪程序源代码等的修改历史。版本控制是指管理多个源代码版本的工具。通过使用Git,可以回溯修改历史并将源代码恢复到原始状态,还可以实现多人协同开发。

在进行团队协同开发时,Git已经成为不可或缺的存在。当提到程序员时,我们可能会想到他们写代码的形象,但在这之前,如果没有像Git这样的版本管理工具,工作就无法进行。让我们一起在这里掌握基础知识吧。

在Git上的开发流程

首先,让我们从基本术语开始理解。Git将用于版本控制的位置称为「仓库」。仓库包括「本地仓库」和「远程仓库」。本地仓库是位于自己计算机内部的仓库,远程仓库则是位于互联网上的仓库。关于远程仓库,稍后将详细说明。

用户保存修改历史称为“提交(commit)”。这是Git的一个常用功能,请务必记住。提交将按照执行顺序记录,可以按照时间顺序跟踪修改历史。因此,可以轻松确认过去进行了哪些修改。

此外,当进行提交时,您可以通过提交消息的形式留下备注。例如,可以留下类似于”进行了设计修改”或者”添加了向数据库注册的处理”这样的备注。这样一来,更容易理解变更历史。

当多人合作进行开发时,要利用”Commit”和”Commit Message”来创建能够被任何人理解的变更历史,并且努力确保可以随意追溯到任意历史记录。

允許同時並行進行多個開發的功能。

在Git中,有一個能夠同時進行多個開發的功能。例如,A先生負責實現數據登錄操作,B先生負責美化數據的顯示格式。當兩人同時編輯同一個文件時,效率會非常低。為了解決這個問題,有一個名為”分支”的功能。分支字面上意味著將開發分叉,通過使用這一功能,就可以將A先生和B先生的開發視為獨立的兩個部分。

A先生 → A分店
B先生 → B分店

本地仓库和远程仓库

在之前的讨论中,我们提到了将Git版本控制下的位置称为存储库。其中,通过网络可以从任何地方进行访问的存储库被称为远程存储库。相反,存在于个人计算机内部的存储库被称为本地存储库。在进行多人开发时,我们将远程存储库共享给多名程序员,并将该远程存储库克隆到各自的本地存储库中进行开发。因此,多人可以对一个项目进行开发。

SourceTree是一个版本控制软件。

一般来说,Git 是在终端或命令提示符等字符界面下操作的工具。也就是说,只需输入命令就可以进行版本管理。然而,对于初学者来说,这样的学习成本较高。因此,为了让Git能够以直观的方式操作,推出了一个名为SourceTree的工具。通过使用SourceTree,即使是初学者也可以轻松进行Git版本管理。顺便说一下,像SourceTree这样图形化且操作简单的界面被称为图形用户界面(GUI)。这次我们将使用SourceTree来操作Git,并练习版本管理的方法。

版本管理的流程

在Git中进行版本控制,基本上流程如下:

    • ローカルリポジトリの作成(git init)

 

    • 変更ファイルをインデックスにあげる(git add)

 

    変更履歴を保存する(git commit)

创建本地仓库

首先打开终端,然后进入要创建仓库的目录。在此过程中,我们将使用cd命令来进行目录之间的移动。

cd 移動したいディレクトリ名

如果想要移动到主目录下的sample目录,可以执行以下命令。

cd sample

输入以下内容,可以一次性移动多个目录。

如果想要从主目录一次性直接移动到hoge→fuga→hogehoge→fugafuga的位置。

cd hoge/fuga/hogehoge/fugafuga

在通过使用cd命令进入想要创建本地代码库的目录后,执行git init命令。这个命令会在目录中创建一个空的本地代码库。此外,如果已经存在代码库并执行git init命令,不必担心,已存在的代码库不会被重置。

git init

Git的架构

在详细解释之前,我们首先来讲解一下Git文件保存的位置。实际上,Git有几个用于保存文件的地方。以下是它的组成:

    1. 工作区(存放当前正在操作的文件的地方)

 

    1. 索引区(存放待提交文件的地方)

 

    1. 本地代码仓库(用于发送变更内容到远程代码仓库的地方)

 

    远程代码仓库(多人共享文件的地方)

在执行git init之后,我们通过运行git add .来保存所创建文件的更改历史。这个命令会在当前正在开发的项目中找到有更改的文件并将其添加到索引中,为保存更改历史做准备。换句话说,它将把”所有更改的文件”放入”由Git进行版本管理的目标”中。现在,让我们执行git add .。

git add .

顺便一提,「git add .」是一个将修改后的文件一起添加到索引中的命令。除此之外,还有一个可以将指定文件添加到索引中的命令。在这种情况下,可以执行以下命令。

git add ファイル名

通过在后面输入文件名,git add命令还可以将特定文件加入索引。

如果只要将名为sample.rb的文件添加到索引中,可以使用以下命令。

git add sample.rb

保存改动记录

为了保存更改历史记录,需要执行commit命令。执行此命令将保存本地仓库中的更改内容。

另外,在执行 commit 命令时,必须确保已经使用 git add 将已更改的文件添加到索引中。如果已更改的文件未在索引中,将显示没有要提交的内容的提示消息。

nothing to commit, working tree clean

在执行commit时,输入以下命令。通过使用-m或–message选项,可以留下对于commit的评论。这样可以更容易地了解每个commit所进行的更改是什么。

git commit -m "init commit"

创建分支

“分支”是一种必要的机制,用于同时进行多个开发。通过分叉更改历史的管理,每个程序员可以实现不同的功能。正如“分支”这个名字所示,它是将开发分叉的意思。要创建该分支,请执行以下命令。

在中文中有一种方式可以重新表述这段话:

分支可以通过合并(合并)到其他分支来合并为一个。存在称为master的分支,其他为开发而分离的分支最终将合并到master中,这是一般开发流程。

git branch ブランチ名

通过在”git branch”后面加上任意的分支名称,可以创建一个以该名称命名的新分支。例如,如果想要创建一个名为”sample”的分支,可以输入以下命令。

git branch sample

如果你想要确认现在存在的分支,请直接运行git branch。

git branch

合并分支

把开发完成的分支合并到其他分支称为“合并”。让我们看一个将示例分支合并到主分支的例子。

首先,我们要确认目前存在的分支。

git branch

输出结果 (Chū lì jié guǒ)

* sample
  master

从样本分支切换到主分支,使用的命令是checkout。

git checkout master

接下来,使用merge命令将sample分支合并到master。合并完成。

git merge sample
广告
将在 10 秒后关闭
bannerAds