基本作用:
备份纪录回滚共享团协
基本概念:
初次接触的读者可以看:https://www.jianshu.com/p/274744cf7fa7
基本使用:
git 配置
git config --global user.name 配置用户名
git config --global user.email 配置邮箱
git config --list 查看配置
查看 .git
windows 下可直接看到 .git 文件夹,linux 下使用 ls -al, open .git
git log 查看提交历史
git status 查看当前仓库状态
Git 三大区
工作区暂存区版本区
git add . 把工作区所有内容增加到暂存区
git add filename 把工作区某个文件增加到暂存区
git commit -m 'message' 将暂存区提交到版本区该命令必须带说明
Git diff差异比较
如果没有差异则没有任何输出, 如果没有内容也没有输出
git diff 比较工作区和暂存区差异
git diff --cache 暂存区和版本区的差异
git diff master 版本区和工作区差异,使用较少
命令1
git reset HEAD <file> 暂存区内容和版本区保持一致
git checkout <file> 暂存区(暂存区没有则找版本区)的覆盖工作区内容
git rm <file> --cache 删除暂存区内容
git rm <file> 同时删除工作区和暂存区内容
git commit -a -m 'message' 等于 git add <file> 和 git commit -m 'message' 的联合命令,首次 add 的时候该命令无法使用,因为暂存区里还没有内容
git reset --hard <version> 版本回滚(版本区指定版本内容恢复到工作区),version 内容为版本号前七位的 hash 值或者完整值
git reflog 查看引用版本
分支命令和解决冲突
git branch 查看分支
git branch dev 创建 dev 分支
git branch -d dev 删除 dev 分支,不能删除当前分支,需要切换到其他分支后再操作
git checkout dev 切换到 dev分支
git chenckout -b dev 创建并创建 dev 分支
分支合并:
先切换到 master 将 dev 分支内容合并到 master 分支
git checkout master
git merge dev
如果出现冲突 :
合并是将其他分支的新增内容添加到当前分支,当出现冲突的时候是当前分支和其他分支共同内容不一致导致,可以手动将不一致的冲突进行处理后再合并。解决冲突的内容仍然需要 add 并 commit 后才生效。
一般处理方法为在 master 分支下手动把冲突删除后提交再合并。
git log --graph 图形显示分支合并过程,* 号表示每次commit。