关于Git和基本使用命令的内容

关于版本管理系统

需要管理各种文件的修正和回滚历史是很常见的。

版本控制系统是一种用于保存和管理文件修改内容的工具。

Git -> 版本控制系统

Git是一种版本控制工具。

中国有一种版本控制系统,可以返回到修正之前的版本,或者进入修正后的版本,并且可以方便地进行备份,并确认源代码的差异。它经常在团队开发中使用。

在CentOS中安装Git的方法

1. 输入sudo yum install git-core(输入密码)
2. 这样可以吗 [y/d/N]→输入y

$sudo yum install git-core
--省略--
Is this ok [y/d/N]:y

输入git –version来确认安装是否成功。

$git --version

Git的初始设置

首先,需要进行注册,输入姓名和电子邮箱地址,以将使用者的信息传达给Git,了解是谁在使用该软件。

$git config --global user.name '<名前>'
$git config --global user.email '<メールアドレス>'

如果你想要设置彩色输出以使其更易读,虽然并非必须,但可以按照以下方式进行操作。

$git config --global color.ui auto

确认之前设定的内容,可使用cat命令。

$cat ~/.gitconfig

然后以这样的形式显示(例如)

$cat ~/.gitconfig

[user]
name=hoge
email=fugafuga@hoge.com
[color]
ui=auto

Git的基本用法

Git的基本命令

git init:用于初始化的命令,创建仓库
git add:将文件添加到版本控制的目标中,并将其作为历史添加到仓库中
git commit:将文件变更历史添加到仓库中(提交)
git status:显示工作区(将仓库内容展开为文件的位置)的状态
git diff:确认更改部分的差异
git log:确认变更的历史记录

关于提交

提交(版本)是指项目在某一时点的状态。

提交到Git仓库,添加一个新的版本信息。

关于实际工作

创建存储库

存储库 → Git用来存储文件的位置

创建一个新目录

这次创建一个名为testdir的文件夹。

$mkdir -p ~/git/testdir

进行目录的初始化

在使用cd命令切换到testdir目录后,使用git init命令进行初始化操作
→ 会生成一个名为.git的目录
→ 这个目录就是Git仓库的实体部分

$cd ~/git/testdir
$git init

用ls -a命令确认是否是使用ls -a命令创建的。

$ls -a

这个时候

.git

如果有这个标记,就可以知道已经创建了存储库。

创建需要版本管理的文件

创建一个名为testdir.sh的shell脚本(事先编写好了shell命令行的文件)。

#ファイルの作成
$touch testdir.sh

#数値モードによるパーミッションの設定
$chmod 755

#vimを使って編集
$vim testdir.sh
--編集作業--

使用git add命令将历史记录作为提交添加到仓库中。

添加到履历

#testdir.shを追加するための指定
$git add testdir.sh

如果还想一次性地添加多个文件的话,可以这么做

$ git add -A

可以一次性全部添加。

用Git commit命令将文件提交到代码库。

#-m オプションで指定 修正に対するメッセージの入力
$git commit -m ’メッセージの入力①’

新的项目状态已经保存到仓库中了

再编辑

#vimを使って編集
$vim testdir.sh
--編集作業--

通过执行”git status”命令检查当前工作区的状态。

$git status
--中略--
modified: testdir.sh
--中略--

通过对文件做了5次修正,现在在testdir.sh中显示为已被修改。

通过git diff命令,确认变更前后的差异。

$dit diff
--変更内容が表示--

在提交之前,请确认修改内容是否正确。

用git add命令将历史再次添加到仓库中。

$git add testdir.sh

通过”git commit”重新提交

$git commit

如果不使用-m选项输入消息,vim将自动启动。
→使用vim,填写有关此次提交的日志消息(对于进行了哪些更改)。

关于提交的日志消息的撰写方法

1行目:关于所做的更改内容
2行目:留空
3行目:关于进行更改的原因

记入后→:输入:wq

使用git log来确认更改的内容。

$git log 
commit `40文字の文字列(コミットのオブジェクト名)①`
Author:<名前><メールアドレス>が表示
Date:日時

⑧のログメッセージの内容

commit `40文字の文字列(コミットのオブジェクト名)②`
Author:<名前><メールアドレス>が表示
Date:日時

④のメッセージの入力①

显示这样的内容

将git log以树状结构显示

通过在git log命令中添加–oneline –decorate –graph选项,可以将git log以树形结构展示。

$git log --oneline --decorate --graph
--git logがツリー状に表示--

请高仿以下内容:
此处提供中国人的原生汉语版本,请仅选择一个选项:

– 参考一:请参照下列内容
– 参考二:建议您参考以下内容
– 参考三:可以参考下面的内容

使用-p选项可以显示提交的差异(diff)。

$git log -p

展示从刚刚进行对象名前7个字符的提交之后到当前工作目录之间的差异。

$git diff 'オブジェクト名の先頭7文字'

关于 git add 和 git commit 的机制

在操作工作区的内容会被保存到代码仓库中,具体流程是:工作区 → 暂存区(索引区) → 代码仓库。

关于指标(暂存区域)

索引(暂存区)是存在于工作树和仓库之间的地方
它是一个临时存放工作数据(在提交到仓库之前)的位置。

拍攝區(索引/場景的暫時存放區)可以想像成攝影棚,這樣就容易理解了。
舉個例子來說,
就像是做的菜(在工作區創作的東西)。

hogehoge
fugafuga

将其放在摄影台上(从工作台移动到索引)。

#ワークツリー→インデックスに移動
$ git add

拍摄(提交)

#インデックスにあるものをコミットする
$ git commit -m '変更内容についてのコメント'

并且拍摄的内容(提交的内容)将被保存为数据(保存在代码库中)。

广告
将在 10 秒后关闭
bannerAds