初识Git

本地创建一个Git版本库简单了解Git的一些必要的配置,配置昵称用户名和邮箱。

简单复习 - 专栏 Git原理详解与实操指南

1、创建Git版本库

首先创建个文件夹git,用于版本管理。

Linux或Mac系统

  1. mkdir git
  2. cd git

进入文件夹,可以使用git init命令初始化一个仓库

  1. git git init
  2. Initialized empty Git repository in /home/liuawen/git/.git/
  3. git git:(master)

初始化版本库会在当前目录中创建一个.git的文件夹,我们可以进入版本库根目录,然后通过命令ls -al进行查看,如下命令所示:

  1. git git:(master) ls
  2. git git:(master) pwd
  3. /home/liuawen/git
  4. git git:(master) ls -al
  5. total 0
  6. drwxr-xr-x 1 root root 4096 Mar 20 15:23 .
  7. drwxr-xr-x 1 liuawen liuawen 4096 Mar 20 15:23 ..
  8. drwxr-xr-x 1 root root 4096 Mar 20 15:24 .git
  9. git git:(master)

执行过的命令:

  1. liuawen pwd
  2. /home/liuawen
  3. liuawen mkdir git
  4. mkdir: cannot create directory git’: File exists
  5. liuawen rm -rf git
  6. liuawen ls
  7. sources.list
  8. liuawen mkdir git
  9. liuawen ls
  10. git sources.list
  11. liuawen cd git
  12. git git init
  13. Initialized empty Git repository in /home/liuawen/git/.git/
  14. git git:(master) ls
  15. git git:(master) pwd
  16. /home/liuawen/git
  17. git git:(master) ls -al
  18. total 0
  19. drwxr-xr-x 1 root root 4096 Mar 20 15:23 .
  20. drwxr-xr-x 1 liuawen liuawen 4096 Mar 20 15:23 ..
  21. drwxr-xr-x 1 root root 4096 Mar 20 15:24 .git
  22. git git:(master)

认识.git

git init初始化生成的.git目录

.git目录包含了整个版本库的信息,那怎么查看这个目录有哪些文件呢?

可以使用如下命令

  1. cd .git
  2. ls -al

cd .git是进入.git目录,ls -al是显示当前目录下的所有文件及文件夹包括隐藏文件详细信息。

windows:

Linux:

  1. git git:(master) cd .git
  2. .git git:(master) pwd
  3. /home/liuawen/git/.git
  4. .git git:(master) ls -al
  5. total 0
  6. drwxr-xr-x 1 root root 4096 Mar 20 15:38 .
  7. drwxr-xr-x 1 root root 4096 Mar 20 15:23 ..
  8. -rw-r--r-- 1 root root 23 Mar 20 15:23 HEAD
  9. drwxr-xr-x 1 root root 4096 Mar 20 15:23 branches
  10. -rw-r--r-- 1 root root 92 Mar 20 15:23 config
  11. -rw-r--r-- 1 root root 73 Mar 20 15:23 description
  12. drwxr-xr-x 1 root root 4096 Mar 20 15:23 hooks
  13. drwxr-xr-x 1 root root 4096 Mar 20 15:23 info
  14. drwxr-xr-x 1 root root 4096 Mar 20 15:23 objects
  15. drwxr-xr-x 1 root root 4096 Mar 20 15:23 refs
  16. .git git:(master)

简单介绍下这些文件夹的作用:

  • HEAD 文件指示目前被检出的分支

  • branches 新版本已经废弃,我们不必关注

  • description用来显示对仓库的描述信息

  • config 文件包含项目特有的配置选项

  • info 目录包含一个全局性排除文件

  • hooks 目录包含客户端或服务端的钩子脚本

  • index 文件保存暂存区信息

  • objects 目录存储所有数据内容

  • refs 目录存储分支的提交对象的指针

Q:ls ls -a ls -l ls -al 有什么区别呢?

A:ls 是显示不隐藏的文件和文件夹 ls -a 是显示所有文件和文件夹(包括隐藏的文件)

ls -l是显示不隐藏的文件和文件夹的详细信息,ls -al是显示目录下的所有文件及文件夹包括隐藏文件详细信息。

  1. git git:(master) ls
  2. git git:(master) pwd
  3. /home/liuawen/git
  4. git git:(master) ls
  5. git git:(master) ls -a
  6. . .. .git
  7. git git:(master) ls -l
  8. total 0
  9. git git:(master) ls -al
  10. total 0
  11. drwxr-xr-x 1 root root 4096 Mar 20 15:23 .
  12. drwxr-xr-x 1 liuawen liuawen 4096 Mar 20 15:23 ..
  13. drwxr-xr-x 1 root root 4096 Mar 20 15:37 .git
  14. git git:(master) cd .git
  15. .git git:(master) pwd
  16. /home/liuawen/git/.git

