git常用命令
工作区 #当前编辑位置
缓存区 #add之后的位置
版本库 #commit之后的位置
git init #初始化git,生成git文件夹
git status #查看状态
git add . #添加所有文件到缓存区
git commit -m '张八位在此' #从缓存区提交到版本库
git.log #查看当前位置之前的提交记录
git.reflog #查看所有版本库提交记录
git reset --hard comiit_id #回退到commit_id对应的版本库
git checkout 文件路径 #回退到最近一次提交的位置
git reset HEAD 文件路径 #将缓存区的文件拉到工作区
git diff 文件路径 #对比工作区和缓存区
git.diff --cached 文件路径 #对比缓存区和版本库
#快照---------------------------------------------------
git stash #将当前内容做快照,并回到最近一次提交的位置
git stash list #查看快照列表
git stash apply #回到快照
git stash drop #删除快照
git stash pop #回到并删除快照,相当于apply+pop
#分支---------------------------------------------------
git branch #查看分支
git branch dev #创建分支
git branch -d dev #删除分支
git checkout dev #切换分支
git checkout -b dev #创建并切换分支
git merge panghu #将panghu分支上的代码合并过来,一般用在master上(master为线上代码,最好不要直接修改)
#远程仓库------------------------------------------------
git remote add origin https://url.git #上传到github上的地址
git push --set-upstream origin goldsun
git push origin dev # 上传dev分支到远程仓库
git clone https://url.git #克隆github上的分支,默认master
git checkout -b dev origin/dev #创建并切换dev
git pull origin dev #下载dev分支
git rebase #变基,将提交记录变成一条直线
#标签---------------------------------------------------
#在大项目开发完成或开发一个里程碑的时候会打tag
git tag
git tag -a v1.0 -m "v1.0"
git tag -d v1.0
git tag push --tags
git push origin : refs/tags/v0.1 #删除远程仓库上的tag,实际上不是删除,而是用空的把原来的覆盖掉
git ignore #敏感文件不想上传到远程仓库,用ignore