#创建本地版本库
git init
#添加用户信息
git config --global user.name "用户名"
git config --global user.email "邮箱"
#添加文件到暂存区
git add 文件
#提交文件到本地版本库
git commit -m "说明信息"
#查看状态
git status
#查看工作区文件和版本库的区别
git diff 文件
#回退到指定版本
git reset --hard 版本号
#回退到最新版本
git reset HEAD 文件
#从本地版本库拉取指定文件
git checkout -- 文件
#生产ssh 秘钥文件 并将公钥添加到github SSH配置中 做认证使用
ssh-keygen -t rsa -C "xxxx@qq.com"
-----------本地库有数据 远程库为空的时候 提交数据到远程库-----------
#链接远程git库
git remote add origin git@github.com:iejei/git.git
#如果提示存在 则删除
git remote rm origin
#推送本地git库数据到远程库master分支 并通过 -u 关联master分支
git push -u origin master
#本地有修改 提交到本地库后 推送到远程库
git push origin master
-----------本地库为空 远程库有数据的时候 拉取数据到本地库-----------
#将远程库中的文件拉取到本地库 克隆命令
git clone git@github.com:iejei/learngit.git
#创建新的dev分支 并切换分支到新分支上
git checkout -b dev
#创建新的分支
git branch dev
#查看当前所有分支
git branch
#切换到dev分支上
git checkout dev
#切换到master分支 将其dev分支数据合并过来
#git checkout master
#git merge dev
#冲突解决 以master为主 合并冲突 切换到其他分支 再合并master分支
git add ./*
git commit -m "all file"
git checkout feature
git merge master
#分支合并图
git log --graph
git log --graph --pretty=oneline --abbrev-commit
#bug 分支 讲已经add到暂存区的数据 保存起来
git stash
git stash list
git stash apply
git stash drop
git stash pop
#禁用fast-forward 记录合并日志
git merge --no-ff -m "issus 1001 bug" issus-1001
#feature分支 强制删除
git branch -D feature
#查看操作远程库的信息
git remote
git remote -v
#协调开发 克隆操作 只有master分支
git clone git@github.com:iejei/learngit.git
#创建远程库的dev分支
git checkout dev origin/dev
#解决多人操作的文件冲突
#拉取远程origin库中dev分支到本地dev分支
git pull origin dev:dev
#
git rebase
------------标签tag操作---------------
#标签tag处理 在master分支上处理
git checkout master
git tag v1.0.0
#也可以按commitid 打标签
git log --pretty=oneline --abbrev-commit
git tag 提交id v1.0.0
#查看tag信息
git tag
git show v1.0.0
#带签名的标签信息
git tag -a v1.0.1 -m "说明信息" 提交id
#删除标签
git tag -d v1.0.0