Git之仓库管理.md的示例分析
创始人
2024-11-24 20:20:51
0次

今天,从两个方面来讲一讲Git的仓管。建立仓库以及跟踪仓库里文件的变化。

获取Git仓库

获取git仓库有两种方法:

  • 将本地未初始化的目录作为仓库目录

  • 从远程主机克隆一个已存在的Git项目

下面来演示这两种方法:

# mkdir learngit
# cd learngit/
# git init
Initialized empty Git repository in /root/learngit/.git

这样,一个本地的仓库就建立完了。接下来看如何从远程克隆仓库。

# mkdir learngit2
# cd learngit2
# git clone git@github.com:*****/blog.git  learngit2

该指令表示从远程克隆Git仓库,并将目录修改为learngit2。默认没有该参数的话,目录名即为blog。

追踪仓库的每一次更新

首先需要讲述下文件的状态,从大的方面来说,文件的状态有两种:

  • 未跟踪(Untracked)

  • 已跟踪

已跟踪的状态又分为未修改、已修改、已暂存。未跟踪的文件表示版本库没有跟踪该文件。

Git之仓库管理.md的示例分析

下面,我们来演示这几种文件的状态。

首先,在项目目录下新建立一个文件

# touch README.md

然后,我们来查看该文件的状态。git status 可以列出文件的状态,如果不加文件则表示列出所有的。

# git status README.md 
# On branch master
#
# Initial commit
#
# Untracked files:
#   (use "git add ..." to include in what will be committed)
#
# README.md
nothing added to commit but untracked files present (use "git add" to track)

可以看到,README.md状态是untracked。现在,我们再建立一个文件,并将添加到暂存区,然后看看该文件的状态。

# cat > index.php <  phpinfo();
> eof
# git add index.php
# git status index.php 
# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached ..." to unstage)
#
# new file:   index.php
#

只要出现在Changes to be committed下面的文件即表示该文件是已暂存状态。然后,将index.php文件再修改,看看会出现什么情况。

# git status index.php 
# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached ..." to unstage)
#
# new file:   index.php
#
# Changes not staged for commit:
#   (use "git add ..." to update what will be committed)
#   (use "git checkout -- ..." to discard changes in working directory)
#
# modified:   index.php
#

看到没有,index.php文件即出现在了暂存区,也出现在了非暂存区。大家注意了哦!这种情况是经常出现的哦。

git add

该命令的作用有,跟踪新的文件、将修改的文件提交到暂存区、将合并时候出现冲突的文件标记为已解决的状态。

查看修改

如何向查看工作区和暂存区文件的修改。直接使用git diff即可。

# git diff 1.txt 
diff --git a/1.txt b/1.txt
index 3b18e51..a042389 100644
--- a/1.txt
+++ b/1.txt
@@ -1 +1 @@
-hello world
+hello world!

那么如何查看暂存区和仓库的修改的。这个时候需要加上--staged选项。

# git diff --staged 1.txt 
diff --git a/1.txt b/1.txt
new file mode 100644
index 0000000..3b18e51
--- /dev/null
+++ b/1.txt
@@ -0,0 +1 @@
+hello world

总结一下

  • 查看工作区和暂存区文件的修改,使用git diff [文件名]

  • 查看暂存区和仓库文件的修改,使用git diff --staged [文件名]

提交更新

我们使用git commit 提交更新,让暂存区的内容提交到仓库里。

一般的,我们喜欢用-m选项,将本次提交的更新信息写在一起。如下:

# git commit -m 'first commit.add a txt file'

如果你不添加-m选项的话,会跳出一个编辑器,让你在编辑器里提交更新的信息。如果你更新的内容较多的话,一两句说不完,那么建议使用该方法。

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...