Git本地容器常用指令总结

来源:互联网 发布:迁移阿里云rds到aws 编辑:程序博客网 时间:2024/06/05 18:58

1.背景
近日在拜读廖雪峰大牛的git教程,确实犹如大家公认的是目前网上最为简洁易懂而且全面的教程。由于校园网问题导致不能访问github,因此就先整理一下从廖大牛那学来的一些本地容器常用的指令。

2.操作
1)安装git

sudo apt-get install git

2)创建本地仓库repository,为git表明“哥我要进行版本控制的文件在这个文件中哦“这意思。(这里假设在GIT文件夹下创建仓库。)

cd GITgit init

执行后,GIT目录下会生成一个隐藏的.git文件夹。

3)往仓库中添加文件,引用廖大牛的原话是

“首先明确一下,所有的版本控制系统,其实只能跟踪文本文件的改动,比如TXT文件,网页,所有的程序代码等等,Git也不例外。“

二进制文件(如图片视频等)是不行的,所以我们一般是用来对源代码进行版本控制的。
先touch一个新文件test.txt,内容任意。再执行

git add test.txt

告诉仓库我添加一个要版本控制的文件test.txt了。可以git add多个文件,都会先提交给git的暂存区,等最后一并提交。
可以随时执行

git status

查看当前仓库的信息。

4)推送当前版本(最近add的版本)给仓库。

git commit -m "do something"

-m 是附加消息即这个版本是什么或者修改者动了什么。需要注意的是,它只会commit那些add后的文件,假如你在add了一次test.txt,随后又执行了修改,那么它只会commit add时的text状态,想要提交修改后的,再add一下即可。

5)如果你在本地对test.txt进行了自己的修改,内容一多就忘了修改了什么,可以执行diff来查看。

git diff test.txt

此命令会将本地当前的test.txt与仓库中最新版本的test.txt进行对比,并将结果输出。

6)版本回退。
先用git log来查看需要回退的版本,也就是之前commit的id号,亦即那条SHA1信息。

git reset --hard commit_id

commit_id一般写SHA1值的前几个即可,git会自动查找出来。

7)从之前回到现在。
如果在版本回退后发现也不是想要的,就要从过去回到现在。此时执行git log是没有对应的版本信息的。因此就要换一个命令了,执行git reflog便可以看到之前的commit_id了,之后再git reset即可。

8)取消修改
如果在对一份文件不小心进行了一些奇怪的操作,同时自己也忘了具体是什么,也不要慌,可以撤销相应的修改。

git checkout -- test.txt

git checkout有两层作用,同样这里引用廖大牛的总结原话比较清楚一点:

一种是test.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是test.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

总之,就是让这个文件回到最近一次git commit或git add时的状态。

9)删除文件
如果你执行了rm test.txt即把test.txt给删除了,同时又不想在仓库中保留,那么执行

git rm test.txtgit commit -m "remove the test.txt" 

这就从仓库中把它给删了。而另外一种情况是你不小心误删的,那么也别急,checkout一下即可恢复~

git checkout -- test.txt

你会发现test.txt又回来了:)

3.reference
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

0 0
原创粉丝点击