Git学习笔记-基本操作

1、当前状态查看

git status

查看当前仓库的状态。主要是系统或文件中被修改,但是没有提交的文件。如果想查看具体修改的内容,使用:

git diff

2、查看历史记录

历史详细版本信息:

git log

历史简约版本信息:

git log --pretty=online

简约版本信息例如:

c*19342e35***********e208e8454b0f080ee Merge pull request #8 in PAYP/payresource from paythrift to master

b*4d754678***********bcde53 新生代大小

5*d1597e8e3*************2a13ea596 新生代内存大小优化

7*37e44e*********5d641f406ad90745dba 优化过滤减的日志

其中commit ID(版本号):不是递增式的数字,而是一个是SHA1 用十六进制的数字设计的一个非常大的数字。

3、版本回退

HEAD是当前版本

HEAD^是上一个版本

HEAD^^是上上一个版本

HEAD~100是上100个版本

3.1 操作说明:把当前版本append GPL 回退到上一个版本 add distributed ,使用的指令:git reset

git reset --hard HEAD^

3.2 如果现在后悔了,不想回退,想恢复到原来回退之前的版本,只要在终端没有关闭的情况(可以找到版本号commit id),就可以执行下面的指令:21c32是我的版本号(commit id)

git reset --hard 21c32

说明1:Git 的版本号不需要全部写上,只要版本号的前几位就可以,当然不能太少,要不然Git不知道是那个版本了。

说明2:Git的版本回退速度非常快,原因是:在Git的内部有一个HEAD指针,指向当前的文件,当执行回退动作时,只要把指针指向append GPL即可。

3.2 如果现在后悔了,并且找不到回退之前的版本号(commit id),需要进行如下操作找到之前的版本号:

git reflog

4、工作区和暂存区

说明:.git是一个隐藏的版本库。

5、管理修改

什么是修改:

添加一个字符,删除一个字符,添加一个文件,删除一个文件,添加内容并删除一部分内容等,所有操作都属于修改。

Git是跟踪和管理的修改,而不是文件。

执行下面的指令:

如果第一次执行git add后,然后修改工作去的内容,在执行git commit -m"***",那么本次修改的本地文件的内容是不会上传到版本库中。

原因:git add 操作只会把第一次修改的内容添加到stage区域,而git commit -m“***”只是把第一次添加的修改内容上传到分支上。而第二次修改的内容任然在工作去。

两次修改正确的提交顺序:

1)~add,~commit,~add,~commit

2)~add,~add,~commit

6、撤销修改

6.1)丢弃工作区的修改

git checkout -- readme.txt

上面git checkout -- file中的--是非常关键的字符。如果没有--就会变成分支的切换了。

6.2)丢弃暂存区的修改

git reset HEAD readme.txt     #回到了场景5.1中-想丢弃工作区的修改
git checkout -- readme.txt

git reset HEAD file 指令,不仅可以回退版本,还可以把暂存区修改回退到工作区的状态。

6.3)回退版本

前面介绍了回退版本的指令:(使用回退指令的前提条件是:没有将内容提交到远端。)

git reset --hard HEAD^

7、删除文件

git rm readme.txt
git status     #查看删除后的文件

另外,当删除文件错误时,需要恢复操作,可以通过下面的指令,恢复到最新版本

git checkout -- readme.txt

命令git rm用于删除一个文件。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容

发布了327 篇原创文章 · 获赞 133 · 访问量 63万+

猜你喜欢

转载自blog.csdn.net/qq_30507287/article/details/85042395