2、基础配置

在建立完项目的版本库之后,

  1. mkdir git
  2. cd git
  3. git init

我们之后对代码的管理操作会要求要有一个身份,所以我们现在来配置一个昵称和邮箱。可以在查看改动记录时候用到的。

2.1、查看配置信息

我们在配置一个昵称和邮箱之前,先来检查下之前没有用已经配置过了什么昵称邮箱。

  1. git git:(master) pwd
  2. /home/liuawen/git
  3. git git:(master) git config user.name
  4. git git:(master) git config user.email
  5. git git:(master)

啥也没有,那就是没有配置过咯,我们来配置下吧。

2.2、配置昵称邮箱信息

配置昵称&邮箱的命令如下:

Setting your Git username for every repository on your computer.

配置全局的

  1. git config --global user.name "昵称"
  2. git config --global user.email "邮箱"

执行命令如下:

  1. git git:(master) git config --global user.name "liuawen"
  2. git git:(master) git config --global user.name
  3. liuawen
  4. git git:(master) git config --global user.email "willowawen@foxmail.com"
  5. git git:(master) git config --global user.email
  6. willowawen@foxmail.com
  7. git git:(master)

Setting your Git username for a single repository

局部的,单个仓库

  1. git config user.name "昵称"
  2. git config user.email "邮箱"

执行命令如下:

  1. git git:(master) pwd
  2. /home/liuawen/git
  3. git git:(master) git config user.name
  4. git git:(master) git config user.email
  5. git git:(master) git config user.name "liuawen"
  6. git git:(master) git config user.name
  7. liuawen
  8. git git:(master) git config user.email "willowawen@foxmail"
  9. git git:(master) git config user.email
  10. willowawen@foxmail
  11. git git:(master)

2.3、修改配置信息

我们在配置过程中如果不小心配置错了或者后面想修改配置,那怎么办呢?

试一试可不不可以通过重复执行上面的设置昵称邮箱命令,来修改昵称邮箱的呢?

我之前的邮箱输错了… 少了.com 来修改一下吧

  1. git git:(master) git config user.email "willowawen@foxmail"
  2. git git:(master) git config user.email
  3. willowawen@foxmail
  4. git git:(master) git config user.email "willowawen@foxmail.com"
  5. git git:(master) git config user.email
  6. willowawen@foxmail.com
  7. git git:(master) git config user.name "liuawen2"
  8. git git:(master) git config user.name
  9. liuawen2
  10. git git:(master)
  11. git git:(master) git config user.name "liuawen3"
  12. git git:(master) git config user.name
  13. liuawen3

对局部的可以,那我们试一试全局的global。

  1. git git:(master) git config --global user.name
  2. liuawen
  3. git git:(master) git config --global user.email
  4. willowawen@foxmail.com
  5. git git:(master) git config --global user.name "git"
  6. git git:(master) git config --global user.name
  7. git
  8. git git:(master) git config --global user.name "willow"
  9. git git:(master) git config --global user.name
  10. willow
  11. git git:(master) git config --global user.name "liuawen"
  12. git git:(master) git config --global user.name
  13. liuawen
  14. git git:(master) git config --global user.email "willowawen@gmail.com"
  15. git git:(master) git config --global user.email
  16. willowawen@gmail.com
  17. git git:(master) git config --global user.email "willowawen@foxmail.com"
  18. git git:(master) git config --global user.email
  19. willowawen@foxmail.com
  20. git git:(master)

也可以的,是可以通过重复执行上面的设置昵称命令,来修改昵称和邮箱的。

如果多次设置昵称,它会在命令执行后提示无法重复配置或者可能不给提示,但是这种情况会导致一个 key 配置了多个 value 的问题。(我的这里可以多次设置昵称和邮箱的,应该是可能是版本不同略有差异吧),建议使用特定的方法去修改配置信息。

1、通过命令行

通过命令行修改的方式比较简单,直接执行以下的命令即可

修改昵称邮箱命令如下:

  1. git config --global --replace-all user.name "your user name"
  2. git config --global --replace-all user.email"your user email"

执行操作:

  1. git git:(master) git config --global user.name
  2. liuawen
  3. git git:(master) git config --global user.email
  4. willowawen@foxmail.com
  5. git git:(master) git config --global --replace-all user.name "haha"
  6. git git:(master) git config --global user.name
  7. haha
  8. git git:(master) git config --global --replace-all user.email "hehe@qq.com"
  9. git git:(master) git config --global user.email
  10. hehe@qq.com
  11. git git:(master) git config --global --replace-all user.user "liuawen"
  12. git git:(master) git config --global user.name
  13. haha
  14. git git:(master) git config --global --replace-all user.name "liuawen"
  15. git git:(master) git config --global user.name
  16. liuawen
  17. git git:(master) git config --global --replace-all user.email "willowawen@foxmail.com"
  18. git git:(master) git config --global user.email
  19. willowawen@foxmail.com
  20. git git:(master)

