git应用详解二:git入门

目录

  • git基础
  • 创建git版本库
  • 在工作区创建一个文件
  • 将文件加入暂存区
  • 提交文件
  • 修改用户名和邮箱

git基础

在git中文件有三种状态:已修改(modified)、已暂存(staged)、已提交(committed)
git应用详解二:git入门_第1张图片
在工作区中修改文件,修改后文件的状态为已修改状态,随后对已修改的文件进行git暂存操作,将文件存入暂存区,最后再将已暂存的文件进行git提交操作,将文件存入版本库,这所有的操作都是在本人电脑上操作,不涉及远程,即使电脑没有联网也能完成这些操作。

创建git版本库

首先在桌面上创建出一个文件夹并进入该文件夹:

cd Desktop 
mkdir mygit
cd mygit  

在这里插入图片描述
然后通过git命令创建版本库

git init

通过linux命令

ls -al      // 查看该目录下的所有文件,包括隐藏文件,如果安装了oh my zsh,直接使用l即可

git应用详解二:git入门_第2张图片
当看到.git文件夹之后,说明git版本库创建成功。

在工作区创建一个文件

在控制台使用如下命令创建一个test.txt文件并写入内容:

echo "hello world" > test.txt
cat test.txt       // 查看创建的文件的内容

在这里插入图片描述
如果使用了oh my zsh,命令行会出现一个黄色的小叉,说明工作区中有新的修改没有提交,当然git也提供了命令来查看当前工作区的状态:

git status

git应用详解二:git入门_第3张图片
输入命令后给出的提示:当前处于master分支,现在是初始提交,当前工作区有未追踪的文件test.txt,可以使用git add 命令来将文件加入版本控制系统。

将文件加入暂存区

根据上面的提示,使用命令将已修改的文件加入暂存区:

git add test.txt

给命令没有任何提示,linux的宗旨是“没有结果就是最好的结果”,当执行命令后没有任何提示时,说明命令执行成功。
我们再输入git status命令看看:
git应用详解二:git入门_第4张图片
可以看到前两行是没有区别的,后面的提示是:有修改需要提交,新的文件test.txt,可以使用git rm --cache将文件从暂存区移除,可以使用这个命令试试:

git rm --cache test.txt

git应用详解二:git入门_第5张图片
可以看到工作区的状态变为了使用git add 命令之前的状态,即该文件以及从暂存区中删除了。

现在重新使用git add命令将文件加入暂存区。

提交文件

先看一下当前的状态:
git应用详解二:git入门_第6张图片
输入命令

git commit

该命令会将暂存区中所有的修改进行提交,输入命令后会进入一个vi的界面,让你输入提交说明:
git应用详解二:git入门_第7张图片
按下i键进入编辑模式,输入相应的内容,按下ESC键进入命令模式,输入 :wq 保存并退出即可完成提交。如果什么修改都不做,直接退出,提交会失败,git强制每次提交都要有说明,下面不写任何内容直接退出:
在这里插入图片描述
每次打开vi比较麻烦,可以这样快速提交:
在这里插入图片描述
如果你是按照git之后没做任何设置,git 会提醒你设置user.name和user.email,本次提交的用户名和邮箱会根据你登录的用户名和主机名自动生成。git提示你使用如下两个命令设置用户名和邮箱:

git config --global user.name "Your name"
git config --global user.email "[email protected]"

可以查看提交记录:

git log

git应用详解二:git入门_第8张图片
在commit后面有一个id,实际上是使用sha1计算出来的,几乎不会重复。下面会显示提交信息。按 q 键退出日志。

修改用户名和邮箱

用户名和密码有三个地方可以配置,可以使用命令查看一下:

git config

git应用详解二:git入门_第9张图片
总共有三个地方可以修改,对应的git命令分别是system、global、local

1. /etc/gitconfig(几乎不会使用)      system级别,整个计算机都会使用,如果电脑有多个用户,每个用户都会使用这个配置
2. ~/.gitconfig        global基本,对于特定的用户起作用,在Windows中在$HOME目录下,及在用户名目录下
3. 位于版本库的.git/config中,local级别,对于特定的项目,使用不同的用户名和邮箱

当三个都配置时,作用范围越小优先级越高,即

local > global > system

下面演示一下global和local。

git config --global user.name '张三' 
git config --global user.email '张三@email.com'

然后查看:

git config user.name
git config user.email

git应用详解二:git入门_第10张图片
用这个配置提交一次看看log
git应用详解二:git入门_第11张图片
使用git log查看提交记录:
git应用详解二:git入门_第12张图片
再试试local

git config --local user.name '李四' 
git config --local user.email '李四@email.com'

git应用详解二:git入门_第13张图片
可以看到,生效的是local的配置,可以和上面一样提交一次提交日志,生效的是local的配置。
如果要取消配置,使用如下命令,比如取消local的配置

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

git应用详解二:git入门_第14张图片

你可能感兴趣的:(git)