git 作用
- 版本控制
- 备份
- 恢复
- 分支管理(协同开发)
git clone
git init
三个概念
- 工作区
- 暂存区
- git仓库(远程仓库)
几个状态
- 未跟踪(Untracked)(工作区文件)
- 已跟踪(Tracked)(工作区文件)
- 未修改(Origin)
- 已修改(Modified)
- 已暂存(Staged)
- 已提交(Committed)
- 已推送(Pushed)
git add
将文件提交到暂存区
.gitignore文件
支持通配符..
git status
粗略显示工作区与暂存区的变化
git diff
比较的是工作区已修改和初始状态的区别(尚未暂存的改动)
git diff --cached
比较的是 本地仓库 与 暂存区的区别
git log
git commit
- -m 提交信息
- -a 跳过暂存
- - -amend 重新提交
git checkout .
比较记忆
git add .
git reset --hard
git reset
+ git checkout .
git reset 仅退回至git add .之后的状态 git checkout .退回至未修改状态
git reset --hard
同上一步
git reset --hard origin/master
git reset --hard HEAD^
git push -f
git remote -v
查看仓库
git remote add [name] [url]
添加远程仓库
git push [name] [local branch]:[remote branch]
推送代码
git fetch [remote name] [remote branhc]
拉取代码
git branch [branch name]
新建分支
git checkout [branch name]
切换分支
git checkout -b [branch name]
等同以上
git branch
- -v
- -a
git merge
git rebase
- 自动解决
- 手工解决