2、通过修改配置文件。

修改文件的方式,主要是修改位于主目录下.gitconfig 文件。在 Linux 和 Mac 中,可以通过 vim 命令进行直接编辑,比如vim ~/.gitconfig

修改全局的

操作如下

  1. git git:(master) pwd
  2. /home/liuawen/git
  3. git git:(master) cd git
  4. cd: no such file or directory: git
  5. git git:(master) ls -al
  6. total 0
  7. drwxr-xr-x 1 root root 4096 Mar 20 15:23 .
  8. drwxr-xr-x 1 liuawen liuawen 4096 Mar 20 15:23 ..
  9. drwxr-xr-x 1 root root 4096 Mar 20 16:22 .git
  10. git git:(master) cd .git
  11. .git git:(master) ls -al
  12. total 0
  13. drwxr-xr-x 1 root root 4096 Mar 20 16:22 .
  14. drwxr-xr-x 1 root root 4096 Mar 20 15:23 ..
  15. -rw-r--r-- 1 root root 23 Mar 20 15:23 HEAD
  16. drwxr-xr-x 1 root root 4096 Mar 20 15:23 branches
  17. -rw-r--r-- 1 root root 148 Mar 20 16:07 config
  18. -rw-r--r-- 1 root root 73 Mar 20 15:23 description
  19. drwxr-xr-x 1 root root 4096 Mar 20 15:23 hooks
  20. drwxr-xr-x 1 root root 4096 Mar 20 15:23 info
  21. drwxr-xr-x 1 root root 4096 Mar 20 15:23 objects
  22. drwxr-xr-x 1 root root 4096 Mar 20 15:23 refs
  23. .git git:(master) vim ~/.gitconfig
  24. .git git:(master)
  25. .git git:(master) vim ~/.gitconfig
  26. .git git:(master) cd ..
  27. git git:(master) vim ~/.gitconfig
  28. git git:(master) cd ..
  29. liuawen vim ~/.gitconfig

vim ~/.gitconfig 都可以去.gitconfig里面修改

Windows 系统同样位于用户主目录下,假设你当前的用户是administrator,那么对应的配置文件的路径应该是 C:\Users\administrator\.gitconfig,可以直接使用记事本修改里边的 name 或者 email。

我这里没找到

找到了 ,我以为是文件夹。。。 配置信息

如果之前已经配置过昵称和邮箱的情况下,当使用 vim 或者记事本打开配置文件之后,可以看到如下配置:

  1. [user]
  2. name = liuawen
  3. email = willowawen@foxmail.com

修改完,通过 git bash 输入 git config –list可以查看是否修改成功了。

Ctrl + Z 结束查看

  1. git git:(master) git config -list
  2. error: did you mean `--list` (with two dashes ?)
  3. git git:(master) vim ~/.gitconfig
  4. git git:(master) git config -list
  5. error: did you mean `--list` (with two dashes ?)
  6. git git:(master) git config --list

修改局部的

直接当当前文件仓库进行修改的

window

Linux也一样

3、小结

使用过的命令

  1. mkdir git
  2. cd git
  3. git init
  4. pwd
  5. ls -al
  6. cd .git
  7. ls -al
  8. ls -a
  9. ls -l
  10. ls
  11. cd ..
  12. git config --global user.name "昵称"
  13. git config --global user.email "邮箱"
  14. git config user.name "昵称"
  15. git config user.email "邮箱"
  16. git config --global --replace-all user.name "your user name"
  17. git config --global --replace-all user.email"your user email"
  18. vim ~/.gitconfig
  19. git config –-list

学习了如何创建一个本地版本库,以及了解了版本库的基本结构,会一些简单基础的配置。

在空文件夹中,可以通过命令git init创建一个本地版本库;

每个版本库的根目录下,都存放着一个.git的隐藏文件夹,里面包含版本库的全部信息;

管理版本库必须有一个身份,需要设置昵称和邮箱。

