-
Git是分布式版本控制系统
-
指定配置
$ git config --global user.name “Your Name”
$ git config --global user.email “邮箱.com” -
创建版本库
$ mkdir learngit
$ cd learngit
$ pwd
/Users/michael/learngit -
通过git init命令把这个目录变成Git可以管理的仓库$ git init
Initialized empty Git repository in /Users/michael/learngit/.git/ -
文件添加到仓库缓存$ git add readme.txt
-
文件提交到仓库
$ git commit -m “备注标记”
[master (root-commit) eaadf4e] wrote a readme file
1 file changed(被改动文件数), 2 insertions(+)(插入几行内容)
create mode 100644 readme.txtb -
状态查看 $ git status
-
版本回退
-
$ git log 修改日志,如果嫌输出信息太多,看得眼花缭乱的,可以试试加上$ git log–pretty=oneline参数,简化呈现内容
-
$ git reset --hard xxxx 回到指定版本
-
$ git reflog 查询指令记录
-
工作区—版本库【缓存区—master分支】
-
工作区($ git add 文件)----缓存区($ get commit -m “说明”)—master分支 //工作区不能跨区域直接提交到master分支
-
内容修改管理
-
$ git diff HEAD – readme.txt命令可以查看工作区和版本库里面最新版本的区别(每次修改,如果不用git add到暂存区,那就不会加入到commit中)
-
撤销修改
$ git checkout – xxxx可以丢弃工作区的修改:(
一种是xxxx自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是xxxx已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。) -
$ git reset HEAD xxxx可以把暂存区的修改撤销掉(unstage),重新放回工作区(git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本)
【【场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout – file。场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD ,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。】】
-
版本库删除文件(确实要从版本库中删除该文件,那就用命令$ git rm删掉,并且$ git commit -m“xxxxxxxxx”)
-
$ git checkout – xxxx(用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。)
Git小计
最新推荐文章于 2022-12-05 22:27:35 发布