Git整体工作流程:
Workspace:工作区
Index / Stage:暂存区
Repository:仓库区(或本地仓库)
Remote:远程仓库
一、版本仓库:
1.通过命令 git init 把这个目录变成git可以管理的仓库(这就欧科啦)
(会生成.git 文件)默认.git 文件不显示
- git add xxxxx (将工作区的指定文件添加到 暂存区中)
没有任何提示,说明已经添加成功了
- git commit -m ‘一些提交注释’ (把文件提交到本地仓库)
- git status (查看是否有文件没有被提交)
展示说明没有任何文件未提交,但是我现在继续来改下readme.txt内容,之后开始修改reademe.txt内容后,再执行下:git status
readme.txt 文件已经被修改,但是未被提交的修改
(changes not stateg : 修改的文件 , Untracked files : 新增文件 , Unmerged path: 有冲突)
- git diff xx ( 可以查看修改的内容)
二、版本回退:
如上,我们已经学会了修改文件,现在我继续对readme.txt文件进行修改,再增加一行,
内容为33333333333333.继续执行命令如下:
- git log ( 查看提交的历史记录)
如果嫌上面显示的信息太多,我们可以使用 git log --pretty=oneline 演示如下:
- git reset --hard HEAD^ (回退到上一个版本)
- cat xxx (查看文件内容)
- git reflog (查看所有历史记录(不受回退影响))
如果想恢复到原有到版本,从这里查看对应到版本号,执行: git reset --hrad 6fcfc89
三、 Git撤销修改 和 删除文件
- 撤销修改
如果我现在修改了一些文件,但并没有提交到暂存区
简便方法:git checkout -- 文件名 即可实现
如果修改了一些文件,并且已经提交到了暂存区了,则没有效果了
删除文件
rm xxx
删除任务后,只要没有提交到本地仓库(也就是说 没有commit ),通过git checkout -- 文件名即可恢复
四、分支
1. git checkout -b dev : 创建并切换分支 (等于 2、3 操作)
2. git checkout xxx : 切换分支
3. git branch xx : 创建分支
4. git branch 查看当前分支
5. git merge xx : 合并分支 (HEAD: 当前 ==== 下 合并分支的内容)
6. git branch -d xx : 删除分支
五、Bug分支
在某些场景中,目前在当前的分支开发中,但突然发现此分支原有的一个功能有bug,但当前已经在此分支开发新但功能了,而且并不想提交,此时应该怎么办呢?
(1)git stash : 能够保存当前的所有内容
(2)git checkout -b dev 去处理bug
(3)git merge dev 合并分支,解决冲突
(4)git stash apply 恢复
git stash drop 恢复的同时,删除 stash 对应的内容
git stash list 查看 所以被保存的 stash
六、其他
git remote : 查看远程仓库信息
git remote -v : 查看详细信息
版权归原作者 城北的徐公 所有, 如有侵权,请联系我们删除。