您的位置:首页 > 其它

Git常用指令集合 (基本操作)

2017-11-13 11:55 295 查看
Git是一种非常优秀的免费开源分布式版本控制系统。本文将对常用的命令进行集中记录,以方便查阅。
需要注意的是,这里我只简要记录指令功能,对于新人学习来说还是推荐廖雪峰老师的教程,非常浅显易懂。
本篇文章是关于Git的基本操作指令,接下来的文章会逐步总结Github远程仓库、分支管理与标签管理的各种相关操作指令。


1.安装完成后设置:

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"


其中- -global 这个参数表示这台机器上所有的Git仓库都会使用这个配置

2.创建版本库:

$ mkdir learngit
$ cd learngit
$ pwd


创建空目录,pwd命令用于显示当前目录。

$ git init


把目录变成仓库。

$ ls -ah


查看隐藏的.git目录。

3.添加文件到版本库:

$ git add readme.txt
$ git commit -m "wrote a readme file"


创建文件(例如:readme.txt)后,把文件添加到仓库,命令git add 可反复多次使用,添加多个文件。

-m后面输入的是本次提交的说明.commit可以一次提交很多文件。

每次修改,如果不add到暂存区,那就不会加入到commit中。

4.状态及修改查看:

$ git status


查看工作区状态。

$ git diff


查看修改内容。

$ git diff HEAD -- readme.txt


上一版commit提交之后再修改出新一版还未提交时,查看当前工作区和版本库里面最新版本的区别。

5.版本回退:

$ git log


查看提交历史,以便确定要回退到哪个版本。如果嫌输出信息太多,可以加上 - -pretty=oneline参数。

显示内容里commit后的数字是commit id(版本号)。从新版本退回旧版本时新版本号不会再显示,若要重回新版本,请参考下文的git reflog命令。

$ git reflog


查看命令历史,以便确定要回到未来的哪个版本。

$ git reset --hard commit_id


在各版本之间穿梭。用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^。要退回上一版本commit_id可以用HEAD^。

$ cat readme.txt


在Git控制台显示文本内容,适合小文本快速查看。

$ git checkout -- file


命令中的- -很重要,没有- -,就变成了“切换到另一个分支”的命令。

命令git checkout - - readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

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

一种是readme.txt已经add添加到暂存区后,又作了修改,现在撤销修改就回到添加到暂存区后的状态,即放弃文件添加到暂存区之后在工作区又做的修改,不是放弃暂存区文件。

若是已经add添加到暂存区后,想放弃暂存区的内容,请参考下文的git reset HEAD file。

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

$ git reset HEAD file


把暂存区的修改撤销掉(unstage),重新放回工作区。执行命令后暂存区空,工作区有修改,若再想将工作区的修改撤销,请参考上文git checkout - - file。

git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。用HEAD表示最新的版本。

$ git rm readme.txt


删除readme.txt文件,需要再commit提交后才会修改版本库。若发现错删,但还未提交版本库,请使用git checkout回撤。

若文件修改后已经commit提交到了版本库,再想撤销修改请参考上文git reset - -hard commit_id。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: