Git基础知识备忘录
概念: 工作区、暂存区、本地版本仓库
工作区: 本地写代码的地方
暂存区: 工作区到仓库之间的一个缓存修改的地方
本地仓库: 提交到仓库就是加入新的版本中
git config --global user.name 名字
git config --global user.email 邮箱
git init: 创建版本控制,命令执行所在文件夹就是版本控制仓库
git status: 查看工作区文件状态
git log --pretty=oneline: 查看版本库列表
git add <文件名或点>: 修改或新添加的文件使用此命令加入到暂存区
git commit -m '': 将暂存区文件提交到版本仓库
工作区修改文件没有提交到暂存可以:git checkout -- <文件名> 取消修改
工作区修改文件且add到暂存区可以:git reset HEAD <文件名> 撤销暂存区修改,在用上一步,可以将工作区撤回
git reset --hard HEAD^: 回撤到上一个版本,加数字表示向前跳几个版本
git reset --hard 版本ID: 跳到指定版本
git reflog: 查看版本跳转操作的历史记录
git rm: 删除文件,直接删除工作区的文件可以通过 checkout恢复
git remote -v: 查看远程仓库地址别名
git remote rm <远程仓库别名>:
git remote add <远程仓库别名> ssh地址: 添加远程仓库别名
git push <远程仓库别名> <本地分支名>:推送本地代码到远程仓库
推送到远程仓库时:默认本地master对应远程origin,其他分支若名字有相同的则自动推送到此分支
git branch: 查看分支
git branch <分支名>: 创建分支
git checkout <分支名>: 切换分支
git checkout -b <分支名>: 创建并切换分支
git checkout -b <分支名> origin/其他分支: 远程拉去仓库的其他分支到本地
git merge <分支dev>: 将dev分支合并到当前所在分支
git merge <分支dev> --no-ff -m "提交说明": 合并分支并禁用fast forward模式,并且提交。这样可以在历史上看出分支信息
git branch -d <分支名>:删除分支
git branch -D <分支名>:删除没有被合并过的代码需要D强行删除
git log --graph --pretty=oneline --abbrev-commit: 查看分支图表
git stash: 暂时将新修改的代码藏起来,这样可以先做别的事情
git stash list: 查看藏起来的列表
git stash apply: 拷贝一份藏起来的信息到工作区
git stash apply <藏起来列表>: 将指定的藏起来的代码恢复出来,需要手动删除
git stash drop: 删除藏起来的信息
git stash pop: 将藏起来的信息剪切出来
git pull: 推送到远程仓库的时候,若远程仓库修改内容,则无法推送。
此时需要先使用此命令拉去远程版本,在本地合并,解决冲突在推送。
git branch --set-upstream-to=origin/其他分支 <本地分支>: 关联本地与远程分支关系
git tag: 查看标签列表
git tag -a <标签名> -m "说明":给当前HEAD打标签并写备注信息
git tag -s <标签名> -m "说明": 用PGP签名标签
git tag -a <标签名> -m "说明" <提交ID号>:给指定版本打标签
git show <标签名>: 查看标签列表
git tag -d <标签名>: 删除标签
git push origin <标签名>: 推送标签到远程仓库
git push origin --tags: 推送所有标签到远程仓库
git push origin :refs/tags/<标签名>: 删除远程仓库标签
.gitignore 文件每行填写忽略文件,避开版本控制提示
git add -f <文件名>: 强制添加到版本控制中
git check-ignore -v <文件名>: 检查忽略规则是否对此文件生效
git config --global alias.别名 原命令或"命令组合": 添加命令别名