【Git】3、创建Git版本库、配置Git仓库用户邮箱信息的更多相关文章

  1. 安装git,创建本地版本库

    安装 由于我使用的是Ubuntu,因此安装很简单,输入:sudo apt-get install git 如果是其他Linux版本,可以直接通过源码安装.先从Git官网下载源码,然后解压,依次输入:. ...

  2. GIT使用—创建一个版本库

    一.GIT命令行 [root@localhost ~]# git usage: git [--version] [--exec-path[=GIT_EXEC_PATH]] [--html-path] ...

  3. git 创建远程版本库(亲测有效)

    一.github远程版本库 1.创建SSH Key(windows)   ssh-keygen -t rsa -C "youremail@example.com"   2.连接版本 ...

  4. 『现学现忘』Git基础 — 8、Git创建本地版本库

    目录 1.Git版本库介绍 2.创建本地版本库 场景一:创建一个空的本地版本库. 场景二:项目中已存在文件时,创建该项目的本地版本库. 场景三:在GitHub网站上创建仓库,克隆到本地. 1.Git版 ...

  5. Git的使用(1) —— 版本库

    1. 简介 Git作为一个分布式版本控制系统,其优点是不需要一直连接远端版本库就可以使用. 故其为实现分布版本控制专门设计了一整套的存储区间和语句,用来实现. (1) 本地版本库:建立在本机磁盘上的文 ...

  6. git学习2:版本库

    创建版本库 版本库,又称仓库,英文名为repository,版本库内的所有文件都可以被Git管理起来,即每个文件的修改.删除,Git都能跟踪. 1,在目录中创建版本库 在目录中有两种创建版本库的方法, ...

  7. git怎么创建本地版本仓库

    git怎么创建本地版本仓库 安装git我就不用说了吧!下载地址:https://github.com/msysgit/msysgit/releases/download/Git-1.9.4-previ ...

  8. 【Git】(1)---工作区、暂存区、版本库、远程仓库

    工作区.暂存区.版本库.远程仓库 一.概念 1.四个工作区域 Git本地有四个工作区域:工作目录(Working Directory).暂存区(Stage/Index).资源库(Repository或 ...

  9. linux 创建svn版本库,并在svn上配置checkstyle做代码风格检查

    一.创建SVN版本库 1.安装svn服务器 yum install subversion 2.查看版本 svnserve --version 3.建立SVN版本库目录(即你的SVN服务器里面的文件存放 ...

随机推荐

  1. Vue-组件化,父组件传子组件常见传值方式

    前言 我们都知道vue核心之一:组件化,vue中万物皆组件,组件化我认为应该来至于模块化的设计思想,比如在模块化开发中,一个模块就是一个实现特定功能的独立的文件,有了模块我们就更方便去阅读代码,更方便 ...

  2. Mysql8.0新特性【详细版本】

    1.  账户与安全 用户创建与授权 之前:创建用户并授权 1 grant all privileges on *.* to 'myuser'@'%' identified by '3edc#EDC'; ...

  3. Hbase备份以及清表脚本

    脚本主要是方便自己工作使用,服务器环境中配置了hbase相关环境变量 1.hbase备份脚本 #!/bin/bash tableList=("table1" "table ...

  4. npm的下载与安装

    1.Node (1)什么是Node.js Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. (2)Node ...

  5. 泡面不好吃,我用了这篇k8s调度器,征服了他

    1.1 调度器简介 来个小刘一起 装逼吧 ,今天我们来学习 K8的调度器 Scheduler是 Kubernetes的调度器,主要的任务是把定义的 pod分配到集群的节点上,需要考虑以下问题: 公平: ...

  6. #2020征文-手机#深鸿会深大小组:HarmonyOS手机游戏—数字华容道

    目录: 前言 概述 正文 创建项目 实现初始界面布局 实现数字的随机打乱 实现滑动或点击调换数字 实现游戏成功界面 结语 源码包 前言 12月16号HarmonyOS2.0手机开发者Beta版已经发布 ...

  7. UWP ListView添加分割线

    先看效果: 我并没有找到有设置ListView分割线的属性 下面是一个比较简单的实现,如果有同学有更好的实现,欢迎留言,让我们共同进步.我的叙述不一定准确 实现的方法就是在DataTemplate里包 ...

  8. 从零实现Linux一键自动化部署.netCore+Vue+Nginx项目到Docker中

    环境搭建 1.安装Linux,这里我用的阿里云服务器,CentOS7版本 2.进入Linux,安装Docker,执行以下命令 sudo yum update #更新一下yum包 sudo yum in ...

  9. C# Json对象数组复杂JObject 序列化

    tatic void Main(string[] args) { //先反序列化看看 string json = "{\"name\": true,\"age\ ...

  10. Solon 1.2.12 发布,新的惊喜

    Solon 一个类似Springboot的微型开发框架.强调:克制 + 简洁 + 开放的原则.力求:更小.更快.更自由的体验. 所谓更小: 内核0.1m,最小Web开发单位0.2m(相比Springb ...