windows和linux操作Git(序章2)

Git 分布式版本控制系统(序章1)

## Linux 下安装 Git

windows和linux操作Git(序章2)_第1张图片

windows和linux操作Git(序章2)_第2张图片

## Git命令大全

windows和linux通用

安装完 Git 后,需要进行配置,如姓名、Email 等

git config --global user.name "你的名字"git config --global user.email 你的邮箱名@主机名.域名

# 例如

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

设置 Git 默认使用的文本编辑器,一般可能会是 Vi 或者 Vim。如果你有其他偏好,可以进行重新设置:

git config --global core.editor 文本编辑器名字

还有一个比较常用的是,在解决合并冲突时使用哪种差异分析工具。

git config --global merge.tool 分析工具名字

要检查已有的配置信息,可以使用 git config --list 命令:。有时候会看到重复的变量名,那就说明它们来自不同的配置文件(比如 /etc/gitconfig 和~/.gitconfig),不过最终 Git 实际采用的是最后一个。也可以直接查阅某个环境变量的设定,只要把特定的名字跟在后面即可,像这样:

git config user.name

## Git 创建仓库

1.首先用Git Bash打开D盘

$ cd D:

2.在D盘中创建一个目录

(空文件夹)MyGit

$ mkdir learngit

windows和linux操作Git(序章2)_第3张图片

windows和linux操作Git(序章2)_第4张图片

windows和linux操作Git(序章2)_第5张图片

3. 打开创建的空目录

输入pwd可以查看当前目录的地址可以发现,目录位于D盘下的MyGit文件

$ pwd

4.把目录变成可以管理的仓库

$ git init

这样仓库就建好了,此时可以发现learngit中多了一个.git它就是用来跟踪和管理仓库中的文件。

windows和linux操作Git(序章2)_第6张图片

## 仓库中添加文件

git可以跟踪文本文件的改动,比如txt,代码等,会告知你在第几行添加了什么文字,在第几行改动什么单词,但是git无法跟踪word文件,所以这里建议都使用VS code来作为文本记录工具。下载安装vs code,然后新建一个readme.txt文件并将其保存到learngit文件中去。

在readme文件中键入几句内容:

git is a version control system

git 是一个可以免费使用的软件

$ sudo apt git

windows和linux操作Git(序章2)_第7张图片

vs code安装指南

VScode安装教程

把文件添加到仓库中

$ git add readme.txt

把文件提交到仓库中

$ git commit -m "wrote a readme file"

git commit命令,-m后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。

windows和linux操作Git(序章2)_第8张图片

windows和linux操作Git(序章2)_第9张图片

git commit命令执行成功后会告诉你,1 file changed:1个文件被改动(我们新添加的readme.txt文件);3 insertions:插入了两行内容(readme.txt有两行内容)。为什么Git添加文件需要add,commit一共两步呢?因为commit可以一次提交很多文件,所以你可以多次add不同的文件,比如:

$ git add file1.txt$ git add file2.txt $ git add file3.txt$ git commit -m "add 3 files."

windows和linux操作Git(序章2)_第10张图片

 ## 查看修改文件内容

接下来我们在vs code 中对readme文件进行内容的修改:

git is a version control system

git 是一个可以免费使用的软件,并且使用的人很多。

$ cd D:

然后运行:

$ git status

git status表示查看当前仓库的状态,git status告诉我们,将要被提交的修改包括readme.txt,下一步,就可以放心地提交了git commit。提交后,我们再用git status命令看看仓库的当前状态。

windows和linux操作Git(序章2)_第11张图片

windows和linux操作Git(序章2)_第12张图片

上面的命令输出告诉我们,readme.txt被修改过了(modified: readme.txt

),但还没有准备提交的修改(no changes added to commit)。虽然Git告诉我们readme.txt被修改了,但如果能看看具体修改了什么内容,自然是很好的。比如你休假两周从国外回来,第一天上班时,已经记不清上次怎么修改的readme.txt,所以,需要用git diff这个命令看看:

$ git diff readme.txt \\查看具体被修改的内容

windows和linux操作Git(序章2)_第13张图片

git diff顾名思义就是查看difference,可以从上面的命令输出看到,我们原本的内容(红色字体),和修改后的内容(绿色字体)的对比。知道了对readme.txt作了什么修改后,再把它提交到仓库就放心多了。提交修改和提交新文件是一样的两步:

$ git add readme.txt$ git status$ git commit -m "add word and code"$ git status

现在我们已经学会了修改文件并将修改后的文件提交到Git库中。

windows和linux操作Git(序章2)_第14张图片

 ## 检查修改次数、时间和修改人

上述只是修改了一次,当我们对一个文件进行多次修改,并存到Git库中去。例如:当我们在修改一次readme的内容:

git is a version control system,that distributed

git 是一个可以免费使用的软,并且使用的人很多,用起来也方便

$ cd D:

在实际工作中,我们脑子里怎么可能记得一个几千行的文件每次都改了什么内容,不然要版本控制系统干什么。版本控制系统肯定有某个命令可以告诉我们历史记录,在Git中,我们用git log命令查看:

$ git log$ git log --pretty=oneline // 只显示修改

windows和linux操作Git(序章2)_第15张图片

 ## 返回历史版本

当我们感觉当前修改的版本不如历史版本的时候,我们想让readme文件回到上一步应该如何处理?

首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交cbd208f2ab81415a2315365c87a303982a4a4fae,上一个版本就是HEAD^, 对应的edaafe8159efb2dd00628dcc80c1a69c51ea38ca,网上100个版本写成HEAD~100。

$ git reset --hard HEAD^

windows和linux操作Git(序章2)_第16张图片

那么现在问题来了,我感觉这个HEAD^的版本不如HEWD的版本好,我想回到刚才那个版本怎么办。如果命令窗口没关闭的话找HEAD对应的版本号。版本号是唯一的。例子中HEAD对应的版本号是cbd208f2ab81415a2315365c87a303982a4a4fae,取前几位就好了,Git会自己找。

$ git reset --hard cbd208

那么命令窗口被关闭咋办?

Git提供了一个命令git reflog可以记录你的每一次命令(版本号):

$ git reflog

还可以看见每一次的(commit)操作信息,然后再使用get reset指令就可以回来了。

windows和linux操作Git(序章2)_第17张图片

windows和linux操作Git(序章2)_第18张图片

你可能感兴趣的:(分布式项目管理,windows,linux,git)