创建并简单管理本地仓库的方法。

Git篇: 创建与添加

此文章编写于笔者刚开始学习git之时,所以不会有很多深奥的知识与历史,如有疏漏与错误,尽管联系笔者,我会及时修改,避免影响读者观感与知识理解。本系列文章不会太过深究git如何运作,各个操作的隐性机制,主打一个能用就行。

一言以蔽之:git是一种版本管理器。

如果你是一名大学生,你想写一个图书管理系统作为毕设,但是给导师看了之后发现这个系统极其简陋,只有登入和注册功能,导师要求你增加图书检索功能。增加之后,导师说不要全字匹配,要模糊匹配。修改之后,导师又说我全都要。

毫无疑问,此时的你已经把全字匹配的代码删的一干二净了,你现在急需时光机回到修改之前。一听就让人头大,于是git作为解决这种情况的工具横空出世!

准备工作

安装

只需复制这行代码到linux中然后一路敲回车键即可获得git。

注意!apt是ubuntu的包管理器,类似于应用商店,但是linux的发行版不只有ubuntu,类似像CentOS的包管理器是yum等,所以,在复制代码时请一定先去看看自己是什么发行版,包管理器是什么。唯一需要变的就是代码里的apt,如果账户不是root用户则需要加上sudo,其他的大差不差。

sudo apt install git

卸载

与使用差不多,唯一变了的就是install,变成了remove。

sudo apt remove git

初始化

在初始化操作之前,请先决定好自己git下来的目录,新建一个目录用于保存git下来的各种文件和代码,这个目录又叫仓库。

mkdir [目录名]

先对git初始化,git初始化会在当前目录下新建一个.git隐藏目录。

如非必要,不要修改.git目录下的任何内容,除非你是git高手。

git init

如果对这个隐藏目录好奇可以用tree .git/来直观地看。


配置用户名与邮箱

用户名与邮箱一般是指github上的账号和邮箱,国内也有类似的,比如gitee或者gitcode,按需修改用户名和邮箱。以下两行代码可以让你指定__该仓库__的用户名和邮箱。

git config user.name "xumiao"
git config user.email "xumiao@email.com"

我怎么知道我修改成功与否呢?用以下命令即可。

git config -l

如果想要将其置空,则可以使用以下命令来置空。

git config --unset user.name 
git config --unset user.email

还有一种办法可以快速的对所有仓库配置用户名与邮箱,那就是以下命令:

git config --global user.name "xumiao"
git config --global user.email "xumiao@email.com"

请注意,使用了--global命令配置的用户名是不会被上述命令置空和修改的。

对应的置空命令为:

git config --global --unset user.name 
git config --global --unset user.email

如果你够细心的话就会发现,没加--global的用户名在git config -l的最下面,加了global的用户名则在git config -l的最上面。

走到这里,你已经完成了git仓库的初始化了,接下来就是用git简单地管理仓库内的各种文件了!

使用

毫无疑问,前置工作都已完成,那么接下来就是重要的git的真正的使用方法了。

除非你是git高手,不然的话不要手动修改.git隐藏目录!包括之后你往这个仓库里添加的各种文件与代码都不要放到.git中!

我们将仓库目录下除.git文件外的所有空间称作工作区。


修改与保存

git的add功能只能让修改的文件与代码暂时存在暂存区,它并__不会__将修改的内容提交到__master分支__下。

你可以使用add命令,为了应对你后悔的情况,它只会将你修改完的东西放到.git文件的暂存区中。你可以add后面一次接多个文件名或者是多个文件夹,也可以加个.,它都会将对应的文件保存在暂存区中,区别在于一个是无脑将当前目录下的所有文件都放到暂存区中,一个是精细化地将对应的文件放入暂存区中。

git add [./file-name/...]

使用commit命令,将仓库真正修改!

-m是必须有的!后面接双引号,是表示这次你做了什么,但是,这个是你自己填写的,相当于注释,方便以后想要找到特定版本时能够快速定位。

git commit -m "注释" 

使用log命令,打印日志,方便找到对应的版本及其ID。--pretty=one可以只打印ID和对应的注释,舍去修改者和时间,方便根据注释找特定版本。

commit后面对应的就是版本的ID,是十六进制哈希值,HEAD指向最新版本

git log
git log --pretty=one

查看仓库状态

git status

结尾

好了,你已经会创建和添加git仓库的基本操作了,去创建属于你的本地仓库吧!