git的一些操作命令

 阅读约 4 分钟

分支操作

查看本地分支: git branch
查看远程分支: git branch -a
删除本地分支: git branch -d local_branch

删除远程 branch

git push origin --delete   <branchname>

提交代码到程分支 ( 和删除远程分支只相差一个: )
git push origin branch

1 远程已有 remote _branch 分支且已经关联本地分支 local _branch
git push

2 远程没有 本地切换到 local _branch
`git push origin local_branch:remote_branch

重命名分支: git branch -m old_branch_name new_branch_name
创建并切换分支 dev : git checkout -b dev
创建分支 dev : git branch dev
切换分支: git checkout dev

冲突处理

  1. git status 告诉 我们冲突的文件
  2. git diff 查看冲突的文件
  3. 根据提示的信息,修改后保存再提交
Git add readme.txt
Git commit -m "conflict fixed"

添加远程库

git remote add origin git@github.com:MonicaTanglu/vueproject.git

修改 git 项目,完全不相同的 git 项目 push ,相当于重写

git pull origin master --allow-unrelated-histories

git标签

git tag -l
git tag v1.0.1
git push origin v1.0.1
git tag -d v1.0.1
git push origin :refs/tags/v1.0.1
git pull origin tag v1.0.1

git拉取远程干净分支操作

git checkout origin/daily/1.0.1 -b daily/1.0.1-setDefaultAvatar
git checkout 远程分支 -b 本地分支

git stash 暂时存储

git stash apply 恢复最近的一次存储 和pop类似,但是apply不会吧stash从stash list中移除
git stash list 查看stash 列表
git stash pop [--index]  stash@{0}  恢复指定stash@{0} 到当前分支 加--index    not only the working tree’s changes, but also the index’s ones(不知道index's ones的意思)  --index不仅恢复工作区,也会恢复暂存区
git stash clear 删除所有的stash list

git版本回退

git reset --mixed <commit_id> 此为默认方式,不带任何参数的git reset,即使这种方式,他回退到某个版本,只保留源码,回退commit和index信息 
git reset --soft 回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit
git reset --hard 彻底回退到某个版本,本地的源码也会变为上一个版本的内容,次命令慎用。
git push origin HEAD --force 版本回退后推到远程
阅读 796更新于 7月12日
推荐阅读
目录