一、添加文件到Git仓库:(Git的安装及如何创建版本库请查看别的教程)
1.文件放到git目录下
2.
git add 文件的名字(包括扩展名)
3.
git commit -m "注释"(注释一定要添加,解释文件的内容或修改的内容)
二、状态管理
1.看仓库的当前状态命令
git status
2.查看工作区和暂存区的差别(还没add到暂存区时就是工作区与最新提交状态比较)
git diff
3.上次提交和最新提交的差别(尽量在git commit之前用)
git diff HEAD
4.看工作区和版本库里最新版本区别
git diff HEAD -- 文件名
5.查看提交历史,确定退到哪个版本
git log
6.查看命令历史,确定回到未来哪个版本
git reflog
7.退回想要退回的版本(其中HEAD^可以直接写ID,ID通过上两个命令可以得到)
git reset --hard HEAD^(^表示上一个版本,^^表示上两个版本,~100表示上100个版本)
8.撤销修改(个人理解下面的命令的本质是版本库里版本替换工作区版本)
git checkout -- 文件名
意思就是,把文件在工作区的修改全部撤销,这里有两种情况:
一种是文件自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是文件已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
总之,就是让这个文件回到最近一次git commit
或git add
时的状态。
9.把暂存区的修改撤销重新放回工作区
git reset HEAD 文件名
三、删除文件
1.从文件管理器中删除,或者使用rm命令删除
2.从版本库中删除
(1)
git rm 文件名
(2)
git commit -m "注释"
3.删错了,但版本库里还有。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容。
git checkout -- 文件名
四、添加远程库
现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举多得。
首先,登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库:
在Repository name填入你想要起的文件名,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库:
目前,在GitHub上的这个仓库还是空的,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。
现在,我们根据GitHub的提示,在本地的仓库下运行命令:
git remote add origin git@github.com:YangXh616/Binocular_stereo_vision
请千万注意,把上面的YangXh616/Binocular_stereo_vision替换成你自己的GitHub账户名,否则,你在本地关联的就是我的远程库,关联没有问题,但是你以后推送是推不上去的,因为你的SSH Key公钥不在我的账户列表中。
添加后,远程库的名字就是origin
,这是Git默认的叫法,也可以改成别的,但是origin
这个名字一看就知道是远程库。
下一步,就可以把本地库的所有内容推送到远程库上:
git push -u origin master
把本地库的内容推送到远程,用git push
命令,实际上是把当前分支master
推送到远程。
由于远程库是空的,我们第一次推送master
分支时,加上了-u
参数,Git不但会把本地的master
分支内容推送的远程新的master
分支,还会把本地的master
分支和远程的master
分支关联起来,在以后的推送或者拉取时就可以简化命令。
从现在起,只要本地作了提交,就可以通过命令:
git push origin master
把本地
master
分支的最新修改推送至GitHub,现在,你就拥有了真正的分布式版本库!