Git的基本使用(上)

简介: Git的基本使用

a0b093d23a6765d2884f6a33170ad8b8.png

一、git简介


1.1 git产生历史


git是目前世界上最先进的分布式版本控制系统


CVS和SVN,这些集中式的版本控制系统


1.2 git的两大特点


版本控制:可以解决多人同时开发的代码问题,也可以解决找回历史代码的问题。

分布式:Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上。首先找一台电脑充当服务器的角色,每天24小时开机,其他每个人都从这个“服务器”仓库克隆一份到自己的电脑上,并且各自把各自的提交推送到服务器仓库里,也从服务器仓库中拉取别人的提交。可以自己搭建这台服务器,也可以使用GitHub网站。


1.3 版本管理的区别


集中式版本管理系统中央服务器挂掉,将无法使用;而分布式版本管理系统可以


1.4 显示版本记录

# 显示版本记录
python@ubuntu:~/git_test$ git log 
# 以简短方式显示版本记录
python@ubuntu:~/git_test$ git log --pretty=oneline 
c282b581c22b9c3a1b38da35e18b519b67456e02 删除code2.txt
f08d742d8cc3aa4a7a7327814a4b66b376406090 版本3
1dda0ce0987c25a1bcb4219855f8372774cc9ef9 banben1

二、安装与配置


1、安装命令如下:


python@ubuntu:~$ sudo apt-get install git


a83f759e06070f640a436b27aa9be3e9.png

三、创建一个版本库


1、新建一个目录 git_test ,命令如下


python@ubuntu:~$ mkdir git_test
python@ubuntu:~$ cd git_test/
python@ubuntu:~/git_test$ ls -al


2、在git_test目录下创建一个版本库,初始化 命令如下:


python@ubuntu:~/git_test$ git init
初始化空的 Git 仓库于 /home/python/git_test/.git/
python@ubuntu:~/git_test$ ls -al


7b08f47c513c75a5434833c42f3be296.png


  • 可以看到在git_test目录下创建了一个.git隐藏目录,这就是版本库目录。


  • git借用这个.git文件 管理git_test下面的代码


四、版本创建与回退


4.1 使用


(1) 在git_test目录下创建一个文件code.txt,编辑内容如下

python@ubuntu:~/git_test$ touch code.txt
python@ubuntu:~/git_test$ vi code.txt
python@ubuntu:~/git_test$ cat code.txt
this is the first line


29f6f1156caed3e6e3a41a902bdc4dee.png

(2) 使用如下两条命令可以创建一个版本


git commit -m ‘提交说明’


python@ubuntu:~/git_test$ git add code.txt
python@ubuntu:~/git_test$ git commit –m '版本1'

4d6a409560353bba035d5be057c53463.png


(3) 使用如下命令可以查看版本记录:


python@ubuntu:~/git_test$ git log


0da3d94d8c983f7d5d31b2c339cca93b.png


(4) 继续编辑code.txt,在里面增加一行。


52bf5fee020a756feafb88d0c365be8a.png


(5) 使用如下命令再创建一个版本并查看版本记录:


c282c410db985e2f01cc904a0ccae081.png


(6) 现在若想回退到某一个版本,可以使用如下命令


python@ubuntu:~/git_test$ git reset --hard HEAD^


其中HEAD表示当前最新版本,HEAD^ 表示当前版本的前一个版本,HEAD^^ 表示当前版本的前前个版本,
HEAD~1 表示当前版本的前一个版本;
HEAD~100表示当前版本的前100版本。


现在若觉得想回到版本1,可以使用如下命令:


67242493a792c5c12bade543436b6002.png


执行命令后使用git log查看版本记录,发现现在只能看到版本1的记录,cat code.txt查看文件内容,现在只有一行,也就是第一个版本中code.txt的内容。


62fdb44032b7127fc592d0c9505c8e25.png

(7) 假如我们现在又想回到版本2,这个时候怎么办?


可以使用如下命令:

# git reset --hard 版本号
python@ubuntu:~/git_test$ git reset --hard 2d9217fb911c33fa1def3ab68d9fc5518bfd63b3
HEAD 现在位于 2d9217f 版本2

0d1333eeb5bf5910aa38b3ff32c00e1a.png


68f1a046ae93f0837a42f1961f2588c2.png


4.1.1 另一种情况(版本回退)


(7) 假如说上面的终端已经关了.。怎么改回退版本。


我们在执行如下命令将版本回退到版本1。

python@ubuntu:~$ cd git_test/
python@ubuntu:~/git_test$ git reset --hard HEAD^
python@ubuntu:~/git_test$ git log


4b9c6e9efea377ed6ce64758aae6bfb6.png


(8) 下面把终端关了,然后再打开终端,发现之前版本2的版本号看不到了。


那么怎么再回到版本2呢?git reflog命令可以查看我们的操作记录。


python@ubuntu:~/git_test$ git reflog


b8a8ea297256f0aa5d9de0f43d5bcd48.png


可以看到版本2的版本号,我们再使用如下命令进行版本回退,版本重新回到了版本2。


940efcd8694e2687b097c3a991a74356.png


4.1.2 问题


python@ubuntu:~/git_test$ git add code.txt
python@ubuntu:~/git_test$ git commit –m '版本1'
error: pathspec '–m' did not match any file(s) known to git.
error: pathspec '版本1' did not match any file(s) known to git.


8f9e2ff6751d195c68c987ed4e0ad9a4.png


4.1.3 解决


将单引号改为双引号,或者引号里面的内容改为英文


python@ubuntu:~/git_test$ git add code.txt 
python@ubuntu:~/git_test$ git commit -m "banben1"
[master (根提交) 1dda0ce] banben1
 1 file changed, 1 insertion(+)
 create mode 100644 code.txt


目录
相关文章
|
9月前
|
存储 开发工具 git
Git的简介以及基本使用
Git的简介以及基本使用
|
10月前
|
NoSQL Linux 开发工具
【Linux】第十站:git和gdb的基本使用(下)
【Linux】第十站:git和gdb的基本使用
90 0
|
10月前
|
NoSQL Linux 开发工具
【Linux】第十站:git和gdb的基本使用(上)
【Linux】第十站:git和gdb的基本使用
41 0
|
数据可视化 网络安全 开发工具
git可视化版本控制工具SourceTree的基本使用
git可视化版本控制工具SourceTree的基本使用
238 0
|
Linux 开发工具 数据安全/隐私保护
【Git】Git 的基本使用
【Git】Git 的基本使用
87 0
|
开发工具 git Docker
git:github的tag标签基本使用和自动发布软件包
git:github的tag标签基本使用和自动发布软件包
275 0
git:github的tag标签基本使用和自动发布软件包
|
缓存 开发工具 数据安全/隐私保护
git基本使用和github使用仓库拉取和提交
git基本使用和github使用仓库拉取和提交
|
网络安全 开发工具 git
Git的基本使用
Git的基本使用
68 0
|
开发工具 git Perl
Git基本使用
Git基本使用
100 0
|
开发工具 git
Git多人基本使用笔记
Git多人基本使用笔记
86 0
Git多人基本使用笔记