一、工作区和版本库
1.工作区(Working Directory)
就是在本地的目录
2.版本库(Repository)
工作区有一个隐藏目录.git
,这个不算工作区,而是Git的版本库,版本库简单理解就是远程的存储空间,存放文件。
把文件添加到远程
git add #把文件修改添加到暂存区;
git commit #提交更改,把暂存区的所有内容提交到当前分支,HEAD目前就是指向master分支。
git push #把当前分支推到远程,必须是当前最新的
版本回退
git log #显示commit的id号
git reset --hard id(只需要前几位) #可以回退到任意版本,如果加hard会删除本地的文件,否则保留
git reset --hard HEAD^ #上一个版本就是HEAD^,HEAD~100表示往前100个版本
git checkout -- readme.txt #就是让这个文件回到最近一次git commit或git add时的状态。
分支常用操作
git remote add origin git@github.com:AntonioSu/exercise.git #将origin指向到对应的git地址,默认是master分支,
git push -u origin master #将版本库中的master分支的内容上传到远程
git remote rm origin #移除之前的origin
git remote add origin git@github.com:AntonioSu/tensorflow.git#添加新的origin
git remote -v#查看远程地址
git branch #查看分支
git checkout <branch> #切换分支
git checkout -b <branch> #创建并切换分支
git branch -D <branch> #删除分支
git branch --set-upstream master origin/next #指定master分支追踪origin/next分支。
其他常用操作
git clone git@github.com:michaelliao/gitskills.git #从远程库克隆到本地
git status #查看当前版本库中的情况,查看还没添加的文件
git pull #下载远程文件
强制覆盖文件
git fetch --all
git reset --hard origin/master
git pull
git pull解释
git pull <远程主机名> <远程分支名>:<本地分支名>
删除版本库中文件
git rm <file1>#如果文件名有空格,使用单引号或者双引号圈住整体文件名
git rm -r folder #对应的目录下的文件夹
git commit -m "delete"
git push
git remote update origin #将远程所有的分支更新拉到本地
无论push或者是pull只能是按照时间新覆盖旧