git 版本管理
配置 git 用户和邮箱
$ git config --global user.name "你的github用户名"
$ git config --global user.email "你的github邮箱"
# 不配置用户名和邮箱的话无法提交,因为git不知道你是谁
1
2
3
2
3
查看配置
$ git config --global user.name
$ git config --global user.email
1
2
2
查看所有配置
$ git config --list
1
工作流
工作区
通过 git add 添加到暂存区
$ git add '文件名'
1
暂存区
特点:过渡的作用,避免误操作,保护工作区和历史区,分支处理;
通过 git commit 添加到历史区
$ git commit -m"注释内容"
1
历史区
查看历史状态
$ git log
1
修改时通过 git status 查看当前状态
7.git diff
1
不同区的代码比较
工作区和暂存区
$ git diff
1
暂存区和历史区
$ git diff --cached(--staged)
1
工作区和版本库
$ git diff master
1
撤销
撤销回 git add 的内容
git reset Head "文件名"
1
撤回文件
先从缓存区撤销,缓存区无内容,从历史区域撤销
$ git checkout "文件名"
#有的时候我们希望提交时合并到上一次的提交 git commit --amend
1
2
2
删除
删除暂存区和工作区 删除暂存区中的内容,并且保证工作区中的内容已经不存在
$ git rm "文件名"
1
若本地文件存在则不能删除,需要通过-f 参数删除
仅删除缓存区
$ git rm --cached "文件名"
1
恢复
恢复某个版本文件
$ git checkout commit_id filename 某个文件
1
通过版本 id 恢复
$ git reset --hard commit_id
1
恢复未来 查看当时回滚时的版本
$ git reflog
1
快速版本回退
$ git reset --hard HEAD^
$ git reset --hard HEAD~3
1
2
2
同步远程仓库 gitHub
注册账号 新建项目
添加远程仓库
$ git remote add origin "地址"
1
添加忽略文件
$ touch .gitignore
$ echo .DS_Store
$ echo node_modules
$ echo .idea
1
2
3
4
2
3
4
推送代码
$ git push origin master
1
查看
$ git remote 查看名字
$ git remote -v 查看地址
1
2
2
代码的合并
$ git fetch
1
拉取过来手动合并
$ git diff master origin/master
$ git merge origin/master
1
2
2
拉取并合并
git pull
1
分支
git branch
git branch 创建分支
git checkout a
git checkout -b c切换分支
#在master git merge
git checkout b
git branch --merged 合并了哪些分支
git branch --no-merged 合并了哪些分支
git branch -d a 删除分支
git branch -D a 删除分支
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
- tag 版本
git tag v1.0
1
Git 无法检测到文件名大小写的更改
git config core.ignorecase false
# 关闭git忽略大小写配置,即可检测到大小写名称更改。
1
2
2