安装和配置
配置需要姓名和邮箱
1 git config - -global user.name 'benjious' 2 git config - -global user.email '12345678@qq.com'
Git学习
下面这张图是git 中存放东西的几个区域,我们常用的命令如下所示
图一
Repository创建
在需要创建repository 的目录下右键鼠标,点击 GIT BASH , 输入
1 git init
加入文件到暂存区
在每次开始操作时,最好使用一下两个命令,查看最近纪录和当前repository的状态
1 git log 2 git status
使用 git log 后在git命令行界面会发现输入框出现冒号,然后退不出去,这时只要输入 “q” 就可以退出去了
下面是单个文件的添加到暂存区,当前路径路径下多个文件夹添加到暂存区
1 //single file add to . eg : 123.txt 2 git add 123.txt 3 4 git add .
添加到 repository
1 git commit -m "This is a message !"
情节一
我的repository 下有个 123.txt ,我进行了第一次改动
1 git add . 2 git commit -m" this is my first commit "
第一次改动后提交
图三
同样进行第二次改动
图四
1 git add . 2 git commit -m" this is my second commit "
使用一下命令查看两次提交的信息,两个减号后面的是参数
1 git log --pretty=oneline
图五
现在使用一下命令回退到第一次提交,
git reset --hard head^1
其中参数 --hard 代表的含义是表示重置指针(head)的范围, 见下图,
--mixed 参数是默认的,假如我后悔了,我想回到第二次修改的版本,应该如何做呢?
//查看git 命令历史 git reflog git reset --hard 版本号
假如我改动了文本
我想回到修改前,
git reset --hard head
又或者是我修改了一半,有部分已经 git add . 了(即是缓冲中有数据了),而不又不想让工作目录回到修改前,可以使用
git reset --mixed head
创建并切换到新的分支,
git checkout -b hotfix
git checkout master
删除一个分支
//删除hotfix 分支 git branch -d hotfix
revert 命令则是用下图来表示
可以看到revert 这个命令指的是拿之前的提交作为一个提交,比如说,以上图为例, 绿色的分支,从左至右提交的版本分别为 v1, v2 ,v3 ,head为v3 , 此时正在开发的我发现有一个bug是在v1引入的,我想回到v1之前的版本,那么当我执行
git revert v1生成sha1值
就会生成V4, 需要注意的是 执行上面命令时,笔者做这个例子时会出现:
那是因为当我在v3 时,v2和 v3 进行的修改 git 并不知道你是要不要, 此时打开unmerged 的文件就会看到
》》》》》》》》》》》》HEAD
===========================
它表示的v3时的修改和v1之前提交的文件的异同,你只有在进行取舍或是修改(或者说是修bug)后,进行提交才会生成v4 。