git命令
git分支
大概意思就是从主代码分支新建自己的副本,在自己的副本里做任何修改都不影响别人的代码,提交代码时要把自己的分支meger到master上,也就是把你的改动合到主分支里面
分支使用流程
# 拉取远程主分支
git pull master
# 新建并切换分支
git checkout -b newbranch
# 修改内容后添加改动
git add . //也可以是具体文件名
# 提交本次改动的描述
git commit -m "描述"
# 检查是否成功
git status
# 切换到主分支
git checkout master
# 合并到主分支
git merge newbranch
# 推送到远程分支
git push
当然实际应用中不建议直接本地merge,通常是将本地开发分支push到远程,在github上创建merge request
查看分支
# 查看本地分支:
git branch
# 查看所有远程分支:
git branch -r
# 查看远程和本地所有分支:
# 在输出结果中,前面带* 的是当前分支。
git branch -a
# 查看当前详细分支信息(可看到当前分支与对应的远程追踪分支)
git branch -vv
# 查看当前远程仓库信息
git remote -vv
创建分支
# 创建pre,当前在哪个分支上就会以这个分支为基础创建新的分支
git checkout -b pre
# 拉取远程分支并创建本地分支
# 使用该方式会在本地新建分支x,并自动切换到该本地分支x。
# 采用此种方法建立的本地分支会和远程分支建立映射关系。
git checkout -b 本地分支名x origin/远程分支名x
# 拉取远程分支并创建本地分支
# 使用该方式会在本地新建分支x,但是不会自动切换到该本地分支x,需要手动checkout。
# 采用此种方法建立的本地分支不会和远程分支建立映射关系。
git fetch origin 远程分支名x:本地分支名x
切换分支
# 从当前分支切换到‘dev’分支:
git checkout dev
# 建立并切换新分支:
git checkout -b 'dev'
push分支
# 当前分支push到远程仓库,前提本地分支和远程分支有映射关系
git push
# 创建远程分支dev,并提交,远程存在分支直接提交,不存在则先创建
git push origin dev:dev
删除分支
# 删除dev分支,若dev有改动,删除会失败,提示已改动分支
git branch -d dev
# -D 可强制删除
git branch -D dev
# 删除远程分支
git branch -r -d origin/branch-name
git push origin :branch-name
切换远程仓库地址
# 1、查看仓库地址:
git remote -v
# 2、切换仓库地址:
git remote set-url origin http://******
# 方式二:先删除远程仓库地址,然后再添加
git remote rm origin # 删除现有远程仓库
git remote add origin url # 添加新远程仓库
回退
# 1、查看提交记录
git log
# 2、回退到某个版本
git reset --hard id
缓存
# 1、使用 "git add" 建立跟踪
git add .
# 2、这是主要的存储命令,其实可以不写save 参数,直接 git stash 就可以,save 参数是为了加一个文字说明。当然,不太建议这么来,没有说明鬼知道记录的是什么内容。。。
git stash save "west"
# 3、查看存储栈的内容
git stash list
# 4、应用stash存储的内容,pop命令很直白了。弹栈命令,即将最上面的栈元素存储的内容用于当前工作空间,又将最上面的栈元素删除。
git stash pop, git stash apply stash@{0}
tag
git tag -a "v1.0.0" -m "auto generate markdown"
git push origin v1.0.0