选择一个地方创建空目录
mkdir <filename>,创建一个空目录;cd <filename>,打开这个目录;pwd显示当前目录git init把这个某变为Git可管理的仓库给目录中添加文件git add <filename>将文件添加到仓库git commit -m "说明文字"把文件提交到仓库git status查看当前仓库的状态git diff <filename>查看修改的内容回退总结:
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id;穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本;要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。Git和SVN的不同之处在于Git存在暂存区的概念。
工作区:就是在电脑里能看到的目录,比如使用mkdir创建的目录,就是一个工作区;版本库:工作区有一个隐藏的文件.git,它不算工作区,而是git的版本库。git的版本库存在了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有git为我们自动创建的第一个分支master,以及指向master的HEAD指针。为什么Git比其他版本控制系统设计得优秀,因为Git跟踪并管理的是修改,而非文件。 什么是修改?比如你新增了一行,这就是一个修改,删除了一行,也是一个修改,更改了某些字符,也是一个修改,删了一些又加了一些,也是一个修改,甚至创建一个新文件,也算一个修改。
git add .提交当前的所有修改;git add <filename>提交修改的文件;git add把修改的内容提交到暂存区;git commit把暂存区的修改提交到当前分支;如果当前的修改没有git add,则git commit提交的是暂存区的修改,并不会把当前工作区的修改提交到当前分支上;查看工作区和版本库的区别,使用:git diff HEAD --<fielname>每次修改,如果不add到暂存区,那就不会加入到commit中;可以多次add后,再commit。在Git中删除也是一个修改操作。 在文件管理器中删除没用的文件使用指令:rm <filename>。 Git检测到你删除了文件,因此,工作区和版本库就不一致了,git status命令会立刻告诉你哪些文件被删除了,这时候有两种操作:
确定要从版本库中删除该文件,用命令git rm <fielname>删掉,并且git commit.删错了,如何还原:git checout --<filename>,因为版本库里还存在这个文件。git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容。
